diff options
author | 2018-06-13 08:40:26 -0400 | |
---|---|---|
committer | 2018-06-13 08:54:06 -0400 | |
commit | 00832f054dd0c21492af531548e321ea25cdb8b4 (patch) | |
tree | e9017ca88d1e987a315c2faad1c49b873d3e5ca1 /src/main/java/org/onap/schema/OxmModelLoader.java | |
parent | 18703cdc19842806969d30f19f8171469c79a0fe (diff) |
Gizmo to load multiple Db Edge Rules files
There is an Edge Rule file for each OXM file.
For every OXM version that is loaded, an edge rule file
should also be loaded.
Issue-ID: AAI-1201
Change-Id: I728e577ea8152623d3c5e2f0e8edf677f0eb9ef4
Signed-off-by: Shwetank Dave <shwetank.dave@amdocs.com>
Diffstat (limited to 'src/main/java/org/onap/schema/OxmModelLoader.java')
-rw-r--r-- | src/main/java/org/onap/schema/OxmModelLoader.java | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/main/java/org/onap/schema/OxmModelLoader.java b/src/main/java/org/onap/schema/OxmModelLoader.java index 869df8f..8f55602 100644 --- a/src/main/java/org/onap/schema/OxmModelLoader.java +++ b/src/main/java/org/onap/schema/OxmModelLoader.java @@ -21,6 +21,8 @@ package org.onap.schema; import java.io.IOException; +import java.util.ArrayList; +import java.util.List; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; import java.util.regex.Matcher; @@ -141,6 +143,38 @@ public class OxmModelLoader { } /** + * Retrieves the list of all Loaded OXM versions. + * + * @return - A List of Strings of all loaded OXM versions. + * + * @throws CrudException + */ + public static List<String> getLoadedOXMVersions() throws CrudException { + + // If we haven't already loaded in the available OXM models, then do so now. + if (versionContextMap == null || versionContextMap.isEmpty()) { + loadModels(); + } + + // If there are still no models available, then there's not much we can do... + if (versionContextMap.isEmpty()) { + logger.error(CrudServiceMsgs.OXM_LOAD_ERROR, "No available OXM schemas to get versions for."); + throw new CrudException("No available OXM schemas to get versions for.", + Status.INTERNAL_SERVER_ERROR); + } + + List<String> versions = new ArrayList<String> (); + for (String versionKey : versionContextMap.keySet()) { + + Matcher matcher = versionPattern.matcher(versionKey.toUpperCase()); + if (matcher.find()) { + versions.add ( "V" + matcher.group ( 1 ) ); + } + } + return versions; + } + + /** * Retrieves the map of all JAXB context objects that have been created by importing the * available OXM model schemas. * |