public ServiceFuture<P2SVpnGatewayInner> createOrUpdateAsync(String resourceGroupName, String gatewayName, P2SVpnGatewayInner p2SVpnGatewayParameters, final ServiceCallback<P2SVpnGatewayInner> serviceCallback) {
        return ServiceFuture.fromResponse(createOrUpdateWithServiceResponseAsync(resourceGroupName, gatewayName, p2SVpnGatewayParameters), serviceCallback);
    }
public ServiceFuture < P2SVpnGatewayInner > createOrUpdateAsync ( String resourceGroupName , String gatewayName , P2SVpnGatewayInner p2SVpnGatewayParameters , final ServiceCallback < P2SVpnGatewayInner > serviceCallback ) { return ServiceFuture . fromResponse ( createOrUpdateWithServiceResponseAsync ( resourceGroupName , gatewayName , p2SVpnGatewayParameters ) , serviceCallback ) ; }
Creates a virtual wan p2s vpn gateway if it doesn't exist else updates the existing gateway.

@param resourceGroupName The resource group name of the P2SVpnGateway.
@param gatewayName The name of the gateway.
@param p2SVpnGatewayParameters Parameters supplied to create or Update a virtual wan p2s vpn gateway.
@param serviceCallback the async ServiceCallback to handle successful and failed responses.
@throws IllegalArgumentException thrown if parameters fail the validation
@return the {@link ServiceFuture} object