/**
   * Create a holder classes for channel/containers.
   *
   * @param operation the cixs operation
   * @param parameters miscellaneous help parameters
   * @param operationClassFilesDir where to store the generated file
   * @throws CodeGenMakeException if generation fails
   */
  public static void generateHoldersXmlTransformers(
      final CixsOperation operation,
      final Map<String, Object> parameters,
      final File operationClassFilesDir)
      throws CodeGenMakeException {

    if (operation.getCicsChannel() == null || operation.getCicsChannel().length() == 0) {
      return;
    }

    if (operation.getInput().size() > 0) {
      generateHolderXmlToHostTransformer(
          operation, parameters, operationClassFilesDir, operation.getRequestHolderType());
    }
    if (operation.getOutput().size() > 0) {
      generateHolderHostToXmlTransformer(
          operation, parameters, operationClassFilesDir, operation.getResponseHolderType());
    }
  }
  /**
   * Create host byte array to objects transformer for both request and response objects.
   *
   * @param operation the cixs operation
   * @param parameters miscellaneous help parameters
   * @param operationClassFilesDir where to store the generated file
   * @throws CodeGenMakeException if generation fails
   */
  public static void generateHbaToObjectTransformers(
      final CixsOperation operation,
      final Map<String, Object> parameters,
      final File operationClassFilesDir)
      throws CodeGenMakeException {

    if (operation.getInput().size() > 0) {
      generateHbaToObjectTransformer(
          operation,
          parameters,
          operationClassFilesDir,
          operation.getRequestHolderType(),
          "Request");
    }
    if (operation.getOutput().size() > 0) {
      generateHbaToObjectTransformer(
          operation,
          parameters,
          operationClassFilesDir,
          operation.getResponseHolderType(),
          "Response");
    }
  }