summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKajur, Harish (vk250x) <vk250x@att.com>2018-11-01 11:00:28 -0400
committerKajur, Harish (vk250x) <vk250x@att.com>2018-11-01 14:15:36 -0400
commitfa0792d839d67142e916b12f083e9db067ab5f8d (patch)
treeb4c05a8b2a5cd9d7a633c4adb4153b366cb3bf1b
parentef398c570cbee1e1ff41aa62cfde5a41fc6d4a08 (diff)
Add vrf schema and edge rules
Issue-ID: AAI-1813 Change-Id: I1c0f53d9c75ea9d568bd8020680b75ef0a4bf3f6 Signed-off-by: Kajur, Harish (vk250x) <vk250x@att.com>
-rw-r--r--aai-schema/src/main/resources/onap/aai_schema/aai_schema_v15.xsd70
-rw-r--r--aai-schema/src/main/resources/onap/dbedgerules/v15/DbEdgeRules_v15.json77
-rw-r--r--aai-schema/src/main/resources/onap/oxm/v15/aai_oxm_v15.xml61
3 files changed, 208 insertions, 0 deletions
diff --git a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v15.xsd b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v15.xsd
index 56633754..d03fc97b 100644
--- a/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v15.xsd
+++ b/aai-schema/src/main/resources/onap/aai_schema/aai_schema_v15.xsd
@@ -7140,6 +7140,75 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
</xs:sequence>
</xs:complexType>
</xs:element>
+ <xs:element name="vrf">
+ <xs:complexType>
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="class">@org.onap.aai.annotations.Metadata(description="Definition of vrf",indexedProps="vrf-id",nameProps="vrf-name",dependentOn="pnf",container="vrfs",uriTemplate="/vrfs/vrf/{vrf-id}")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element name="vrf-id" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(isKey=true,description="VRF UUID.")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="vrf-name" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VRF Name")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="vrf-description" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="VRF Description")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="route-distinguisher" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="Route Distinguisher")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="vrf-type" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="The type of vrf (bridge-domain as an example)")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="vrf-address-family" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <annox:annotate target="field">@org.onap.aai.annotations.Metadata(description="IP address family (v6/v4/both)")</annox:annotate>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="resource-version" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:appinfo>
+ <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>
+ </xs:appinfo>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="tns:route-targets" minOccurs="0"/>
+ <xs:element ref="tns:relationship-list" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="vrfs">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="tns:vrf" minOccurs="0" maxOccurs="5000"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
<xs:element name="pnf">
<xs:complexType>
<xs:annotation>
@@ -7362,6 +7431,7 @@ xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
<xs:element ref="tns:relationship-list" minOccurs="0"/>
<xs:element ref="tns:p-interfaces" minOccurs="0"/>
<xs:element ref="tns:lag-interfaces" minOccurs="0"/>
+ <xs:element ref="tns:vrfs" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
diff --git a/aai-schema/src/main/resources/onap/dbedgerules/v15/DbEdgeRules_v15.json b/aai-schema/src/main/resources/onap/dbedgerules/v15/DbEdgeRules_v15.json
index fe258453..141990d2 100644
--- a/aai-schema/src/main/resources/onap/dbedgerules/v15/DbEdgeRules_v15.json
+++ b/aai-schema/src/main/resources/onap/dbedgerules/v15/DbEdgeRules_v15.json
@@ -3014,6 +3014,83 @@
"prevent-delete": "NONE",
"default": "true",
"description":""
+ },
+ {
+ "from": "vrf",
+ "to": "pnf",
+ "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":"A vrf belongs to a pnf."
+ },
+ {
+ "from": "vrf",
+ "to": "vpn-binding",
+ "label": "org.onap.relationships.inventory.AppliesTo",
+ "direction": "OUT",
+ "multiplicity": "MANY2ONE",
+ "contains-other-v": "NONE",
+ "delete-other-v": "NONE",
+ "SVC-INFRA": "NONE",
+ "prevent-delete": "NONE",
+ "default": "true",
+ "description":"A vrf uses a vpn-binding."
+ },
+ {
+ "from": "vrf",
+ "to": "l3-network",
+ "label": "org.onap.relationships.inventory.Uses",
+ "direction": "OUT",
+ "multiplicity": "ONE2MANY",
+ "contains-other-v": "NONE",
+ "delete-other-v": "NONE",
+ "SVC-INFRA": "NONE",
+ "prevent-delete": "NONE",
+ "default": "true",
+ "description":"A vrf uses many l3-networks"
+ },
+ {
+ "from": "configuration",
+ "to": "vrf",
+ "label": "org.onap.relationships.inventory.Uses",
+ "direction": "OUT",
+ "multiplicity": "ONE2MANY",
+ "contains-other-v": "NONE",
+ "delete-other-v": "NONE",
+ "prevent-delete": "NONE",
+ "default": "true",
+ "description":"A Configuration uses VRFs"
+ },
+ {
+ "from": "vrf",
+ "to": "l-interface",
+ "label": "org.onap.relationships.inventory.Uses",
+ "direction": "OUT",
+ "multiplicity": "ONE2MANY",
+ "contains-other-v": "NONE",
+ "delete-other-v": "NONE",
+ "SVC-INFRA": "NONE",
+ "prevent-delete": "NONE",
+ "default": "true",
+ "description":""
+ },
+ {
+ "from": "route-target",
+ "to": "vrf",
+ "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":""
}
]
diff --git a/aai-schema/src/main/resources/onap/oxm/v15/aai_oxm_v15.xml b/aai-schema/src/main/resources/onap/oxm/v15/aai_oxm_v15.xml
index b81a7e44..8d54c0ba 100644
--- a/aai-schema/src/main/resources/onap/oxm/v15/aai_oxm_v15.xml
+++ b/aai-schema/src/main/resources/onap/oxm/v15/aai_oxm_v15.xml
@@ -2330,7 +2330,67 @@
<xml-property name="uriTemplate" value="/lag-interfaces/lag-interface/{interface-name}"/>
</xml-properties>
</java-type>
+
+ <java-type name="Vrfs">
+ <xml-root-element name="vrfs"/>
+ <java-attributes>
+ <xml-element container-type="java.util.ArrayList" java-attribute="vrf" name="vrf" type="inventory.aai.onap.org.v15.Vrf"/>
+ </java-attributes>
+ <xml-properties>
+ </xml-properties>
+ </java-type>
+ <java-type name="Vrf">
+ <xml-root-element name="vrf"/>
+ <java-attributes>
+ <xml-element java-attribute="vrfId" name="vrf-id" required="true" type="java.lang.String" xml-key="true">
+ <xml-properties>
+ <xml-property name="description" value="VRF UUID."/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="vrfName" name="vrf-name" required="true" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="VRF Name"/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="vrfDescription" name="vrf-description" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="VRF Description"/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="routeDistinguisher" name="route-distinguisher" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="Route Distinguisher"/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="vrfType" name="vrf-type" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="The type of vrf (bridge-domain as an example)"/>
+ </xml-properties>
+ </xml-element>
+ <xml-element java-attribute="vrfAddressFamily" name="vrf-address-family" type="java.lang.String">
+ <xml-properties>
+ <xml-property name="description" value="IP address family (v6/v4/both)"/>
+ </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>
+ <xml-element java-attribute="routeTargets" name="route-targets" type="inventory.aai.onap.org.v15.RouteTargets"/>
+ <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v15.RelationshipList"/>
+ </java-attributes>
+ <xml-properties>
+ <xml-property name="description" value="Definition of vrf"/>
+ <xml-property name="indexedProps" value="vrf-id"/>
+ <xml-property name="nameProps" value="vrf-name"/>
+ <xml-property name="dependentOn" value="pnf"/>
+ <xml-property name="container" value="vrfs"/>
+ <xml-property name="uriTemplate" value="/vrfs/vrf/{vrf-id}"/>
+ </xml-properties>
+ </java-type>
+
<java-type name="OamNetworks">
<xml-properties>
<xml-property name="description" value="Collection of OAM networks, to be deprecated shortly. Do not use for new purposes. "/>
@@ -5222,6 +5282,7 @@
<xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v15.RelationshipList"/>
<xml-element java-attribute="pInterfaces" name="p-interfaces" type="inventory.aai.onap.org.v15.PInterfaces"/>
<xml-element java-attribute="lagInterfaces" name="lag-interfaces" type="inventory.aai.onap.org.v15.LagInterfaces"/>
+ <xml-element java-attribute="vrfs" name="vrfs" type="inventory.aai.onap.org.v15.Vrfs"/>
</java-attributes>
<xml-properties>
<xml-property name="description" value="PNF represents a physical network function. typically equipment used in the D1 world. in 1607, this will be populated by SDN-C to represent a premises router that a uCPE connects to. But this can be used to represent any physical device that is not an AIC node or uCPE."/>