code: public Observable<ServiceResponse<Void>> offlineRegionWithServiceResponseAsync(String resourceGroupName, String accountName, String region) {
          if (this.client.subscriptionId() == null) {
              throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null.");
          }
          if (resourceGroupName == null) {
              throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
          }
          if (accountName == null) {
              throw new IllegalArgumentException("Parameter accountName is required and cannot be null.");
          }
          if (this.client.apiVersion() == null) {
              throw new IllegalArgumentException("Parameter this.client.apiVersion() is required and cannot be null.");
          }
          if (region == null) {
              throw new IllegalArgumentException("Parameter region is required and cannot be null.");
          }
          RegionForOnlineOffline regionParameterForOffline = new RegionForOnlineOffline();
          regionParameterForOffline.withRegion(region);
          Observable<Response<ResponseBody>> observable = service.offlineRegion(this.client.subscriptionId(), resourceGroupName, accountName, this.client.apiVersion(), this.client.acceptLanguage(), regionParameterForOffline, this.client.userAgent());
          return client.getAzureClient().getPostOrDeleteResultAsync(observable, new TypeToken<Void>() { }.getType());
      }
docs: Offline the specified region for the specified Azure Cosmos DB database account.
  
  @param resourceGroupName Name of an Azure resource group.
  @param accountName Cosmos DB database account name.
  @param region Cosmos DB region, with spaces between words and each word capitalized.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the observable for the request