public Observable<IotHubDescriptionInner> createOrUpdateAsync(String resourceGroupName, String resourceName, IotHubDescriptionInner iotHubDescription) {
        return createOrUpdateWithServiceResponseAsync(resourceGroupName, resourceName, iotHubDescription).map(new Func1<ServiceResponse<IotHubDescriptionInner>, IotHubDescriptionInner>() {
            @Override
            public IotHubDescriptionInner call(ServiceResponse<IotHubDescriptionInner> response) {
                return response.body();
            }
        });
    }
public Observable < IotHubDescriptionInner > createOrUpdateAsync ( String resourceGroupName , String resourceName , IotHubDescriptionInner iotHubDescription ) { return createOrUpdateWithServiceResponseAsync ( resourceGroupName , resourceName , iotHubDescription ) . map ( new Func1 < ServiceResponse < IotHubDescriptionInner > , IotHubDescriptionInner > ( ) { @ Override public IotHubDescriptionInner call ( ServiceResponse < IotHubDescriptionInner > response ) { return response . body ( ) ; } } ) ; }
Create or update the metadata of an IoT hub.
Create or update the metadata of an Iot hub. The usual pattern to modify a property is to retrieve the IoT hub metadata and security metadata, and then combine them with the modified values in a new body to update the IoT hub.

@param resourceGroupName The name of the resource group that contains the IoT hub.
@param resourceName The name of the IoT hub.
@param iotHubDescription The IoT hub metadata and security metadata.
@throws IllegalArgumentException thrown if parameters fail the validation
@return the observable for the request