aai-schema introduce composed-resource to build parent child relationship between 50/122450/4
authorMunir Ahmad <munir.ahmad@bell.ca>
Tue, 6 Jul 2021 11:34:49 +0000 (07:34 -0400)
committerMunir Ahmad <munir.ahmad@bell.ca>
Tue, 6 Jul 2021 14:10:40 +0000 (14:10 +0000)
service instances
this allows us to identify which object is parent and which is child service
Issue-ID: AAI-3104

Signed-off-by: Munir Ahmad <munir.ahmad@bell.ca>
Change-Id: I9dcf213015e2e5ae19bb4ca11496d5d93e6fea44

aai-schema/src/main/resources/onap/dbedgerules/v24/DbEdgeRules_v24.json
aai-schema/src/main/resources/onap/oxm/v24/aai_oxm_v24.xml

index 62ac5a7..6826a78 100644 (file)
                        "default": "true",
                        "description": ""
                },
+                {
+                    "from": "composed-resource",
+                    "to": "service-instance",
+                    "label": "org.onap.relationships.inventory.ComposedOf",
+                    "direction": "OUT",
+                    "multiplicity": "MANY2ONE",
+                    "contains-other-v": "!${direction}",
+                    "delete-other-v": "!${direction}",
+                    "prevent-delete": "NONE",
+                    "default": "true",
+                    "description": ""
+                },
+                {
+                    "from": "service-instance",
+                    "to": "composed-resource",
+                    "label": "org.onap.relationships.inventory.BelongsTo",
+                    "direction": "OUT",
+                    "multiplicity": "ONE2ONE",
+                    "contains-other-v": "NONE",
+                    "delete-other-v": "NONE",
+                    "prevent-delete": "NONE",
+                    "default": "true",
+                    "description": ""
+                },
                {
                        "from": "service-instance",
                        "to": "instance-group",
index ff8eadb..6c730a3 100644 (file)
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v24.RelationshipList"/>
                 <xml-element java-attribute="metadata" name="metadata" type="inventory.aai.onap.org.v24.Metadata"/>
                 <xml-element java-attribute="allottedResources" name="allotted-resources" type="inventory.aai.onap.org.v24.AllottedResources"/>
+                <xml-element java-attribute="composedResources" name="composed-resources" type="inventory.aai.onap.org.v24.ComposedResources"/>
                 <xml-element java-attribute="communicationServiceProfiles" name="communication-service-profiles" type="inventory.aai.onap.org.v24.CommunicationServiceProfiles"/>
                 <xml-element java-attribute="serviceProfiles" name="service-profiles" type="inventory.aai.onap.org.v24.ServiceProfiles"/>
                 <xml-element java-attribute="sliceProfiles" name="slice-profiles" type="inventory.aai.onap.org.v24.SliceProfiles"/>
             <xml-property name="requiredProps" value="segmentation-id"/>
             </xml-properties>
         </java-type>
+        <java-type name="ComposedResources">
+            <xml-properties>
+                <xml-property name="description" value="This object is used to store slices of services being offered"/>
+            </xml-properties>
+            <xml-root-element name="composed-resources"/>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="composedResource" name="composed-resource" type="inventory.aai.onap.org.v24.ComposedResource"/>
+            </java-attributes>
+        </java-type>
+
+        <java-type name="ComposedResource">
+            <xml-root-element name="composed-resource"/>
+            <java-attributes>
+                <xml-element java-attribute="id" name="id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Composed Resource id UUID assigned to this instance."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="description" name="description" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="The descriptive information assigned to this composed resource instance"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="selflink" name="selflink" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Link back to more information in the controller"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelInvariantId" name="model-invariant-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model id for this resource or service model."/>
+                        <xml-property name="visibility" value="deployment"/>
+                        <xml-property name="requires" value="model-version-id"/>
+                        <xml-property name="dbAlias" value="model-invariant-id-local"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="modelVersionId" name="model-version-id" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="the ASDC model version for this resource or service model."/>
+                        <xml-property name="visibility" value="deployment"/>
+                        <xml-property name="requires" value="model-invariant-id"/>
+                        <xml-property name="dbAlias" value="model-version-id-local"/>
+                        <xml-property name="privateEdge" value="service-design-and-creation/models/model/{model-invariant-id}/model-vers/model-ver/{model-version-id}"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Concurrency value"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="orchestrationStatus" name="orchestration-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Orchestration status"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="operationalStatus" name="operational-status" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Indicator for whether the resource is considered operational"/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="type" name="type" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Generic description of the type of composed resource."/>
+                    </xml-properties>
+                </xml-element>
+                <xml-element java-attribute="role" name="role" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="role in the network that this resource will be providing."/>
+                    </xml-properties>
+                </xml-element>
+        <xml-element java-attribute="composedResourceName" name="composed-resource-name" type="java.lang.String">
+          <xml-properties>
+            <xml-property name="description" value="Store the name of this composed-resource."/>
+          </xml-properties>
+        </xml-element>
+        <xml-element java-attribute="accessProviderId" name="access-provider-id" type="java.lang.String">
+          <xml-properties>
+            <xml-property name="description" value="Store the id of the access provider of this composed-resource."/>
+          </xml-properties>
+        </xml-element>
+        <xml-element java-attribute="accessClientId" name="access-client-id" type="java.lang.String">
+          <xml-properties>
+            <xml-property name="description" value="Store the id of the access client of this composed-resource."/>
+          </xml-properties>
+        </xml-element>
+        <xml-element java-attribute="accessTopologyId" name="access-topology-id" type="java.lang.String">
+          <xml-properties>
+            <xml-property name="description" value="Store the id of the access topology of this composed-resource."/>
+          </xml-properties>
+        </xml-element>
+        <xml-element java-attribute="accessNodeId" name="access-node-id" type="java.lang.String">
+          <xml-properties>
+            <xml-property name="description" value="Store the id of the access node of this composed-resource."/>
+          </xml-properties>
+        </xml-element>
+        <xml-element java-attribute="accessLtpId" name="access-ltp-id" type="java.lang.String">
+          <xml-properties>
+            <xml-property name="description" value="Store the id of the access ltp of this composed-resource."/>
+          </xml-properties>
+        </xml-element>
+        <xml-element java-attribute="cvlan" name="cvlan" type="java.lang.String">
+          <xml-properties>
+            <xml-property name="description" value="Store the cvlan of this composed-resource."/>
+          </xml-properties>
+        </xml-element>
+        <xml-element java-attribute="vpnName" name="vpn-name" type="java.lang.String">
+          <xml-properties>
+            <xml-property name="description" value="Store the vpn-name of this composed-resource."/>
+          </xml-properties>
+        </xml-element>
+                <xml-element java-attribute="dataOwner" name="data-owner" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Identifies the entity that is responsible managing this inventory object."/>
+            <xml-property name="ownerCheck" value="N/A"/>
+                    </xml-properties>
+                </xml-element>
+        <xml-element java-attribute="dataSource" name="data-source" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Identifies the upstream source of the data."/>
+                    </xml-properties>
+                </xml-element>
+        <xml-element java-attribute="dataSourceVersion" name="data-source-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Identifies the version of the upstream source."/>
+                    </xml-properties>
+                </xml-element>                         
+                <xml-element java-attribute="tunnelXconnects" name="tunnel-xconnects" type="inventory.aai.onap.org.v24.TunnelXconnects"/>
+                <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v24.RelationshipList"/>
+            </java-attributes>
 
+            <xml-properties>
+                <xml-property name="description" value="Represents a slice or partial piece of a resource that gets separately composed"/>
+        <xml-property name="nameProps" value="description,composed-resource-name"/>
+        <xml-property name="indexedProps" value="id,model-invariant-id,model-version-id,type,role,composed-resource-name,access-provider-id,access-client-id,access-topology-id,access-node-id,access-ltp-id,vpn-name,orchestration-status,data-owner,data-source,data-source-version"/>
+                <xml-property name="dependentOn" value="service-instance"/>
+                <xml-property name="container" value="composed-resources"/>
+                <!--  <xml-property name="namespace" value="network" /> -->
+                <xml-property name="uriTemplate" value="/composed-resources/composed-resource/{id}"/>
+            <xml-property name="requiredProps" value="id"/>
+            </xml-properties>
+        </java-type>
         <java-type name="AllottedResources">
             <xml-properties>
                 <xml-property name="description" value="This object is used to store slices of services being offered"/>