Add aggregate route object 73/71673/1
authorKajur, Harish (vk250x) <vk250x@att.com>
Thu, 1 Nov 2018 18:57:56 +0000 (14:57 -0400)
committerKajur, Harish (vk250x) <vk250x@att.com>
Thu, 1 Nov 2018 18:58:01 +0000 (14:58 -0400)
Issue-ID: AAI-1824
Change-Id: I3b1fd2b0dca1add9736b49b26ede67e413aa2586
Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
aai-schema/src/main/resources/onap/aai_schema/aai_schema_v15.xsd
aai-schema/src/main/resources/onap/dbedgerules/v15/DbEdgeRules_v15.json
aai-schema/src/main/resources/onap/oxm/v15/aai_oxm_v15.xml

index b224c7c..739caa2 100644 (file)
@@ -6121,6 +6121,64 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
       </xs:sequence>
     </xs:complexType>
   </xs:element>
+  <xs:element name="aggregate-route">
+    <xs:complexType>
+      <xs:annotation>\r
+        <xs:appinfo>\r
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Aggregate route configs are used on the D2 IPE’s for the Voice services.  In 1902, SDNC will create aggregate-route objects and write them to A&amp;AI. ",uniqueProps="route-id",container="aggregate-routes",dependentOn="l3-network",uriTemplate="/aggregate-routes/aggregate-route/{route-id}")</annox:annotate>\r
+        </xs:appinfo>\r
+      </xs:annotation>\r
+      <xs:sequence>
+        <xs:element name="route-id" type="xs:string" minOccurs="0">
+          <xs:annotation>\r
+            <xs:appinfo>\r
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="Unique id of the aggregate-route instance")</annox:annotate>\r
+            </xs:appinfo>\r
+          </xs:annotation>\r
+        </xs:element>
+        <xs:element name="network-start-address" type="xs:string" minOccurs="0">
+          <xs:annotation>\r
+            <xs:appinfo>\r
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Name of the forwarding-path")</annox:annotate>\r
+            </xs:appinfo>\r
+          </xs:annotation>\r
+        </xs:element>
+        <xs:element name="cidr-mask" type="xs:string" minOccurs="0">
+          <xs:annotation>\r
+            <xs:appinfo>\r
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="CIDR-mask for aggregate route subnet")</annox:annotate>\r
+            </xs:appinfo>\r
+          </xs:annotation>\r
+        </xs:element>
+        <xs:element name="ip-version" type="xs:string" minOccurs="0">
+          <xs:annotation>\r
+            <xs:appinfo>\r
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Identifies is aggregate route is ipv4 or ipv6")</annox:annotate>\r
+            </xs:appinfo>\r
+          </xs:annotation>\r
+        </xs:element>
+        <xs:element name="resource-version" type="xs:string" minOccurs="0">
+          <xs:annotation>\r
+            <xs:appinfo>\r
+              <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Used for optimistic concurrency.  Must be empty on create, valid on update and delete.")</annox:annotate>\r
+            </xs:appinfo>\r
+          </xs:annotation>\r
+        </xs:element>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
+  <xs:element name="aggregate-routes">
+    <xs:complexType>
+      <xs:annotation>\r
+        <xs:appinfo>\r
+          <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Collection of aggregate routes.")</annox:annotate>\r
+        </xs:appinfo>\r
+      </xs:annotation>\r
+      <xs:sequence>
+        <xs:element ref="tns:aggregate-route" minOccurs="0" maxOccurs="5000"/>
+      </xs:sequence>
+    </xs:complexType>
+  </xs:element>
   <xs:element name="l3-network">
     <xs:complexType>
       <xs:annotation>
@@ -6321,6 +6379,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
         <xs:element ref="tns:subnets" minOccurs="0"/>
         <xs:element ref="tns:ctag-assignments" minOccurs="0"/>
         <xs:element ref="tns:segmentation-assignments" minOccurs="0"/>
+        <xs:element ref="tns:aggregate-routes" minOccurs="0"/>
         <xs:element ref="tns:relationship-list" minOccurs="0">
           <xs:annotation>
             <xs:appinfo>
index 815b241..82a4e27 100644 (file)
                        "prevent-delete": "NONE",
                        "default": "true",
                        "description":""
+               },
+               {
+                       "from": "aggregate-route",
+                       "to": "l3-network",
+                       "label": "org.onap.relationships.inventory.BelongsTo",
+                       "direction": "OUT",
+                       "multiplicity": "MANY2ONE",
+                       "contains-other-v": "!${direction}",
+                       "delete-other-v": "!${direction}",
+                       "SVC-INFRA": "NONE",
+                       "prevent-delete": "NONE",
+                       "default": "true",
+                       "description":""                
                }
                
        ]
index c9e3f1e..b010bd0 100644 (file)
                 <xml-element java-attribute="subnets" name="subnets" type="inventory.aai.onap.org.v15.Subnets"/>
                 <xml-element java-attribute="ctagAssignments" name="ctag-assignments" type="inventory.aai.onap.org.v15.CtagAssignments"/>
                 <xml-element java-attribute="segmentationAssignments" name="segmentation-assignments" type="inventory.aai.onap.org.v15.SegmentationAssignments"/>
+                <xml-element java-attribute="aggregateRoutes" name="aggregate-routes" type="inventory.aai.onap.org.v15.AggregateRoutes"/>
                 <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v15.RelationshipList">
                     <xml-properties>
                         <xml-property name="description" value="Relates to tenant (or is it a child of tenant), complex, service, vpn-binding"/>
                 <xml-property name="nameProps" value="contact-name,vendor-type"/>
                 <xml-property name="uriTemplate" value="/common/contacts/contact/{contact-name}"/>
             </xml-properties>
-               </java-type>            
+               </java-type>    
+               
+                               <java-type name="AggregateRoutes">
+            <xml-properties>
+                <xml-property name="description" value="Collection of aggregate routes."/>
+            </xml-properties>
+            <xml-root-element name="aggregate-routes"/>
+            <java-attributes>
+                <xml-element container-type="java.util.ArrayList" java-attribute="aggregateRoute" name="aggregate-route" type="inventory.aai.onap.org.v15.AggregateRoute"/>
+            </java-attributes>
+        </java-type>   
+        
+        <java-type name="AggregateRoute">
+            <xml-root-element name="aggregate-route"/>
+            <java-attributes>
+                <xml-element java-attribute="routeId" name="route-id" required="true" type="java.lang.String" xml-key="true">
+                    <xml-properties>
+                        <xml-property name="description" value="Unique id of the aggregate-route instance"/>
+                    </xml-properties>
+                </xml-element>                
+                <xml-element java-attribute="networkStartAddress" name="network-start-address" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Name of the forwarding-path"/>
+                    </xml-properties>
+                </xml-element>                
+                <xml-element java-attribute="cidrMask" name="cidr-mask" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="CIDR-mask for aggregate route subnet"/>
+                    </xml-properties>
+                </xml-element>                
+                <xml-element java-attribute="ipVersion" name="ip-version" required="true" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Identifies is aggregate route is ipv4 or ipv6"/>
+                    </xml-properties>
+                </xml-element>                
+                 <xml-element java-attribute="resourceVersion" name="resource-version" type="java.lang.String">
+                    <xml-properties>
+                        <xml-property name="description" value="Used for optimistic concurrency.  Must be empty on create, valid on update and delete."/>
+                    </xml-properties>
+                </xml-element>                         
+            </java-attributes>
+            <xml-properties>
+                <xml-property name="description" value="Aggregate route configs are used on the D2 IPE’s for the Voice services.  In 1902, SDNC will create aggregate-route objects and write them to A&amp;AI. " />
+                <xml-property name="uniqueProps" value="route-id"/>
+                <xml-property name="container" value="aggregate-routes"/> 
+                <xml-property name="dependentOn" value="l3-network"/>
+                <xml-property name="uriTemplate" value="/aggregate-routes/aggregate-route/{route-id}"/>
+            </xml-properties>
+               </java-type>
+                       
        </java-types>
 </xml-bindings>