code: public Observable<ServiceResponse<GenericResourceInner>> getWithServiceResponseAsync(String resourceGroupName, String resourceProviderNamespace, String parentResourcePath, String resourceType, String resourceName, String apiVersion) {
          if (resourceGroupName == null) {
              throw new IllegalArgumentException("Parameter resourceGroupName is required and cannot be null.");
          }
          if (resourceProviderNamespace == null) {
              throw new IllegalArgumentException("Parameter resourceProviderNamespace is required and cannot be null.");
          }
          if (parentResourcePath == null) {
              throw new IllegalArgumentException("Parameter parentResourcePath is required and cannot be null.");
          }
          if (resourceType == null) {
              throw new IllegalArgumentException("Parameter resourceType is required and cannot be null.");
          }
          if (resourceName == null) {
              throw new IllegalArgumentException("Parameter resourceName is required and cannot be null.");
          }
          if (this.client.subscriptionId() == null) {
              throw new IllegalArgumentException("Parameter this.client.subscriptionId() is required and cannot be null.");
          }
          if (apiVersion == null) {
              throw new IllegalArgumentException("Parameter apiVersion is required and cannot be null.");
          }
          return service.get(resourceGroupName, resourceProviderNamespace, parentResourcePath, resourceType, resourceName, this.client.subscriptionId(), apiVersion, this.client.acceptLanguage(), this.client.userAgent())
              .flatMap(new Func1<Response<ResponseBody>, Observable<ServiceResponse<GenericResourceInner>>>() {
                  @Override
                  public Observable<ServiceResponse<GenericResourceInner>> call(Response<ResponseBody> response) {
                      try {
                          ServiceResponse<GenericResourceInner> clientResponse = getDelegate(response);
                          return Observable.just(clientResponse);
                      } catch (Throwable t) {
                          return Observable.error(t);
                      }
                  }
              });
      }
docs: Gets a resource.
  
  @param resourceGroupName The name of the resource group containing the resource to get. The name is case insensitive.
  @param resourceProviderNamespace The namespace of the resource provider.
  @param parentResourcePath The parent resource identity.
  @param resourceType The resource type of the resource.
  @param resourceName The name of the resource to get.
  @param apiVersion The API version to use for the operation.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the observable to the GenericResourceInner object