X-Git-Url: https://gerrit.onap.org/r/gitweb?a=blobdiff_plain;f=aai-schema-abstraction%2Fsrc%2Fmain%2Fjava%2Forg%2Fonap%2Faai%2Fschemaif%2Fjson%2FSchemaInstance.java;h=cfd93862045f10a0914ed44f301945b4ccbc020c;hb=fbb02159b84435cf37221ae8ae5e0045167be15a;hp=77a1c56b27fe4ecd2bae67b6369ddcb95bfaa879;hpb=58f0fd2f6ef58de52e1f9a73540c1bb895c0d6e6;p=aai%2Faai-common.git diff --git a/aai-schema-abstraction/src/main/java/org/onap/aai/schemaif/json/SchemaInstance.java b/aai-schema-abstraction/src/main/java/org/onap/aai/schemaif/json/SchemaInstance.java index 77a1c56b..cfd93862 100644 --- a/aai-schema-abstraction/src/main/java/org/onap/aai/schemaif/json/SchemaInstance.java +++ b/aai-schema-abstraction/src/main/java/org/onap/aai/schemaif/json/SchemaInstance.java @@ -33,49 +33,48 @@ import org.onap.aai.schemaif.definitions.VertexSchema; public class SchemaInstance { // vertex-name -> vertex-schema private Map vertexMap = new HashMap<>(); - + // source:target:type -> edge-schema private Map edgeKeyMap = new HashMap<>(); - + // source:target -> edge-schema private Map> edgeSourceTargetMap = new HashMap<>(); - + // vertex-name -> edge-schema private Map> vertexEdgeMap = new HashMap<>(); - + public VertexSchema getVertexSchema(String vertexName) { return vertexMap.get(vertexName.toLowerCase()); } - + public EdgeSchema getEdgeSchema(String source, String target, String type) { return edgeKeyMap.get(generateEdgeKey(source, target, type)); } - + public Set getEdgeSchemas(String source, String target) { return edgeSourceTargetMap.get(source.toLowerCase() + ":" + target.toLowerCase()); } - + public Set getEdgeSchema(String vertexName) { return vertexEdgeMap.get(vertexName.toLowerCase()); } - + public void addVertex(VertexSchema v) { vertexMap.put(v.getName().toLowerCase(), v); } - + public void addEdge(EdgeSchema e) throws SchemaProviderException { - if (e.getSource().equals(FromJsonEdgeSchema.WILDCARD_CHAR) || - e.getTarget().equals(FromJsonEdgeSchema.WILDCARD_CHAR)) { + if (e.getSource().equals(FromJsonEdgeSchema.WILDCARD_CHAR) + || e.getTarget().equals(FromJsonEdgeSchema.WILDCARD_CHAR)) { // Handle wildcard edges for (VertexSchema vertex : vertexMap.values()) { addWildcardEdge(e, vertex); } - } - else { + } else { addEdgeInternal(e); } } - + private void addWildcardEdge(EdgeSchema e, VertexSchema vertex) throws SchemaProviderException { FromJsonEdgeSchema newEdge = new FromJsonEdgeSchema(e); newEdge.replaceWildcard(vertex.getName()); @@ -84,38 +83,38 @@ public class SchemaInstance { private void addEdgeInternal(EdgeSchema e) { edgeKeyMap.put(generateEdgeKey(e.getSource(), e.getTarget(), e.getName()), e); - + Set edgeListSource = vertexEdgeMap.get(e.getSource().toLowerCase()); Set edgeListTarget = vertexEdgeMap.get(e.getTarget().toLowerCase()); - + if (edgeListSource == null) { edgeListSource = new HashSet(); } if (edgeListTarget == null) { edgeListTarget = new HashSet(); } - + edgeListSource.add(e); edgeListTarget.add(e); vertexEdgeMap.put(e.getSource().toLowerCase(), edgeListSource); vertexEdgeMap.put(e.getTarget().toLowerCase(), edgeListTarget); - + String sourceTargetKey = e.getSource().toLowerCase() + ":" + e.getTarget().toLowerCase(); Set edgeList = edgeSourceTargetMap.get(sourceTargetKey); if (edgeList == null) { edgeList = new HashSet(); } - + edgeList.add(e); edgeSourceTargetMap.put(sourceTargetKey, edgeList); } - + private String generateEdgeKey(String source, String target, String type) { String key = source + ":" + target + ":" + type; return key.toLowerCase(); } public Map getVertexMap() { - return vertexMap; + return vertexMap; } }