diff options
7 files changed, 390 insertions, 72 deletions
diff --git a/aai-annotations/src/test/java/org/openecomp/aai/annotations/AnnotationsTest.java b/aai-annotations/src/test/java/org/openecomp/aai/annotations/AnnotationsTest.java index 9efc38a6..848d8b08 100644 --- a/aai-annotations/src/test/java/org/openecomp/aai/annotations/AnnotationsTest.java +++ b/aai-annotations/src/test/java/org/openecomp/aai/annotations/AnnotationsTest.java @@ -1,3 +1,22 @@ +/*- + * ============LICENSE_START======================================================= + * org.openecomp.aai + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ package org.openecomp.aai.annotations; import org.openecomp.aai.annotations.Metadata; diff --git a/aai-core/src/main/java/org/openecomp/aai/util/GenerateXsd.java b/aai-core/src/main/java/org/openecomp/aai/util/GenerateXsd.java index 99a06f49..b3c78410 100644 --- a/aai-core/src/main/java/org/openecomp/aai/util/GenerateXsd.java +++ b/aai-core/src/main/java/org/openecomp/aai/util/GenerateXsd.java @@ -945,6 +945,7 @@ public class GenerateXsd { case "Business": case "LicenseManagement": case "CloudInfrastructure": + case "ExternalSystem": break; default: return null; diff --git a/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v11.json b/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v11.json index 7b973150..8f44ebc4 100644 --- a/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v11.json +++ b/aai-core/src/main/resources/dbedgerules/DbEdgeRules_v11.json @@ -12,17 +12,6 @@ "prevent-delete": "!${direction}" }, { - "from" : "auth-info-item", - "to" : "tenant", - "label" : "defaultTenant", - "direction" : "OUT", - "multiplicity" : "One2One", - "isParent" : "false", - "usesResource" : "false", - "hasDelTarget" : "false", - "SVC-INFRA" : "false" - }, - { "from": "generic-vnf", "to": "license-key-resource", "label": "uses", @@ -45,6 +34,61 @@ "prevent-delete": "!${direction}" }, { + "from": "esr-ems", + "to": "esr-system-info", + "label": "has", + "direction": "OUT", + "multiplicity": "One2Many", + "contains-other-v": "${direction}", + "delete-other-v": "${direction}", + "SVC-INFRA": "NONE", + "prevent-delete": "NONE" + }, + { + "from": "esr-vnfm", + "to": "esr-system-info", + "label": "has", + "direction": "OUT", + "multiplicity": "One2One", + "contains-other-v": "${direction}", + "delete-other-v": "${direction}", + "SVC-INFRA": "NONE", + "prevent-delete": "NONE" + }, + { + "from": "esr-thirdparty-sdnc", + "to": "esr-system-info", + "label": "has", + "direction": "OUT", + "multiplicity": "One2One", + "contains-other-v": "${direction}", + "delete-other-v": "${direction}", + "SVC-INFRA": "NONE", + "prevent-delete": "NONE" + }, + { + "from": "esr-thirdparty-sdnc", + "to": "pnf", + "label": "has", + "direction": "OUT", + "multiplicity": "One2Many", + "contains-other-v": "NONE", + "delete-other-v": "NONE", + "SVC-INFRA": "NONE", + "prevent-delete": "NONE" + }, + { + "from": "cloud-region", + "to": "esr-system-info", + "label": "has", + "direction": "OUT", + "multiplicity": "One2Many", + "contains-other-v": "${direction}", + "delete-other-v": "${direction}", + "SVC-INFRA": "NONE", + "prevent-delete": "NONE" + }, + { "from": "cloud-region", "to": "complex", "label": "locatedIn", diff --git a/aai-core/src/test/java/org/openecomp/aai/query/builder/SimplePathTest.java b/aai-core/src/test/java/org/openecomp/aai/query/builder/SimplePathTest.java index e6e510c6..072ba694 100644 --- a/aai-core/src/test/java/org/openecomp/aai/query/builder/SimplePathTest.java +++ b/aai-core/src/test/java/org/openecomp/aai/query/builder/SimplePathTest.java @@ -1,3 +1,22 @@ +/*- + * ============LICENSE_START======================================================= + * org.openecomp.aai + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ package org.openecomp.aai.query.builder; import static org.junit.Assert.*; diff --git a/aai-core/src/test/java/org/openecomp/aai/query/builder/UntilTest.java b/aai-core/src/test/java/org/openecomp/aai/query/builder/UntilTest.java index 9da2c0e0..fa434b44 100644 --- a/aai-core/src/test/java/org/openecomp/aai/query/builder/UntilTest.java +++ b/aai-core/src/test/java/org/openecomp/aai/query/builder/UntilTest.java @@ -1,3 +1,22 @@ +/*- + * ============LICENSE_START======================================================= + * org.openecomp.aai + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ package org.openecomp.aai.query.builder; import static org.junit.Assert.assertTrue; diff --git a/aai-schema/src/main/resources/oxm/aai_oxm_v11.xml b/aai-schema/src/main/resources/oxm/aai_oxm_v11.xml index 0434bd0f..2e309ae2 100644 --- a/aai-schema/src/main/resources/oxm/aai_oxm_v11.xml +++ b/aai-schema/src/main/resources/oxm/aai_oxm_v11.xml @@ -30,6 +30,7 @@ <xml-element java-attribute="search" name="search" type="inventory.aai.onap.org.v11.Search" /> <xml-element java-attribute="actions" name="actions" type="inventory.aai.onap.org.v11.Actions" /> <xml-element java-attribute="cloudInfrastructure" name="cloud-infrastructure" type="inventory.aai.onap.org.v11.CloudInfrastructure" /> + <xml-element java-attribute="externalSystem" name="external-system" type="inventory.aai.onap.org.v11.ExternalSystem" /> <xml-element java-attribute="business" name="business" type="inventory.aai.onap.org.v11.Business" /> <xml-element java-attribute="serviceDesignAndCreation" name="service-design-and-creation" type="inventory.aai.onap.org.v11.ServiceDesignAndCreation" /> <xml-element java-attribute="network" name="network" type="inventory.aai.onap.org.v11.Network" /> @@ -225,6 +226,262 @@ </java-attributes> </java-type> + <java-type name="ExternalSystem"> + <xml-properties> + <xml-property name="description" value="Namespace for external system." /> + </xml-properties> + <xml-root-element name="external-system" /> + <java-attributes> + <xml-element java-attribute="esrEmsList" name="esr-ems-list" type="inventory.aai.onap.org.v11.EsrEmsList" /> + <xml-element java-attribute="esrVnfmList" name="esr-vnfm-list" type="inventory.aai.onap.org.v11.EsrVnfmList" /> + <xml-element java-attribute="esrThirdpartySdncList" name="esr-thirdparty-sdnc-list" type="inventory.aai.onap.org.v11.EsrThirdpartySdncList" /> + </java-attributes> + </java-type> + + <java-type name="EsrEmsList"> + <xml-root-element name="esr-ems-list" /> + <java-attributes> + <xml-element container-type="java.util.ArrayList" java-attribute="esrEms" name="esr-ems" type="inventory.aai.onap.org.v11.EsrEms" /> + </java-attributes> + <xml-properties> + <xml-property name="maximumDepth" value="0" /> + </xml-properties> + </java-type> + + <java-type name="EsrEms"> + <xml-root-element name="esr-ems" /> + <java-attributes> + <xml-element java-attribute="emsId" name="ems-id" required="true" type="java.lang.String" xml-key="true"> + <xml-properties> + <xml-property name="description" value="Unique ID of EMS." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="passive" name="passive" type="java.lang.Boolean"> + <xml-properties> + <xml-property name="description" value="ftp passive mode or not." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="remotepath" name="remote-path" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="resource or performance data file path." /> + </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="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" /> + <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" /> + </java-attributes> + <xml-properties> + <xml-property name="description" value="Persist EMS address information used by EMS driver." /> + <xml-property name="indexedProps" value="ems-id" /> + <xml-property name="searchable" value="ems-id" /> + <xml-property name="container" value="esr-ems-list" /> + <xml-property name="namespace" value="external-system" /> + </xml-properties> + </java-type> + + <java-type name="EsrVnfmList"> + <xml-root-element name="esr-vnfm-list" /> + <java-attributes> + <xml-element container-type="java.util.ArrayList" java-attribute="esrVnfm" name="esr-vnfm" type="inventory.aai.onap.org.v11.EsrVnfm" /> + </java-attributes> + <xml-properties> + <xml-property name="maximumDepth" value="0" /> + </xml-properties> + </java-type> + + <java-type name="EsrVnfm"> + <xml-root-element name="esr-vnfm" /> + <java-attributes> + <xml-element java-attribute="vnfmId" name="vnfm-id" required="true" type="java.lang.String" xml-key="true"> + <xml-properties> + <xml-property name="description" value="Unique ID of VNFM." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="vimId" name="vim-id" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="indecate the VIM to deploy VNF." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="certificateUrl" name="certificate-url" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="certificate url of VNFM." /> + </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="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" /> + <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" /> + </java-attributes> + <xml-properties> + <xml-property name="description" value="Persist VNFM address information used by VF-C." /> + <xml-property name="indexedProps" value="vnfm-id" /> + <xml-property name="searchable" value="vnfm-id" /> + <xml-property name="container" value="esr-vnfm-list" /> + <xml-property name="namespace" value="external-system" /> + </xml-properties> + </java-type> + + <java-type name="EsrThirdpartySdncList"> + <xml-root-element name="esr-thirdparty-sdnc-list" /> + <java-attributes> + <xml-element container-type="java.util.ArrayList" java-attribute="esrThirdpartySdnc" name="esr-thirdparty-sdnc" type="inventory.aai.onap.org.v11.EsrThirdpartySdnc" /> + </java-attributes> + <xml-properties> + <xml-property name="maximumDepth" value="0" /> + </xml-properties> + </java-type> + + <java-type name="EsrThirdpartySdnc"> + <xml-root-element name="esr-thirdparty-sdnc" /> + <java-attributes> + <xml-element java-attribute="thirdpartySdncId" name="thirdparty-sdnc-id" required="true" type="java.lang.String" xml-key="true"> + <xml-properties> + <xml-property name="description" value="Unique ID of SDNC." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="location" name="location" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="used for DC type to indicate the location of SDNC, such as Core or Edge." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="productName" name="product-name" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="password used to access SDNC server." /> + </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="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" /> + <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" /> + </java-attributes> + <xml-properties> + <xml-property name="description" value="Persist SDNC address information used by ONAP SDNC." /> + <xml-property name="indexedProps" value="sdnc-id" /> + <xml-property name="searchable" value="sdnc-id" /> + <xml-property name="container" value="esr-thirdparty-sdnc-list" /> + <xml-property name="namespace" value="external-system" /> + </xml-properties> + </java-type> + + <java-type name="EsrSystemInfoList"> + <xml-root-element name="esr-system-info-list" /> + <java-attributes> + <xml-element container-type="java.util.ArrayList" java-attribute="esrSystemInfo" name="esr-system-info" type="inventory.aai.onap.org.v11.EsrSystemInfo" /> + </java-attributes> + <xml-properties> + <xml-property name="maximumDepth" value="0" /> + </xml-properties> + </java-type> + + <java-type name="EsrSystemInfo"> + <xml-root-element name="esr-system-info" /> + <java-attributes> + <xml-element java-attribute="esrSystemInfoId" name="esr-system-info-id" required="true" type="java.lang.String" xml-key="true"> + <xml-properties> + <xml-property name="description" value="Unique ID of esr system info." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="systemName" name="system-name" required="true" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="name of external system." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="type" name="type" required="true" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="type of external systems." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="vendor" name="vendor" required="true" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="vendor of external systems." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="version" name="version" required="true" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="version of external systems." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="serviceUrl" name="service-url" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="url used to access external systems." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="userName" name="user-name" required="true" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="username used to access external systems." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="password" name="password" required="true" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="password used to access external systems." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="systemType" name="system-type" required="true" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="it could be vim/vnfm/thirdparty-sdnc/ems-resource/ems-performance/ems-alarm." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="protocal" name="protocal" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="protocal of third party SDNC, for example netconf/snmp." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="sslCacert" name="ssl-cacert" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="ca file content if enabled ssl on auth-url." /> + </xml-properties> + </xml-element> + <xml-element default-value="false" java-attribute="sslInsecure" name="ssl-insecure" type="java.lang.Boolean"> + <xml-properties> + <xml-property name="description" value="Whether to verify VIM's certificate." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="ipAddress" name="ip-address" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="service IP of ftp server." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="port" name="port" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="service port of ftp server." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="cloudDomain" name="cloud-domain" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="domain info for authentication." /> + </xml-properties> + </xml-element> + <xml-element java-attribute="defaultTenant" name="default-tenant" type="java.lang.String"> + <xml-properties> + <xml-property name="description" value="default tenant of VIM." /> + </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="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" /> + </java-attributes> + <xml-properties> + <xml-property name="description" value="Persist common address information of external systems." /> + <xml-property name="indexedProps" value="esr-system-info-id,system-name,system-type" /> + <xml-property name="searchable" value="esr-system-info-id,system-name,system-type" /> + <xml-property name="container" value="esr-system-infos" /> + <xml-property name="namespace" value="external-system" /> + </xml-properties> + </java-type> + <java-type name="CloudInfrastructure"> <xml-properties> <xml-property name="description" value="Namespace for cloud infrastructure." /> @@ -323,7 +580,7 @@ <xml-element java-attribute="oamNetworks" name="oam-networks" type="inventory.aai.onap.org.v11.OamNetworks" /> <xml-element java-attribute="availabilityZones" name="availability-zones" type="inventory.aai.onap.org.v11.AvailabilityZones" /> <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" /> - <xml-element java-attribute="authInfoItems" name="auth-info-items" type="inventory.aai.onap.org.v11.AuthInfoItems" /> + <xml-element java-attribute="esrSystemInfoList" name="esr-system-info-list" type="inventory.aai.onap.org.v11.EsrSystemInfoList" /> </java-attributes> <xml-properties> <xml-property name="description" value="cloud-region designates an installation of a cloud cluster or region or instantiation." /> @@ -396,66 +653,6 @@ <xml-property name="container" value="volume-groups" /> </xml-properties> </java-type> - - <java-type name="AuthInfoItems"> - <xml-properties> - <xml-property name="description" value="Collection of persistent auth information to access to VIM." /> - </xml-properties> - <xml-root-element name="auth-info-items" /> - <java-attributes> - <xml-element container-type="java.util.ArrayList" java-attribute="authInfoItem" name="auth-info-item" type="inventory.aai.onap.org.v11.AuthInfoItem" /> - </java-attributes> - </java-type> - - <java-type name="AuthInfoItem"> - <xml-root-element name="auth-info-item" /> - <java-attributes> - <xml-element java-attribute="authInfoItemId" name="auth-info-item-id" required="true" type="java.lang.String" xml-key="true"> - <xml-properties> - <xml-property name="description" value="Unique ID of auth-info-item." /> - </xml-properties> - </xml-element> - <xml-element java-attribute="cloudDomain" name="cloud-domain" required="true" type="java.lang.String"> - <xml-properties> - <xml-property name="description" value="domain info for authentication." /> - </xml-properties> - </xml-element> - <xml-element java-attribute="userName" name="username" required="true" type="java.lang.String"> - <xml-properties> - <xml-property name="description" value="user name of auth infomation to access VIM." /> - </xml-properties> - </xml-element> - <xml-element java-attribute="password" name="password" required="true" type="java.lang.String"> - <xml-properties> - <xml-property name="description" value="password of auth infomation to access VIM." /> - </xml-properties> - </xml-element> - <xml-element java-attribute="authUrl" name="auth-url" required="true" type="java.lang.String"> - <xml-properties> - <xml-property name="description" value="authentication url of the cloud." /> - </xml-properties> - </xml-element> - <xml-element java-attribute="sslCacert" name="ssl-cacert" required="false" type="java.lang.String"> - <xml-properties> - <xml-property name="description" value="ca file content if enabled ssl on auth-url." /> - </xml-properties> - </xml-element> - <xml-element default-value="false" java-attribute="sslInsecure" name="ssl-insecure" required="false" type="java.lang.Boolean"> - <xml-properties> - <xml-property name="description" value="Whether to verify VIM's certificate." /> - </xml-properties> - </xml-element> - <xml-element java-attribute="relationshipList" name="relationship-list" type="inventory.aai.onap.org.v11.RelationshipList" /> - </java-attributes> - <xml-properties> - <xml-property name="description" value="Persistent auth info." /> - <xml-property name="indexedProps" value="auth-info-item-id,username,auth-url" /> - <xml-property name="searchable" value="auth-info-item-id,username,auth-url" /> - <xml-property name="dependentOn" value="cloud-region" /> - <xml-property name="container" value="auth-info-items" /> - </xml-properties> - </java-type> - <java-type name="RelationshipList"> <xml-root-element name="relationship-list" /> diff --git a/aai-utils/src/test/java/org/onap/aaiutils/oxm/OxmModelLoaderTest.java b/aai-utils/src/test/java/org/onap/aaiutils/oxm/OxmModelLoaderTest.java index 81e50729..190d8ee0 100644 --- a/aai-utils/src/test/java/org/onap/aaiutils/oxm/OxmModelLoaderTest.java +++ b/aai-utils/src/test/java/org/onap/aaiutils/oxm/OxmModelLoaderTest.java @@ -1,3 +1,22 @@ +/*- + * ============LICENSE_START======================================================= + * org.openecomp.aai + * ================================================================================ + * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved. + * ================================================================================ + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + * ============LICENSE_END========================================================= + */ package org.onap.aaiutils.oxm; import org.junit.Test; |