public JsonObject transform(Map.Entry<String, Object> entry) { String stageName = entry.getKey(); JsonObject stage = new JsonObject(); stage.addProperty(JSON_STAGE_NAME_FIELD, stageName); Map<String, Object> stageMap = (Map<String, Object>) entry.getValue(); addOptionalBoolean(stage, stageMap, JSON_STAGE_FETCH_FIELD, YAML_STAGE_FETCH_FIELD); addOptionalBoolean(stage, stageMap, JSON_STAGE_NEVER_CLEAN_FIELD, YAML_STAGE_KEEP_ARTIFACTS_FIELD); addOptionalBoolean(stage, stageMap, JSON_STAGE_CLEAN_WORK_FIELD, YAML_STAGE_CLEAN_WORK_FIELD); addApproval(stage, stageMap); JsonArray jsonEnvVariables = environmentTransform.transform(stageMap); if (jsonEnvVariables != null && jsonEnvVariables.size() > 0) stage.add(JSON_ENV_VAR_FIELD, jsonEnvVariables); addJobs(stage, stageMap); return stage; }