aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJames Forsyth <jf2512@att.com>2019-12-10 21:00:33 +0000
committerGerrit Code Review <gerrit@onap.org>2019-12-10 21:00:33 +0000
commit20617c2eb958ee31955c0e23992afe31a492c0ff (patch)
treed48babd00fc7e74fbed02ecb7aeb54ad85f60ab1
parent28f5cfef5027e68efd184276714f013b616a4d27 (diff)
parent51c7e6c74ab520bd1c711407356a96ebffaf2214 (diff)
Merge "Adding openmodel plugin mapping"
-rw-r--r--src/main/java/org/onap/aai/graphgraph/velocity/VelocityEntityProperty.java8
-rw-r--r--src/main/resources/model_export.vm65
2 files changed, 61 insertions, 12 deletions
diff --git a/src/main/java/org/onap/aai/graphgraph/velocity/VelocityEntityProperty.java b/src/main/java/org/onap/aai/graphgraph/velocity/VelocityEntityProperty.java
index 9ee2fbb..fcd2106 100644
--- a/src/main/java/org/onap/aai/graphgraph/velocity/VelocityEntityProperty.java
+++ b/src/main/java/org/onap/aai/graphgraph/velocity/VelocityEntityProperty.java
@@ -1,14 +1,16 @@
package org.onap.aai.graphgraph.velocity;
+import java.util.UUID;
import org.onap.aai.graphgraph.dto.Property;
public class VelocityEntityProperty extends Property {
private final VelocityEntity entity;
-
+ private final String propertyId;
public VelocityEntityProperty(String propertyName, String propertyValue, VelocityEntity entity) {
super(propertyName, propertyValue);
this.entity = entity;
+ propertyId = entity != null ? entity.getRandomId() : UUID.randomUUID().toString();
}
public String getEntityId() {
@@ -23,6 +25,10 @@ public class VelocityEntityProperty extends Property {
return entity != null;
}
+ public String getPropertyId() {
+ return propertyId;
+ }
+
@Override
public String toString() {
return "VelocityEntityProperty{" +
diff --git a/src/main/resources/model_export.vm b/src/main/resources/model_export.vm
index 01e62d4..c461d59 100644
--- a/src/main/resources/model_export.vm
+++ b/src/main/resources/model_export.vm
@@ -1,12 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
-<uml:Model xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001"
- xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore"
- xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xmi:id="_Z9InoLIpEemXwfLFUQ7Icw"
- name="AAIModel">
- <packageImport xmi:type="uml:PackageImport" xmi:id="_aFqRgLIpEemXwfLFUQ7Icw">
- <importedPackage xmi:type="uml:Model"
- href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
- </packageImport>
+<xmi:XMI xmi:version="20131001" xmlns:xmi="http://www.omg.org/spec/XMI/20131001" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:OpenModel_Profile="http:///schemas/OpenModel_Profile/_FV6mYP4LEeiJYfiYi3RAYQ/29" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:uml="http://www.eclipse.org/uml2/5.0.0/UML" xsi:schemaLocation="http:///schemas/OpenModel_Profile/_FV6mYP4LEeiJYfiYi3RAYQ/29 ../OpenModelProfile/OpenModel_Profile.profile.uml#_FV_e4P4LEeiJYfiYi3RAYQ">
+ <uml:Model xmi:id="_Z9InoLIpEemXwfLFUQ7Icw" name="AAIModel">
+ <packageImport xmi:type="uml:PackageImport" xmi:id="_aFqRgLIpEemXwfLFUQ7Icw">
+ <importedPackage xmi:type="uml:Model" href="pathmap://UML_LIBRARIES/UMLPrimitiveTypes.library.uml#_0"/>
+ </packageImport>
+
<packagedElement xmi:type="uml:Package" xmi:id="_dl4P8LIpEemXwfLFUQ7Icw" name="Associations">
#foreach($association in $associationList)
<packagedElement xmi:type="uml:Association" xmi:id="$association.id"
@@ -77,7 +75,7 @@
#end
#foreach($prop in $entity.properties)
#if($prop.propertyValue.contains("java.lang"))
- <ownedAttribute xmi:type="uml:Property" xmi:id="$entity.randomId"
+ <ownedAttribute xmi:type="uml:Property" xmi:id="$prop.propertyId"
name="$prop.propertyName">
#if($prop.propertyValue == "java.lang.String")
<type xmi:type="uml:PrimitiveType"
@@ -99,11 +97,56 @@
#elseif(! $prop.hasEntity)
#* <ownedAttribute xmi:type="uml:Property" xmi:id="$entity.randomId" name="$prop.propertyName"/>*#
#else
- <ownedAttribute xmi:type="uml:Property" xmi:id="$entity.randomId"
+ <ownedAttribute xmi:type="uml:Property" xmi:id="$prop.propertyId"
name="$prop.getEntityName()" type="$prop.getEntityId()"/>
#end
#end
</packagedElement>
#end
</packagedElement>
-</uml:Model> \ No newline at end of file
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_o4e8sN4HEemqKsY3En9wuw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_o5H14N4HEemqKsY3En9wuw" source="PapyrusVersion">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_o5Ic8N4HEemqKsY3En9wuw" key="Version" value="0.0.4"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_o5Ic8d4HEemqKsY3En9wuw" key="Comment" value="Metaclasses Property and Stereotype added via &lt;Element Import>."/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_o5Ic8t4HEemqKsY3En9wuw" key="Copyright" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_o5Ic894HEemqKsY3En9wuw" key="Date" value="2017-08-08"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_o5Ic9N4HEemqKsY3En9wuw" key="Author" value=""/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_o4lDUN4HEemqKsY3En9wuw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="../ProfileLifecycleProfile/ProfileLifecycle_Profile.profile.uml#_AL3HsHweEee8oZaf2rRQlg"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="../ProfileLifecycleProfile/ProfileLifecycle_Profile.profile.uml#_CBpGoEdZEearpawF38eisA"/>
+ </profileApplication>
+ <profileApplication xmi:type="uml:ProfileApplication" xmi:id="_o5JEAN4HEemqKsY3En9wuw">
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_pCSY8d4HEemqKsY3En9wuw" source="PapyrusVersion">
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_pCSY8t4HEemqKsY3En9wuw" key="Version" value="0.2.17"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_pCTAAN4HEemqKsY3En9wuw" key="Comment" value="Editorial corrections in the description of OpenModelAttribute::partOfObjectKey and Reference."/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_pCTAAd4HEemqKsY3En9wuw" key="Copyright" value=""/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_pCTAAt4HEemqKsY3En9wuw" key="Date" value="2018-12-12"/>
+ <details xmi:type="ecore:EStringToStringMapEntry" xmi:id="_pCTAA94HEemqKsY3En9wuw" key="Author" value=""/>
+ </eAnnotations>
+ <eAnnotations xmi:type="ecore:EAnnotation" xmi:id="_o5JrEN4HEemqKsY3En9wuw" source="http://www.eclipse.org/uml2/2.0.0/UML">
+ <references xmi:type="ecore:EPackage" href="../OpenModelProfile/OpenModel_Profile.profile.uml#_FV_e4P4LEeiJYfiYi3RAYQ"/>
+ </eAnnotations>
+ <appliedProfile xmi:type="uml:Profile" href="../OpenModelProfile/OpenModel_Profile.profile.uml#_m1xqsHBgEd6FKu9XX1078A"/>
+ </profileApplication>
+</uml:Model>
+<OpenModel_Profile:OpenModelStatement xmi:id="_o-KG4N4HEemqKsY3En9wuw" base_Model="_Z9InoLIpEemXwfLFUQ7Icw"/>
+#foreach($association in $associationList)
+<OpenModel_Profile:OpenModelAttribute xmi:id="$association.randomId" base_StructuralFeature="$association.fromId"/>
+#if( ! $association.isComposition)
+<OpenModel_Profile:OpenModelAttribute xmi:id="$association.randomId" base_StructuralFeature="$association.toId"/>
+#end
+#end
+#foreach($entity in $entityList)
+ <OpenModel_Profile:OpenModelClass xmi:id="$entity.randomId" base_Class="$entity.id"/>
+ #foreach($association in $entity.neighbours)
+ #if( $association.isComposition)
+ <OpenModel_Profile:OpenModelAttribute xmi:id="$association.randomId" base_StructuralFeature="$association.toId"/>
+ #end
+ #end
+ #foreach($prop in $entity.properties)
+ <OpenModel_Profile:OpenModelAttribute xmi:id="$entity.randomId" base_StructuralFeature="$prop.propertyId"/>
+ #end
+#end
+</xmi:XMI> \ No newline at end of file