diff options
Diffstat (limited to 'appc-config')
2 files changed, 46 insertions, 46 deletions
diff --git a/appc-config/appc-config-generator/provider/src/main/java/org/onap/sdnc/config/generator/merge/MergeNode.java b/appc-config/appc-config-generator/provider/src/main/java/org/onap/sdnc/config/generator/merge/MergeNode.java index 48814ce6b..2c4c0614d 100644 --- a/appc-config/appc-config-generator/provider/src/main/java/org/onap/sdnc/config/generator/merge/MergeNode.java +++ b/appc-config/appc-config-generator/provider/src/main/java/org/onap/sdnc/config/generator/merge/MergeNode.java @@ -24,6 +24,8 @@ package org.onap.sdnc.config.generator.merge; +import com.att.eelf.configuration.EELFLogger; +import com.att.eelf.configuration.EELFManager; import java.nio.charset.Charset; import java.util.Map; import org.apache.commons.io.IOUtils; @@ -35,118 +37,108 @@ import org.onap.sdnc.config.generator.ConfigGeneratorConstant; import org.onap.sdnc.config.generator.tool.EscapeUtils; import org.onap.sdnc.config.generator.tool.JSONTool; import org.onap.sdnc.config.generator.tool.MergeTool; -import com.att.eelf.configuration.EELFLogger; -import com.att.eelf.configuration.EELFManager; public class MergeNode implements SvcLogicJavaPlugin { private static final EELFLogger log = EELFManager.getInstance().getLogger(MergeNode.class); public void mergeDataOnTemplate(Map<String, String> inParams, SvcLogicContext ctx) - throws SvcLogicException { - - } + throws SvcLogicException { /* TODO implement this method */ } public void mergeJsonDataOnTemplate(Map<String, String> inParams, SvcLogicContext ctx) - throws SvcLogicException { + throws SvcLogicException { log.info("Received mergeJsonDataOnTemplate call with params : " + inParams); String responsePrefix = inParams.get(ConfigGeneratorConstant.INPUT_PARAM_RESPONSE_PRIFIX); try { responsePrefix = StringUtils.isNotBlank(responsePrefix) ? (responsePrefix + ".") : ""; String jsonData = inParams.get(ConfigGeneratorConstant.INPUT_PARAM_JSON_DATA); if (StringUtils.isBlank(jsonData)) { - throw new Exception("JSON Data is missing"); + throw new ParameterMissingException("JSON Data is missing"); } String templateData = inParams.get(ConfigGeneratorConstant.INPUT_PARAM_TEMPLATE_DATA); String templateFile = inParams.get(ConfigGeneratorConstant.INPUT_PARAM_TEMPLATE_FILE); if (StringUtils.isBlank(templateData) && StringUtils.isBlank(templateFile)) { - throw new Exception("Template data or Template file is missing"); + throw new ParameterMissingException("Template data or Template file is missing"); } if (StringUtils.isBlank(templateData)) { - String path = MergeNode.class.getClassLoader().getResource(".").toString(); templateData = IOUtils.toString( - MergeNode.class.getClassLoader().getResourceAsStream(templateFile)); + MergeNode.class.getClassLoader().getResourceAsStream(templateFile), "UTF-8"); } - String templateType = inParams.get(ConfigGeneratorConstant.INPUT_PARAM_TEMPLATE_TYPE); - Map<String, String> dataMap = JSONTool.convertToProperties(jsonData); log.info("Data Maps created :" + dataMap); - if (dataMap != null) { - String mergedData = MergeTool.mergeMap2TemplateData(templateData, dataMap); - if (mergedData != null) { - // Changed for E2E defect 266908 Quote issue - // ctx.setAttribute(responsePrefix + - // ConfigGeneratorConstant.OUTPUT_PARAM_MERGED_DATA,mergedData); - ctx.setAttribute( - responsePrefix + ConfigGeneratorConstant.OUTPUT_PARAM_MERGED_DATA, - EscapeUtils.unescapeSql(mergedData)); - } - } + trySetContextAttribute(ctx, responsePrefix, templateData, dataMap); ctx.setAttribute(responsePrefix + ConfigGeneratorConstant.OUTPUT_PARAM_STATUS, - ConfigGeneratorConstant.OUTPUT_STATUS_SUCCESS); + ConfigGeneratorConstant.OUTPUT_STATUS_SUCCESS); log.info("Data Merge Successful :" + ctx); } catch (Exception e) { ctx.setAttribute(responsePrefix + ConfigGeneratorConstant.OUTPUT_PARAM_STATUS, - ConfigGeneratorConstant.OUTPUT_STATUS_FAILURE); + ConfigGeneratorConstant.OUTPUT_STATUS_FAILURE); ctx.setAttribute(responsePrefix + ConfigGeneratorConstant.OUTPUT_PARAM_ERROR_MESSAGE, - e.getMessage()); - log.error("Failed in merging data to template " + e.getMessage()); + e.getMessage()); + log.error("Failed in merging data to template", e); throw new SvcLogicException(e.getMessage()); } } + private void trySetContextAttribute(SvcLogicContext ctx, String responsePrefix, String templateData, + Map<String, String> dataMap) { + if (dataMap != null) { + String mergedData = MergeTool.mergeMap2TemplateData(templateData, dataMap); + if (mergedData != null) { + // Changed for E2E defect 266908 Quote issue + ctx.setAttribute( + responsePrefix + ConfigGeneratorConstant.OUTPUT_PARAM_MERGED_DATA, + EscapeUtils.unescapeSql(mergedData)); + } + } + } + public void mergeComplexJsonDataOnTemplate(Map<String, String> inParams, SvcLogicContext ctx) - throws SvcLogicException { - // log.info("Received mergeJsonComplexDataOnTemplate call with params : " + inParams); + throws SvcLogicException { String responsePrefix = inParams.get(ConfigGeneratorConstant.INPUT_PARAM_RESPONSE_PRIFIX); try { responsePrefix = StringUtils.isNotBlank(responsePrefix) ? (responsePrefix + ".") : ""; String jsonData = inParams.get(ConfigGeneratorConstant.INPUT_PARAM_JSON_DATA); if (StringUtils.isBlank(jsonData)) { - throw new Exception("JSON Data is missing"); + throw new ParameterMissingException("JSON Data is missing"); } String templateData = inParams.get(ConfigGeneratorConstant.INPUT_PARAM_TEMPLATE_DATA); String templateFile = inParams.get(ConfigGeneratorConstant.INPUT_PARAM_TEMPLATE_FILE); if (StringUtils.isBlank(templateData) && StringUtils.isBlank(templateFile)) { - throw new Exception("Template data or Template file is missing"); + throw new ParameterMissingException("Template data or Template file is missing"); } if (StringUtils.isBlank(templateData)) { - // String path = MergeNode.class.getClassLoader().getResource(".").toString(); templateData = IOUtils.toString( - MergeNode.class.getClassLoader().getResourceAsStream(templateFile), - Charset.defaultCharset()); + MergeNode.class.getClassLoader().getResourceAsStream(templateFile), + Charset.defaultCharset()); } String templateType = inParams.get(ConfigGeneratorConstant.INPUT_PARAM_TEMPLATE_TYPE); String doPrettyOutput = - inParams.get(ConfigGeneratorConstant.INPUT_PARAM_DO_PRETTY_OUTPUT); + inParams.get(ConfigGeneratorConstant.INPUT_PARAM_DO_PRETTY_OUTPUT); String mergedData = MergeTool.mergeJson2TemplateData(templateData, jsonData, - templateType, doPrettyOutput); + templateType, doPrettyOutput); ctx.setAttribute(responsePrefix + ConfigGeneratorConstant.OUTPUT_PARAM_MERGED_DATA, - mergedData); + mergedData); ctx.setAttribute(responsePrefix + ConfigGeneratorConstant.OUTPUT_PARAM_STATUS, - ConfigGeneratorConstant.OUTPUT_STATUS_SUCCESS); - // log.info("Data Merge Successful :" + ctx); + ConfigGeneratorConstant.OUTPUT_STATUS_SUCCESS); } catch (Exception e) { ctx.setAttribute(responsePrefix + ConfigGeneratorConstant.OUTPUT_PARAM_STATUS, - ConfigGeneratorConstant.OUTPUT_STATUS_FAILURE); + ConfigGeneratorConstant.OUTPUT_STATUS_FAILURE); ctx.setAttribute(responsePrefix + ConfigGeneratorConstant.OUTPUT_PARAM_ERROR_MESSAGE, - e.getMessage()); - log.error("Failed in merging data to template " + e.getMessage()); + e.getMessage()); + log.error("Failed in merging data to template", e); throw new SvcLogicException(e.getMessage()); } } public void mergeYamlDataOnTemplate(Map<String, String> inParams, SvcLogicContext ctx) - throws SvcLogicException { - - } - + throws SvcLogicException { /* TODO implement this method */} } diff --git a/appc-config/appc-config-generator/provider/src/main/java/org/onap/sdnc/config/generator/merge/ParameterMissingException.java b/appc-config/appc-config-generator/provider/src/main/java/org/onap/sdnc/config/generator/merge/ParameterMissingException.java new file mode 100644 index 000000000..898f9ea69 --- /dev/null +++ b/appc-config/appc-config-generator/provider/src/main/java/org/onap/sdnc/config/generator/merge/ParameterMissingException.java @@ -0,0 +1,8 @@ +package org.onap.sdnc.config.generator.merge; + +public class ParameterMissingException extends Exception { + + public ParameterMissingException(String message) { + super(message); + } +} |