public P2SVpnServerConfigurationInner beginCreateOrUpdate(String resourceGroupName, String virtualWanName, String p2SVpnServerConfigurationName, P2SVpnServerConfigurationInner p2SVpnServerConfigurationParameters) {
        return beginCreateOrUpdateWithServiceResponseAsync(resourceGroupName, virtualWanName, p2SVpnServerConfigurationName, p2SVpnServerConfigurationParameters).toBlocking().single().body();
    }
public P2SVpnServerConfigurationInner beginCreateOrUpdate ( String resourceGroupName , String virtualWanName , String p2SVpnServerConfigurationName , P2SVpnServerConfigurationInner p2SVpnServerConfigurationParameters ) { return beginCreateOrUpdateWithServiceResponseAsync ( resourceGroupName , virtualWanName , p2SVpnServerConfigurationName , p2SVpnServerConfigurationParameters ) . toBlocking ( ) . single ( ) . body ( ) ; }
Creates a P2SVpnServerConfiguration to associate with a VirtualWan if it doesn't exist else updates the existing P2SVpnServerConfiguration.

@param resourceGroupName The resource group name of the VirtualWan.
@param virtualWanName The name of the VirtualWan.
@param p2SVpnServerConfigurationName The name of the P2SVpnServerConfiguration.
@param p2SVpnServerConfigurationParameters Parameters supplied to create or Update a P2SVpnServerConfiguration.
@throws IllegalArgumentException thrown if parameters fail the validation
@throws ErrorException thrown if the request is rejected by server
@throws RuntimeException all other wrapped checked exceptions if the request fails to be sent
@return the P2SVpnServerConfigurationInner object if successful.