public ServiceFuture<VirtualHubInner> beginCreateOrUpdateAsync(String resourceGroupName, String virtualHubName, VirtualHubInner virtualHubParameters, final ServiceCallback<VirtualHubInner> serviceCallback) {
        return ServiceFuture.fromResponse(beginCreateOrUpdateWithServiceResponseAsync(resourceGroupName, virtualHubName, virtualHubParameters), serviceCallback);
    }
public ServiceFuture < VirtualHubInner > beginCreateOrUpdateAsync ( String resourceGroupName , String virtualHubName , VirtualHubInner virtualHubParameters , final ServiceCallback < VirtualHubInner > serviceCallback ) { return ServiceFuture . fromResponse ( beginCreateOrUpdateWithServiceResponseAsync ( resourceGroupName , virtualHubName , virtualHubParameters ) , serviceCallback ) ; }
Creates a VirtualHub resource if it doesn't exist else updates the existing VirtualHub.

@param resourceGroupName The resource group name of the VirtualHub.
@param virtualHubName The name of the VirtualHub.
@param virtualHubParameters Parameters supplied to create or update VirtualHub.
@param serviceCallback the async ServiceCallback to handle successful and failed responses.
@throws IllegalArgumentException thrown if parameters fail the validation
@return the {@link ServiceFuture} object