code: public Observable<VirtualNetworkLinkInner> beginCreateOrUpdateAsync(String resourceGroupName, String privateZoneName, String virtualNetworkLinkName, VirtualNetworkLinkInner parameters) {
          return beginCreateOrUpdateWithServiceResponseAsync(resourceGroupName, privateZoneName, virtualNetworkLinkName, parameters).map(new Func1<ServiceResponse<VirtualNetworkLinkInner>, VirtualNetworkLinkInner>() {
              @Override
              public VirtualNetworkLinkInner call(ServiceResponse<VirtualNetworkLinkInner> response) {
                  return response.body();
              }
          });
      }
docs: Creates or updates a virtual network link to the specified Private DNS zone.
  
  @param resourceGroupName The name of the resource group.
  @param privateZoneName The name of the Private DNS zone (without a terminating dot).
  @param virtualNetworkLinkName The name of the virtual network link.
  @param parameters Parameters supplied to the CreateOrUpdate operation.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the observable to the VirtualNetworkLinkInner object