code: public ServiceFuture<AppInner> beginCreateOrUpdateAsync(String resourceGroupName, String resourceName, AppInner app, final ServiceCallback<AppInner> serviceCallback) {
          return ServiceFuture.fromResponse(beginCreateOrUpdateWithServiceResponseAsync(resourceGroupName, resourceName, app), serviceCallback);
      }
docs: Create or update the metadata of an IoT Central application. The usual pattern to modify a property is to retrieve the IoT Central application metadata and security metadata, and then combine them with the modified values in a new body to update the IoT Central application.
  
  @param resourceGroupName The name of the resource group that contains the IoT Central application.
  @param resourceName The ARM resource name of the IoT Central application.
  @param app The IoT Central application metadata and security metadata.
  @param serviceCallback the async ServiceCallback to handle successful and failed responses.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the {@link ServiceFuture} object