public JsonObject transform(Map.Entry<String, Object> entry) {
String pipelineName = entry.getKey();
JsonObject pipeline = new JsonObject();
pipeline.addProperty(JSON_PIPELINE_NAME_FIELD, pipelineName);
Map<String, Object> pipeMap = (Map<String, Object>) entry.getValue();
addOptionalString(pipeline, pipeMap, JSON_PIPELINE_GROUP_FIELD, YAML_PIPELINE_GROUP_FIELD);
addOptionalString(pipeline, pipeMap, JSON_PIPELINE_TEMPLATE_FIELD, YAML_PIPELINE_TEMPLATE_FIELD);
addOptionalString(pipeline, pipeMap, JSON_PIPELINE_LABEL_TEMPLATE_FIELD, YAML_PIPELINE_LABEL_TEMPLATE_FIELD);
addOptionalBoolean(pipeline, pipeMap, JSON_PIPELINE_PIPE_LOCKING_FIELD, YAML_PIPELINE_PIPE_LOCKING_FIELD);
addOptionalString(pipeline, pipeMap, JSON_PIPELINE_LOCK_BEHAVIOR_FIELD, YAML_PIPELINE_LOCK_BEHAVIOR_FIELD);
addOptionalObject(pipeline, pipeMap, JSON_PIPELINE_TRACKING_TOOL_FIELD, YAML_PIPELINE_TRACKING_TOOL_FIELD);
addOptionalObject(pipeline, pipeMap, JSON_PIPELINE_MINGLE_FIELD, YAML_PIPELINE_MINGLE_FIELD);
addTimer(pipeline, pipeMap);
JsonArray jsonEnvVariables = variablesTransform.transform(pipeMap);
if (jsonEnvVariables != null && jsonEnvVariables.size() > 0)
pipeline.add(JSON_ENV_VAR_FIELD, jsonEnvVariables);
addMaterials(pipeline, pipeMap);
if (!pipeline.has(JSON_PIPELINE_TEMPLATE_FIELD)) {
addStages(pipeline, pipeMap);
}
JsonArray params = parameterTransform.transform(pipeMap);
if (params != null && params.size() > 0) {
pipeline.add(YAML_PIPELINE_PARAMETERS_FIELD, params);
}
return pipeline;
}