code: public Observable<TransformationInner> createOrReplaceAsync(String resourceGroupName, String jobName, String transformationName, TransformationInner transformation, String ifMatch, String ifNoneMatch) {
          return createOrReplaceWithServiceResponseAsync(resourceGroupName, jobName, transformationName, transformation, ifMatch, ifNoneMatch).map(new Func1<ServiceResponseWithHeaders<TransformationInner, TransformationsCreateOrReplaceHeaders>, TransformationInner>() {
              @Override
              public TransformationInner call(ServiceResponseWithHeaders<TransformationInner, TransformationsCreateOrReplaceHeaders> response) {
                  return response.body();
              }
          });
      }
docs: Creates a transformation or replaces an already existing transformation under an existing streaming job.
  
  @param resourceGroupName The name of the resource group that contains the resource. You can obtain this value from the Azure Resource Manager API or the portal.
  @param jobName The name of the streaming job.
  @param transformationName The name of the transformation.
  @param transformation The definition of the transformation that will be used to create a new transformation or replace the existing one under the streaming job.
  @param ifMatch The ETag of the transformation. Omit this value to always overwrite the current transformation. Specify the last-seen ETag value to prevent accidentally overwritting concurrent changes.
  @param ifNoneMatch Set to '*' to allow a new transformation to be created, but to prevent updating an existing transformation. Other values will result in a 412 Pre-condition Failed response.
  @throws IllegalArgumentException thrown if parameters fail the validation
  @return the observable to the TransformationInner object