X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=src%2Fmain%2Fjava%2Forg%2Fonap%2Faai%2Fsparky%2Fconfig%2Foxm%2FOxmModelLoader.java;h=110c80d3503b28a00fbf41ba3d85f4e1cca1be94;hb=9eb9e258f0ab06a516f6d88d1aedc36fc22aeeaf;hp=b9539170357cb23f5bb792f657376549509968bd;hpb=05e74c6879ab564181e7cf92e4444d17cc7e25d4;p=aai%2Fsparky-be.git diff --git a/src/main/java/org/onap/aai/sparky/config/oxm/OxmModelLoader.java b/src/main/java/org/onap/aai/sparky/config/oxm/OxmModelLoader.java index b953917..110c80d 100644 --- a/src/main/java/org/onap/aai/sparky/config/oxm/OxmModelLoader.java +++ b/src/main/java/org/onap/aai/sparky/config/oxm/OxmModelLoader.java @@ -42,9 +42,9 @@ import org.springframework.core.io.support.PathMatchingResourcePatternResolver; import org.springframework.core.io.support.ResourcePatternResolver; public class OxmModelLoader { - + private static final Logger LOG = LoggerFactory.getInstance().getLogger(OxmModelLoader.class); - + /* * The intent of this parameter is to be able to programmatically over-ride the latest AAI schema * version discovered from the aai-schema jar file. This property is optional, but if set on the @@ -57,18 +57,18 @@ public class OxmModelLoader { protected int oxmApiVersionOverride; protected Set processors; private int latestVersionNum = 0; - + private final static Pattern p = Pattern.compile("aai_oxm_(v)(.*).xml"); - + public OxmModelLoader() { this(-1, new HashSet()); } - - public OxmModelLoader(int apiVersionOverride, Set oxmModelProcessors) { + + public OxmModelLoader(int apiVersionOverride,Set oxmModelProcessors) { this.oxmApiVersionOverride = apiVersionOverride; this.processors = oxmModelProcessors; } - + protected synchronized Map getStreamHandlesForOxmFromResource() { Map listOfOxmFiles = new HashMap(); ClassLoader oxmClassLoader = OxmModelLoader.class.getClassLoader(); @@ -91,16 +91,16 @@ public class OxmModelLoader { try { listOfOxmFiles.put(new Integer(m.group(2)), resource.getInputStream()); } catch (Exception e) { - LOG.error(AaiUiMsgs.OXM_LOADING_ERROR, resource.getFilename(), e.getMessage()); + LOG.error(AaiUiMsgs.OXM_LOADING_ERROR, + resource.getFilename(), e.getMessage()); } } } return listOfOxmFiles; } - + /** * Load an oxm model. - * * @param inputStream file handle for oxm */ protected void loadModel(InputStream inputStream) { @@ -118,14 +118,14 @@ public class OxmModelLoader { LOG.error(AaiUiMsgs.OXM_PARSE_ERROR_VERBOSE, "OXM v" + latestVersionNum, exc.getMessage()); } } - + /** * Load the latest oxm model. */ public synchronized void loadLatestOxmModel() { LOG.info(AaiUiMsgs.INITIALIZE_OXM_MODEL_LOADER); - + // find handles for available oxm models final Map listOfOxmStreams = getStreamHandlesForOxmFromResource(); if (listOfOxmStreams.isEmpty()) { @@ -153,7 +153,7 @@ public class OxmModelLoader { loadModel(stream); } - + public int getLatestVersionNum() { return latestVersionNum; } @@ -161,7 +161,7 @@ public class OxmModelLoader { public void setLatestVersionNum(int latestVersionNum) { this.latestVersionNum = latestVersionNum; } - + /** * Parses the oxm context. * @@ -173,12 +173,21 @@ public class OxmModelLoader { for (OxmModelProcessor processor : processors) { - processor.processOxmModel(oxmContext); + try { + + processor.processOxmModel(oxmContext); + + } catch (Exception exc) { + + LOG.warn(AaiUiMsgs.WARN_GENERIC, + "OxmModelProcessor experienced an error. Error: " + exc.getMessage()); + + } } } } - + }