code: public static Operation createUndeployOperation(final UndeployDescription undeployDescription) {
          Assert.checkNotNullParam("undeployDescription", undeployDescription);
          final CompositeOperationBuilder builder = CompositeOperationBuilder.create(true);
          addUndeployOperationStep(builder, undeployDescription);
          return builder.build();
      }
docs: Creates an undeploy operation.
  <p>
  If the {@link UndeployDescription#isRemoveContent()} returns {@code true} the content will also be removed from
  the content repository. Otherwise the content will remain on the server and only the {@code undeploy} operation
  will be executed.
  </p>
  <p>
  Note that the {@link UndeployDescription#isFailOnMissing() failOnMissing} is ignored and the operation will fail
  if any deployments being undeployed are missing.
  </p>
  
  @param undeployDescription the description used to crate the operation
  
  @return the undeploy operation