summaryrefslogtreecommitdiffstats
path: root/asdcApi
diff options
context:
space:
mode:
Diffstat (limited to 'asdcApi')
-rw-r--r--asdcApi/README.md3
-rwxr-xr-xasdcApi/features/pom.xml138
-rw-r--r--asdcApi/features/src/main/resources/features.xml41
-rwxr-xr-xasdcApi/installer/pom.xml140
-rw-r--r--asdcApi/installer/src/assembly/assemble_installer_zip.xml59
-rw-r--r--asdcApi/installer/src/assembly/assemble_mvnrepo_zip.xml55
-rw-r--r--asdcApi/installer/src/main/resources/scripts/install-feature.sh40
-rwxr-xr-xasdcApi/model/pom.xml81
-rwxr-xr-xasdcApi/model/src/main/yang/ASDC-API.yang63
-rwxr-xr-xasdcApi/model/src/main/yang/asdc-api-common.yang53
-rwxr-xr-xasdcApi/model/src/main/yang/asdc-license-model.yang369
-rwxr-xr-xasdcApi/pom.xml63
-rwxr-xr-xasdcApi/provider/pom.xml129
-rw-r--r--asdcApi/provider/src/main/java/org/opendaylight/yang/gen/v1/org/openecomp/sdnc/asdcapi/provider/impl/rev140523/AsdcApiProviderModule.java57
-rw-r--r--asdcApi/provider/src/main/java/org/opendaylight/yang/gen/v1/org/openecomp/sdnc/asdcapi/provider/impl/rev140523/AsdcApiProviderModuleFactory.java34
-rw-r--r--asdcApi/provider/src/main/java/org/openecomp/sdnc/asdcapi/AsdcApiProvider.java413
-rw-r--r--asdcApi/provider/src/main/java/org/openecomp/sdnc/asdcapi/AsdcApiSliClient.java111
-rw-r--r--asdcApi/provider/src/main/java/org/openecomp/sdnc/asdcapi/AsdcApiUtil.java48
-rw-r--r--asdcApi/provider/src/main/resources/initial/asdcApi-provider.xml72
-rwxr-xr-xasdcApi/provider/src/main/yang/asdcApi-provider-impl.yang61
20 files changed, 3 insertions, 2027 deletions
diff --git a/asdcApi/README.md b/asdcApi/README.md
new file mode 100644
index 00000000..acef0674
--- /dev/null
+++ b/asdcApi/README.md
@@ -0,0 +1,3 @@
+ASDCAPI MOVED TO CCSDK!
+
+The code for asdcApi moved to the ccsdk/sli/northbound repository
diff --git a/asdcApi/features/pom.xml b/asdcApi/features/pom.xml
deleted file mode 100755
index f83f3791..00000000
--- a/asdcApi/features/pom.xml
+++ /dev/null
@@ -1,138 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <artifactId>asdcApi</artifactId>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <version>1.1.2-SNAPSHOT</version>
- </parent>
- <artifactId>asdcApi-features</artifactId>
-
- <packaging>jar</packaging>
-
- <dependencies>
- <dependency>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <artifactId>asdcApi-model</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <artifactId>asdcApi-provider</artifactId>
- <version>${project.version}</version>
- <classifier>config</classifier>
- <type>xml</type>
- </dependency>
- <dependency>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <artifactId>asdcApi-provider</artifactId>
- <version>${project.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.opendaylight.mdsal</groupId>
- <artifactId>features-mdsal</artifactId>
- <version>${odl.mdsal.features.version}</version>
- <classifier>features</classifier>
- <type>xml</type>
-
-
- <scope>runtime</scope>
- </dependency>
-
-
-
- <!-- dependency for opendaylight-karaf-empty for use by testing -->
- <dependency>
- <groupId>org.opendaylight.controller</groupId>
- <artifactId>opendaylight-karaf-empty</artifactId>
- <version>${odl.karaf.empty.distro.version}</version>
- <type>zip</type>
- </dependency>
-
-
- <dependency>
- <!-- Required for launching the feature tests-->
- <groupId>org.opendaylight.odlparent</groupId>
- <artifactId>features-test</artifactId>
- <scope>test</scope>
- <version>${odl.commons.opendaylight.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.opendaylight.yangtools</groupId>
- <artifactId>features-yangtools</artifactId>
- <version>${odl.yangtools.version}</version>
- <classifier>features</classifier>
- <type>xml</type>
- <scope>runtime</scope>
- </dependency>
- </dependencies>
-
- <build>
- <resources>
- <resource>
- <filtering>true</filtering>
- <directory>src/main/resources</directory>
- </resource>
- </resources>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-resources-plugin</artifactId>
- <executions>
- <execution>
- <id>filter</id>
- <goals>
- <goal>resources</goal>
- </goals>
- <phase>generate-resources</phase>
- </execution>
- </executions>
- </plugin>
- <!-- launches the feature test, which validates that your karaf feature can
- be installed inside of a karaf container. It doesn't validate that your
- functionality works correctly, just that you have all of the dependent
- bundles defined correctly.
- <plugin>
-
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-surefire-plugin</artifactId>
- <version>2.16</version>
- <configuration>
- <systemPropertyVariables>
- <karaf.distro.groupId>org.opendaylight.controller</karaf.distro.groupId>
- <karaf.distro.artifactId>opendaylight-karaf-empty</karaf.distro.artifactId>
- <karaf.distro.version>${odl.karaf.empty.distro.version}</karaf.distro.version>
- </systemPropertyVariables>
- <dependenciesToScan>
- <dependency>org.opendaylight.yangtools:features-test</dependency>
- </dependenciesToScan>
- </configuration>
- </plugin>
- -->
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>build-helper-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>attach-artifacts</id>
- <goals>
- <goal>attach-artifact</goal>
- </goals>
- <phase>package</phase>
- <configuration>
- <artifacts>
- <artifact>
- <file>${project.build.directory}/classes/${features.file}</file>
- <type>xml</type>
- <classifier>features</classifier>
- </artifact>
- </artifacts>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-</project>
diff --git a/asdcApi/features/src/main/resources/features.xml b/asdcApi/features/src/main/resources/features.xml
deleted file mode 100644
index f25f6492..00000000
--- a/asdcApi/features/src/main/resources/features.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ============LICENSE_START=======================================================
- openECOMP : SDN-C
- ================================================================================
- 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=========================================================
- -->
-
-
-<features name="sdnc-asdcApi-${project.version}" xmlns="http://karaf.apache.org/xmlns/features/v1.2.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://karaf.apache.org/xmlns/features/v1.2.0 http://karaf.apache.org/xmlns/features/v1.2.0">
-
- <repository>mvn:org.opendaylight.mdsal/features-mdsal/${odl.mdsal.features.version}/xml/features</repository>
-
- <feature name='sdnc-asdcApi' description="sdnc-asdcApi" version='${project.version}'>
- <!-- Most applications will have a dependency on the ODL MD-SAL Broker -->
- <feature version="${odl.mdsal.version}">odl-mdsal-broker</feature>
-
- <bundle>mvn:org.openecomp.sdnc.northbound/asdcApi-model/${project.version}</bundle>
- <bundle>mvn:org.openecomp.sdnc.northbound/asdcApi-provider/${project.version}</bundle>
-
- <feature version="${sdnctl.sli.version}">sdnc-sli</feature>
- <configfile finalname="etc/opendaylight/karaf/200-asdcApi-provider.xml">mvn:org.openecomp.sdnc.northbound/asdcApi-provider/${project.version}/xml/config</configfile>
- </feature>
-
-</features>
diff --git a/asdcApi/installer/pom.xml b/asdcApi/installer/pom.xml
deleted file mode 100755
index a62ba1f7..00000000
--- a/asdcApi/installer/pom.xml
+++ /dev/null
@@ -1,140 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <artifactId>asdcApi</artifactId>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <version>1.1.2-SNAPSHOT</version>
- </parent>
- <artifactId>asdcApi-installer</artifactId>
- <name>asdcApi - Karaf Installer</name>
- <packaging>pom</packaging>
-
- <properties>
- <application.name>sdnc-asdcApi</application.name>
- <features.boot>sdnc-asdcApi</features.boot>
- <features.repositories>mvn:org.openecomp.sdnc.northbound/asdcApi-features/${project.version}/xml/features</features.repositories>
- <include.transitive.dependencies>false</include.transitive.dependencies>
- </properties>
-
- <dependencies>
-
- <dependency>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <artifactId>asdcApi-features</artifactId>
- <version>${project.version}</version>
- <classifier>features</classifier>
- <type>xml</type>
- <exclusions>
- <exclusion>
- <groupId>*</groupId>
- <artifactId>*</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
-
- <dependency>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <artifactId>asdcApi-provider</artifactId>
- <version>${project.version}</version>
- </dependency>
-
-
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <version>2.6</version>
- <executions>
- <execution>
- <id>maven-repo-zip</id>
- <goals>
- <goal>single</goal>
- </goals>
- <phase>package</phase>
- <configuration>
- <attach>false</attach>
- <finalName>stage/${application.name}-${project.version}</finalName>
- <descriptors>
- <descriptor>src/assembly/assemble_mvnrepo_zip.xml</descriptor>
- </descriptors>
- <appendAssemblyId>false</appendAssemblyId>
- </configuration>
- </execution>
- <execution>
- <id>installer-zip</id>
- <goals>
- <goal>single</goal>
- </goals>
- <phase>package</phase>
- <configuration>
- <attach>true</attach>
- <finalName>${application.name}-${project.version}-installer</finalName>
- <descriptors>
- <descriptor>src/assembly/assemble_installer_zip.xml</descriptor>
- </descriptors>
- <appendAssemblyId>false</appendAssemblyId>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-dependency-plugin</artifactId>
- <executions>
- <execution>
- <id>copy-dependencies</id>
- <goals>
- <goal>copy-dependencies</goal>
- </goals>
- <phase>prepare-package</phase>
- <configuration>
- <transitive>false</transitive>
- <outputDirectory>${project.build.directory}/assembly/system</outputDirectory>
- <overWriteReleases>false</overWriteReleases>
- <overWriteSnapshots>true</overWriteSnapshots>
- <overWriteIfNewer>true</overWriteIfNewer>
- <useRepositoryLayout>true</useRepositoryLayout>
- <addParentPoms>false</addParentPoms>
- <copyPom>false</copyPom>
- <includeGroupIds>org.openecomp.sdnc</includeGroupIds>
- <excludeArtifactIds>sli-common,sli-provider,dblib-provider</excludeArtifactIds>
- <scope>provided</scope>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <artifactId>maven-resources-plugin</artifactId>
- <version>2.6</version>
- <executions>
- <execution>
- <id>copy-version</id>
- <goals>
- <goal>copy-resources</goal>
- </goals><!-- here the phase you need -->
- <phase>validate</phase>
- <configuration>
- <outputDirectory>${basedir}/target/stage</outputDirectory>
- <resources>
- <resource>
- <directory>src/main/resources/scripts</directory>
- <includes>
- <include>install-feature.sh</include>
- </includes>
- <filtering>true</filtering>
- </resource>
- </resources>
- </configuration>
- </execution>
-
- </executions>
- </plugin>
-
- </plugins>
- </build>
-
-</project>
diff --git a/asdcApi/installer/src/assembly/assemble_installer_zip.xml b/asdcApi/installer/src/assembly/assemble_installer_zip.xml
deleted file mode 100644
index 10b53b93..00000000
--- a/asdcApi/installer/src/assembly/assemble_installer_zip.xml
+++ /dev/null
@@ -1,59 +0,0 @@
-<!--
- ============LICENSE_START=======================================================
- openECOMP : SDN-C
- ================================================================================
- 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=========================================================
- -->
-
-<!-- Defines how we build the .zip file which is our distribution. -->
-
-<assembly
- xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
- <id>installer_zip</id>
- <formats>
- <format>zip</format>
- </formats>
-
- <!-- we want "system" and related files right at the root level
- as this file is suppose to be unzip on top of a karaf
- distro. -->
- <includeBaseDirectory>false</includeBaseDirectory>
-
- <fileSets>
- <fileSet>
- <directory>target/stage/</directory>
- <outputDirectory>${application.name}</outputDirectory>
- <fileMode>755</fileMode>
- <includes>
- <include>*.sh</include>
- </includes>
- </fileSet>
- <fileSet>
- <directory>target/stage/</directory>
- <outputDirectory>${application.name}</outputDirectory>
- <fileMode>644</fileMode>
- <excludes>
- <exclude>*.sh</exclude>
- </excludes>
- </fileSet>
- </fileSets>
-
-
-
-</assembly>
diff --git a/asdcApi/installer/src/assembly/assemble_mvnrepo_zip.xml b/asdcApi/installer/src/assembly/assemble_mvnrepo_zip.xml
deleted file mode 100644
index f1eee4ad..00000000
--- a/asdcApi/installer/src/assembly/assemble_mvnrepo_zip.xml
+++ /dev/null
@@ -1,55 +0,0 @@
-<!--
- ============LICENSE_START=======================================================
- openECOMP : SDN-C
- ================================================================================
- 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=========================================================
- -->
-
-<!-- Defines how we build the .zip file which is our distribution. -->
-
-<assembly
- xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
- <id>mvnrepo_zip</id>
- <formats>
- <format>zip</format>
- </formats>
-
- <!-- we want "system" and related files right at the root level
- as this file is suppose to be unzip on top of a karaf
- distro. -->
- <includeBaseDirectory>false</includeBaseDirectory>
-
- <fileSets>
- <fileSet>
- <directory>target/assembly/</directory>
- <outputDirectory>.</outputDirectory>
- <excludes>
- </excludes>
- </fileSet>
- </fileSets>
-
- <files>
- <file>
- <source>../provider/src/main/resources/initial/${feature-name}-provider.xml</source>
- <destName>./etc/opendaylight/karaf/200-${feature-name}-provider.xml</destName>
- </file>
-
- </files>
-
-</assembly>
diff --git a/asdcApi/installer/src/main/resources/scripts/install-feature.sh b/asdcApi/installer/src/main/resources/scripts/install-feature.sh
deleted file mode 100644
index 6e8620e1..00000000
--- a/asdcApi/installer/src/main/resources/scripts/install-feature.sh
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-
-###
-# ============LICENSE_START=======================================================
-# openECOMP : SDN-C
-# ================================================================================
-# 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=========================================================
-###
-
-ODL_HOME=${ODL_HOME:-/opt/opendaylight/current}
-ODL_KARAF_CLIENT=${ODL_KARAF_CLIENT:-${ODL_HOME}/bin/client}
-ODL_KARAF_CLIENT_OPTS=${ODL_KARAF_CLIENT_OPTS:-"-u karaf"}
-INSTALLERDIR=$(dirname $0)
-
-REPOZIP=${INSTALLERDIR}/${features.boot}-${project.version}.zip
-
-if [ -f ${REPOZIP} ]
-then
- unzip -d ${ODL_HOME} ${REPOZIP}
-else
- echo "ERROR : repo zip ($REPOZIP) not found"
- exit 1
-fi
-
-${ODL_KARAF_CLIENT} ${ODL_KARAF_CLIENT_OPTS} feature:repo-add ${features.repositories}
-${ODL_KARAF_CLIENT} ${ODL_KARAF_CLIENT_OPTS} feature:install ${features.boot}
diff --git a/asdcApi/model/pom.xml b/asdcApi/model/pom.xml
deleted file mode 100755
index 804953cc..00000000
--- a/asdcApi/model/pom.xml
+++ /dev/null
@@ -1,81 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <artifactId>asdcApi</artifactId>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <version>1.1.2-SNAPSHOT</version>
- </parent>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <artifactId>asdcApi-model</artifactId>
- <version>1.1.2-SNAPSHOT</version>
- <packaging>bundle</packaging>
-
- <build>
-
- <plugins>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <extensions>true</extensions>
- <configuration>
- <instructions>
- <Import-Package>*</Import-Package>
- </instructions>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.opendaylight.yangtools</groupId>
- <artifactId>yang-maven-plugin</artifactId>
- <version>${odl.yangtools.yang.maven.plugin.version}</version>
- <dependencies>
- <dependency>
- <groupId>org.opendaylight.mdsal</groupId>
- <artifactId>maven-sal-api-gen-plugin</artifactId>
- <version>${odl.sal.api.gen.plugin.version}</version>
- <type>jar</type>
- </dependency>
- </dependencies>
- <executions>
- <execution>
- <goals>
- <goal>generate-sources</goal>
- </goals>
- <configuration>
- <yangFilesRootDir>${yang.file.directory}</yangFilesRootDir>
- <codeGenerators>
- <generator>
- <codeGeneratorClass>org.opendaylight.yangtools.maven.sal.api.gen.plugin.CodeGeneratorImpl</codeGeneratorClass>
- <outputBaseDir>${salGeneratorPath}</outputBaseDir>
- </generator>
- </codeGenerators>
- <inspectDependencies>true</inspectDependencies>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- <dependencies>
- <dependency>
- <groupId>org.opendaylight.mdsal</groupId>
- <artifactId>yang-binding</artifactId>
- <version>${odl.mdsal.yang.binding.version}</version>
- </dependency>
- <dependency>
- <groupId>org.opendaylight.yangtools</groupId>
- <artifactId>yang-common</artifactId>
- <version>${odl.yangtools.version}</version>
- </dependency>
- <dependency>
- <groupId>org.opendaylight.mdsal.model</groupId>
- <artifactId>ietf-inet-types</artifactId>
- <version>${odl.ietf-inet-types.version}</version>
- </dependency>
- <dependency>
- <groupId>org.opendaylight.mdsal.model</groupId>
- <artifactId>ietf-yang-types</artifactId>
- <version>${odl.ietf-yang-types.version}</version>
- </dependency>
- </dependencies>
-</project>
diff --git a/asdcApi/model/src/main/yang/ASDC-API.yang b/asdcApi/model/src/main/yang/ASDC-API.yang
deleted file mode 100755
index 401ec7da..00000000
--- a/asdcApi/model/src/main/yang/ASDC-API.yang
+++ /dev/null
@@ -1,63 +0,0 @@
-
-module ASDC-API {
- yang-version "1";
-
- namespace "org:openecomp:sdnc";
-
- prefix asdc-api;
-
- import asdc-api-common { prefix asdc-api-common; }
-
-
- import asdc-license-model { prefix asdc-license-model; }
-
- import ietf-inet-types {
- prefix inet;
- revision-date "2010-09-24";
- }
-
- organization
- "OpenECOMP";
-
- contact
- "Dan Timoney";
-
- description
- "SDC Interface";
-
- revision 2017-02-01 {
- description "database definitions";
- }
-
- // Containers
- container artifacts {
- list artifact {
- key "artifact-name artifact-version";
-
- uses asdc-api-common:artifact-fields;
- }
- }
-
-
-
- container vf-license-model-versions {
- list vf-license-model-version {
- key artifact-version;
- uses asdc-api-common:artifact-fields;
- uses asdc-license-model:vf-license-model-grouping;
- }
- }
-
-
- // RPCs
-
- rpc vf-license-model-update {
- input {
- uses asdc-api-common:artifact-fields;
- uses asdc-license-model:vf-license-model-grouping;
- }
- output {
- uses asdc-api-common:asdc-api-response;
- }
- }
-}
diff --git a/asdcApi/model/src/main/yang/asdc-api-common.yang b/asdcApi/model/src/main/yang/asdc-api-common.yang
deleted file mode 100755
index 126368d4..00000000
--- a/asdcApi/model/src/main/yang/asdc-api-common.yang
+++ /dev/null
@@ -1,53 +0,0 @@
-
-module asdc-api-common {
- yang-version "1";
-
- // Use same namespace defined for file upload in 15.12
- namespace "org:openecomp:sdnc:asdcapi:common";
-
- prefix asdcapi;
-
- organization
- "OpenECOMP";
-
- contact
- "Dan Timoney";
-
- description
- "ASDC/SDN-C API common data";
-
- revision 2017-02-01 {
- description "Initial release";
- }
-
-
-
- // Groupings
-
- grouping artifact-fields {
- leaf artifact-name {
- type string;
- description "Name of artifact";
- }
-
- leaf artifact-version {
- type string;
- description "Version of artifact";
- }
- }
-
- grouping asdc-api-response {
- leaf asdc-api-response-code {
- type string;
- description "Code indicating success/failure";
- }
-
- leaf asdc-api-response-text {
- type string;
- description "Text indicating reason for failure";
- }
- }
-
-
-
-}
diff --git a/asdcApi/model/src/main/yang/asdc-license-model.yang b/asdcApi/model/src/main/yang/asdc-license-model.yang
deleted file mode 100755
index 37ae869b..00000000
--- a/asdcApi/model/src/main/yang/asdc-license-model.yang
+++ /dev/null
@@ -1,369 +0,0 @@
-module asdc-license-model {
-
- namespace "http://xmlns.openecomp.org/asdc/license-model/1.0";
- prefix le;
- organization "openecomp";
- contact "asdc";
- description "schema for both vendor license and VF license models";
- revision 2016-04-27 {
- description "xxxx";
- reference "xxxx";
- }
-
- container vendor-license-model {
- description "xxxx";
- leaf vendor-name {
- type string{
- length "1..200";
- }
- description "xxxx";
- }
- uses entitlement-pools;
- uses license-key-groups;
- }
-
- grouping entitlement-pools {
- description "xxxx";
- container entitlement-pool-list {
- description "xxxx";
- uses entitlement-pool;
- }
- }
-
- grouping entitlement-pool {
- description "xxxx";
- list entitlement-pool {
- description "xxxx";
- leaf entitlement-pool-uuid {
- type string;
- description "xxxx";
- }
- leaf name {
- type string{
- length "1..120";
- }
- description "xxxx";
- }
- leaf description {
- type string{
- length "1..1000";
- }
- description "xxxx";
- }
- leaf manufacturer-reference-number {
- type string{
- length "1..100";
- }
- description "xxxx";
- }
- uses operational-scope;
- uses threshold-value;
- uses entitlement-metric;
- leaf increments {
- type string{
- length "1..120";
- }
- description "xxxx";
- }
- uses aggregation-function;
- uses time;
- }
- }
-
- grouping operational-scope {
- description "xxxx";
- container operational-scope {
- description "xxxx";
- leaf value {
- type enumeration {
- enum "Network_Wide"{
- description "xxxx";
- }
- enum "Availability_Zone"{
- description "xxxx";
- }
- enum "Data_Center"{
- description "xxxx";
- }
- enum "Tenant"{
- description "xxxx";
- }
- enum "VM"{
- description "xxxx";
- }
- enum "CPU"{
- description "xxxx";
- }
- enum "Core"{
- description "xxxx";
- }
- enum "Other"{
- description "xxxx";
- }
- }
- description "xxxx";
- }
- leaf other {
- type string{
- length "1..200";
- }
- description "xxxx";
- }
- }
- }
-
- grouping threshold-value {
- description "xxxx";
- container threshold-value {
- description "xxxx";
- leaf value {
- type uint32{
- range "0..9999999";
- } //TBD Change to type number
- description "xxxx";
- }
- leaf unit {
- type enumeration {
- enum "Absolute"{
- description "xxxx";
- }
- enum "Percentage"{
- description "xxxx";
- }
- }
- description "xxxx";
- }
- }
- }
-
- grouping entitlement-metric {
- description "xxxx";
- container entitlement-metric {
- description "xxxx";
- leaf value {
- type enumeration {
- enum "Software_Instances_Count"{
- description "xxxx";
- }
- enum "CPU"{
- description "xxxx";
- }
- enum "Core"{
- description "xxxx";
- }
- enum "Trunks"{
- description "xxxx";
- }
- enum "User"{
- description "xxxx";
- }
- enum "Subscribers"{
- description "xxxx";
- }
- enum "Tenants"{
- description "xxxx";
- }
- enum "Tokens"{
- description "xxxx";
- }
- enum "Seats"{
- description "xxxx";
- }
- enum "Units_TB"{
- description "xxxx";
- }
- enum "Units_GB"{
- description "xxxx";
- }
- enum "Units_MB"{
- description "xxxx";
- }
- enum "Other"{
- description "xxxx";
- }
- }
- description "xxxx";
- }
- leaf other {
- type string{
- length "1..200";
- }
- description "xxxx";
- }
- }
- }
-
- grouping aggregation-function {
- description "xxxx";
- container aggregation-function {
- description "xxxx";
- leaf value {
- type enumeration {
- enum "Peak"{
- description "xxxx";
- }
- enum "Average"{
- description "xxxx";
- }
- enum "Other"{
- description "xxxx";
- }
- }
- description "xxxx";
- }
- leaf other {
- type string{
- length "1..200";
- }
- description "xxxx";
- }
- }
- }
-
- grouping time {
- description "xxxx";
- container time {
- description "xxxx";
- leaf value {
- type enumeration {
- enum "Hour"{
- description "xxxx";
- }
- enum "Day"{
- description "xxxx";
- }
- enum "Month"{
- description "xxxx";
- }
- enum "Quarter"{
- description "xxxx";
- }
- enum "Year"{
- description "xxxx";
- }
- enum "Other"{
- description "xxxx";
- }
- }
- description "xxxx";
- }
- leaf other {
- type string{
- length "1..200";
- }
- description "xxxx";
- }
- }
- }
-
-
-
- grouping license-key-groups {
- description "xxxx";
- container license-key-group-list {
- description "xxxx";
- leaf name {
- type string;
- description "xxxx";
- }
- uses license-key-group;
- }
- }
-
- grouping license-key-group {
- description "xxxx";
- list license-key-group {
- description "xxxx";
- leaf license-key-group-uuid {
- type string;
- description "xxxx";
- }
- leaf name {
- type string{
- length "1..120";
- }
- description "xxxx";
- }
- leaf description {
- type string{
- length "1..1000";
- }
- description "xxxx";
- }
- uses operational-scope;
- leaf type {
- type enumeration {
- enum "Universal"{
- description "xxxx";
- }
- enum "Unique"{
- description "xxxx";
- }
- enum "One_Time"{
- description "xxxx";
- }
- }
- description "xxxx";
- }
- }
- }
-
- grouping vf-license-model-grouping {
- description "xxxx";
- container vf-license-model {
- description "xxxx";
- leaf vf-id {
- type string{
- length "1..200";
- }
- description "xxxx";
- }
- leaf vendor-name {
- type string{
- length "1..200";
- }
- description "xxxx";
- }
- uses feature-groups;
- }
- }
-
- grouping feature-groups {
- description "xxxx";
- container feature-group-list {
- description "xxxx";
- uses feature-group-grouping;
- }
- }
-
- grouping feature-group-grouping {
- description "xxxx";
- list feature-group {
- description "xxxx";
- leaf name{
- type string{
- length "1..120";
- }
- description "xxxx";
- }
- leaf feature-group-uuid{
- type string;
- description "xxxx";
- }
- leaf description {
- type string{
- length "1..1000";
- }
- description "xxxx";
- }
- leaf att-part-number {
- type string{
- length "1..100";
- }
- description "xxxx";
- }
- uses entitlement-pools;
- uses license-key-groups;
- }
- }
-}
diff --git a/asdcApi/pom.xml b/asdcApi/pom.xml
deleted file mode 100755
index 5a3dacdb..00000000
--- a/asdcApi/pom.xml
+++ /dev/null
@@ -1,63 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <artifactId>sdnc-northbound</artifactId>
- <version>1.1.2-SNAPSHOT</version>
- </parent>
-
- <packaging>pom</packaging>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <artifactId>asdcApi</artifactId>
- <version>1.1.2-SNAPSHOT</version>
-
- <properties>
- <feature-name>asdcApi</feature-name>
- </properties>
-
- <dependencyManagement>
-
- <dependencies>
- <dependency>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <artifactId>asdcApi-features</artifactId>
- <classifier>features</classifier>
- <type>xml</type>
- <version>${project.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <artifactId>asdcApi-model</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <artifactId>asdcApi-provider</artifactId>
- <version>${project.version}</version>
- <classifier>config</classifier>
- <type>xml</type>
- </dependency>
- <dependency>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <artifactId>asdcApi-provider</artifactId>
- <version>${project.version}</version>
- </dependency>
- </dependencies>
-
-
- </dependencyManagement>
-
-
-
-
- <modules>
- <module>model</module>
- <module>features</module>
- <module>provider</module>
- <module>installer</module>
- </modules>
-
-</project>
diff --git a/asdcApi/provider/pom.xml b/asdcApi/provider/pom.xml
deleted file mode 100755
index 6a6c34dc..00000000
--- a/asdcApi/provider/pom.xml
+++ /dev/null
@@ -1,129 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <parent>
- <artifactId>asdcApi</artifactId>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <version>1.1.2-SNAPSHOT</version>
- </parent>
- <artifactId>asdcApi-provider</artifactId>
- <packaging>bundle</packaging>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <extensions>true</extensions>
- <configuration>
- <instructions>
- <Export-Package>org.opendaylight.controller.config.yang.config.asdcApi_provider.impl</Export-Package>
- <Import-Package>*</Import-Package>
- </instructions>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.opendaylight.yangtools</groupId>
- <artifactId>yang-maven-plugin</artifactId>
- <version>${odl.yangtools.yang.maven.plugin.version}</version>
- <executions>
- <execution>
- <id>config</id>
- <goals>
- <goal>generate-sources</goal>
- </goals>
- <configuration>
- <codeGenerators>
- <generator>
- <codeGeneratorClass>org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator</codeGeneratorClass>
- <outputBaseDir>${jmxGeneratorPath}</outputBaseDir>
- <additionalConfiguration>
- <namespaceToPackage1>urn:opendaylight:params:xml:ns:yang:controller==org.opendaylight.controller.config.yang</namespaceToPackage1>
- </additionalConfiguration>
- </generator>
- <generator>
- <codeGeneratorClass>org.opendaylight.yangtools.maven.sal.api.gen.plugin.CodeGeneratorImpl</codeGeneratorClass>
- <outputBaseDir>${salGeneratorPath}</outputBaseDir>
- </generator>
- </codeGenerators>
- <inspectDependencies>true</inspectDependencies>
- </configuration>
- </execution>
- </executions>
- <dependencies>
- <dependency>
- <groupId>org.opendaylight.mdsal</groupId>
- <artifactId>maven-sal-api-gen-plugin</artifactId>
- <version>${odl.sal.api.gen.plugin.version}</version>
- <type>jar</type>
- </dependency>
- <dependency>
- <groupId>org.opendaylight.controller</groupId>
- <artifactId>yang-jmx-generator-plugin</artifactId>
- <version>${odl.yang.jmx.generator.version}</version>
- </dependency>
- </dependencies>
- </plugin>
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>build-helper-maven-plugin</artifactId>
- <executions>
- <execution>
- <id>attach-artifacts</id>
- <goals>
- <goal>attach-artifact</goal>
- </goals>
- <phase>package</phase>
- <configuration>
- <artifacts>
- <artifact>
- <file>${project.build.directory}/classes/initial/asdcApi-provider.xml</file>
- <type>xml</type>
- <classifier>config</classifier>
- </artifact>
- </artifacts>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-
- <dependencies>
- <dependency>
- <groupId>org.openecomp.sdnc.northbound</groupId>
- <artifactId>asdcApi-model</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.opendaylight.controller</groupId>
- <artifactId>config-api</artifactId>
- <version>${odl.controller.config.api.version}</version>
- </dependency>
- <dependency>
- <groupId>org.opendaylight.controller</groupId>
- <artifactId>sal-binding-config</artifactId>
- <version>${odl.mdsal.version}</version>
- </dependency>
- <dependency>
- <groupId>org.opendaylight.controller</groupId>
- <artifactId>sal-binding-api</artifactId>
- <version>${odl.mdsal.version}</version>
- </dependency>
- <dependency>
- <groupId>org.opendaylight.controller</groupId>
- <artifactId>sal-common-util</artifactId>
- <version>${odl.mdsal.version}</version>
- </dependency>
- <dependency>
- <groupId>org.openecomp.sdnc.core</groupId>
- <artifactId>sli-common</artifactId>
- <version>${sdnctl.sli.version}</version>
- </dependency>
- <dependency>
- <groupId>org.openecomp.sdnc.core</groupId>
- <artifactId>sli-provider</artifactId>
- <version>${sdnctl.sli.version}</version>
- </dependency>
- </dependencies>
-</project>
diff --git a/asdcApi/provider/src/main/java/org/opendaylight/yang/gen/v1/org/openecomp/sdnc/asdcapi/provider/impl/rev140523/AsdcApiProviderModule.java b/asdcApi/provider/src/main/java/org/opendaylight/yang/gen/v1/org/openecomp/sdnc/asdcapi/provider/impl/rev140523/AsdcApiProviderModule.java
deleted file mode 100644
index a198a078..00000000
--- a/asdcApi/provider/src/main/java/org/opendaylight/yang/gen/v1/org/openecomp/sdnc/asdcapi/provider/impl/rev140523/AsdcApiProviderModule.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * openECOMP : SDN-C
- * ================================================================================
- * 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.opendaylight.yang.gen.v1.org.openecomp.sdnc.asdcapi.provider.impl.rev140523;
-
-import org.openecomp.sdnc.asdcapi.AsdcApiProvider;
-
-public class AsdcApiProviderModule extends org.opendaylight.yang.gen.v1.org.openecomp.sdnc.asdcapi.provider.impl.rev140523.AbstractAsdcApiProviderModule {
- public AsdcApiProviderModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver) {
- super(identifier, dependencyResolver);
- }
-
- public AsdcApiProviderModule(org.opendaylight.controller.config.api.ModuleIdentifier identifier, org.opendaylight.controller.config.api.DependencyResolver dependencyResolver, org.opendaylight.yang.gen.v1.org.openecomp.sdnc.asdcapi.provider.impl.rev140523.AsdcApiProviderModule oldModule, java.lang.AutoCloseable oldInstance) {
- super(identifier, dependencyResolver, oldModule, oldInstance);
- }
-
- @Override
- public void customValidation() {
- // add custom validation form module attributes here.
- }
-
- @Override
- public java.lang.AutoCloseable createInstance() {
-
- final AsdcApiProvider provider = new AsdcApiProvider(getDataBrokerDependency()
- , getNotificationServiceDependency()
- , getRpcRegistryDependency());
-
- return new AutoCloseable() {
-
- @Override
- public void close() throws Exception {
-
- provider.close();
- }
- };
- }
-
-}
diff --git a/asdcApi/provider/src/main/java/org/opendaylight/yang/gen/v1/org/openecomp/sdnc/asdcapi/provider/impl/rev140523/AsdcApiProviderModuleFactory.java b/asdcApi/provider/src/main/java/org/opendaylight/yang/gen/v1/org/openecomp/sdnc/asdcapi/provider/impl/rev140523/AsdcApiProviderModuleFactory.java
deleted file mode 100644
index 610b720f..00000000
--- a/asdcApi/provider/src/main/java/org/opendaylight/yang/gen/v1/org/openecomp/sdnc/asdcapi/provider/impl/rev140523/AsdcApiProviderModuleFactory.java
+++ /dev/null
@@ -1,34 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * openECOMP : SDN-C
- * ================================================================================
- * 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=========================================================
- */
-
-/*
-* Generated file
-*
-* Generated from: yang module name: asdcApi-provider-impl yang module local name: asdcApi-provider-impl
-* Generated by: org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator
-* Generated at: Wed Nov 02 03:46:08 EDT 2016
-*
-* Do not modify this file unless it is present under src/main directory
-*/
-package org.opendaylight.yang.gen.v1.org.openecomp.sdnc.asdcapi.provider.impl.rev140523;
-public class AsdcApiProviderModuleFactory extends org.opendaylight.yang.gen.v1.org.openecomp.sdnc.asdcapi.provider.impl.rev140523.AbstractAsdcApiProviderModuleFactory {
-
-}
diff --git a/asdcApi/provider/src/main/java/org/openecomp/sdnc/asdcapi/AsdcApiProvider.java b/asdcApi/provider/src/main/java/org/openecomp/sdnc/asdcapi/AsdcApiProvider.java
deleted file mode 100644
index 41a7f03f..00000000
--- a/asdcApi/provider/src/main/java/org/openecomp/sdnc/asdcapi/AsdcApiProvider.java
+++ /dev/null
@@ -1,413 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * openECOMP : SDN-C
- * ================================================================================
- * 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.sdnc.asdcapi;
-
-import com.google.common.base.Optional;
-import com.google.common.util.concurrent.CheckedFuture;
-import com.google.common.util.concurrent.Futures;
-import java.util.Properties;
-import java.util.concurrent.ExecutionException;
-import java.util.concurrent.ExecutorService;
-import java.util.concurrent.Executors;
-import java.util.concurrent.Future;
-import org.opendaylight.controller.md.sal.binding.api.DataBroker;
-import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction;
-import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;
-import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;
-import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;
-import org.opendaylight.controller.sal.binding.api.BindingAwareBroker;
-import org.opendaylight.controller.sal.binding.api.NotificationProviderService;
-import org.opendaylight.controller.sal.binding.api.RpcProviderRegistry;
-import org.opendaylight.yang.gen.v1.http.xmlns.openecomp.org.asdc.license.model._1._0.rev160427.vf.license.model.grouping.VfLicenseModel;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.ASDCAPIService;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.Artifacts;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.ArtifactsBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.VfLicenseModelUpdateInput;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.VfLicenseModelUpdateInputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.VfLicenseModelUpdateOutput;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.VfLicenseModelUpdateOutputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.VfLicenseModelVersions;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.VfLicenseModelVersionsBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.artifacts.Artifact;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.artifacts.ArtifactBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.artifacts.ArtifactKey;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.vf.license.model.versions.VfLicenseModelVersion;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.vf.license.model.versions.VfLicenseModelVersionBuilder;
-import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;
-import org.opendaylight.yangtools.yang.common.RpcResult;
-import org.opendaylight.yangtools.yang.common.RpcResultBuilder;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-/**
- * Defines a base implementation for your provider. This class extends from a helper class
- * which provides storage for the most commonly used components of the MD-SAL. Additionally the
- * base class provides some basic logging and initialization / clean up methods.
- *
- * To use this, copy and paste (overwrite) the following method into the TestApplicationProviderModule
- * class which is auto generated under src/main/java in this project
- * (created only once during first compilation):
- *
- * <pre>
-
- @Override
- public java.lang.AutoCloseable createInstance() {
-
- final asdcApiProvider provider = new asdcApiProvider();
- provider.setDataBroker( getDataBrokerDependency() );
- provider.setNotificationService( getNotificationServiceDependency() );
- provider.setRpcRegistry( getRpcRegistryDependency() );
- provider.initialize();
- return new AutoCloseable() {
-
- @Override
- public void close() throws Exception {
- //TODO: CLOSE ANY REGISTRATION OBJECTS CREATED USING ABOVE BROKER/NOTIFICATION
- //SERVIE/RPC REGISTRY
- provider.close();
- }
- };
- }
-
-
- </pre>
- */
-public class AsdcApiProvider implements AutoCloseable, ASDCAPIService {
-
- private static final String ACTIVE_VERSION = "active";
-
- private final Logger log = LoggerFactory.getLogger( AsdcApiProvider.class );
- private final String appName = "asdcApi";
-
- private final ExecutorService executor;
- protected DataBroker dataBroker;
- protected NotificationProviderService notificationService;
- protected RpcProviderRegistry rpcRegistry;
-
- protected BindingAwareBroker.RpcRegistration<ASDCAPIService> rpcRegistration;
-
- public AsdcApiProvider(DataBroker dataBroker2,
- NotificationProviderService notificationProviderService,
- RpcProviderRegistry rpcProviderRegistry) {
- this.log.info( "Creating provider for " + appName );
- executor = Executors.newFixedThreadPool(1);
- dataBroker = dataBroker2;
- notificationService = notificationProviderService;
- rpcRegistry = rpcProviderRegistry;
- initialize();
- }
-
- public void initialize(){
- log.info( "Initializing provider for " + appName );
-
-
- createContainers();
-
- if (rpcRegistration == null) {
- if (rpcRegistry != null) {
- rpcRegistration = rpcRegistry.addRpcImplementation(
- ASDCAPIService.class, this);
- log.info("Initialization complete for " + appName);
- } else {
- log.warn("Error initializing " + appName
- + " : rpcRegistry unset");
- }
- }
- }
-
- private void createContainers() {
-
- if (dataBroker != null) {
- final WriteTransaction t = dataBroker.newReadWriteTransaction();
-
- // Create the vf-model-license-versions and artifacts containers
- t.merge(LogicalDatastoreType.CONFIGURATION, InstanceIdentifier.create(VfLicenseModelVersions.class),
- new VfLicenseModelVersionsBuilder().build());
-
- t.merge(LogicalDatastoreType.CONFIGURATION, InstanceIdentifier.create(Artifacts.class), new ArtifactsBuilder().build());
-
-
- try {
- CheckedFuture<Void, TransactionCommitFailedException> checkedFuture = t.submit();
- checkedFuture.get();
- log.info("Create Containers succeeded!: ");
-
- } catch (InterruptedException | ExecutionException e) {
- log.error("Create Containers Failed: " + e);
- e.printStackTrace();
- }
- } else {
- log.warn("createContainers : cannot find dataBroker to create containers");
- }
- }
- protected void initializeChild() {
- //Override if you have custom initialization intelligence
- }
-
- @Override
- public void close() throws Exception {
- log.info( "Closing provider for " + appName );
- executor.shutdown();
- rpcRegistration.close();
- log.info( "Successfully closed provider for " + appName );
- }
-
- public void setDataBroker(DataBroker dataBroker) {
- this.dataBroker = dataBroker;
- if( log.isDebugEnabled() ){
- log.debug( "DataBroker set to " + (dataBroker==null?"null":"non-null") + "." );
- }
- }
-
- public void setNotificationService(
- NotificationProviderService notificationService) {
- this.notificationService = notificationService;
- if( log.isDebugEnabled() ){
- log.debug( "Notification Service set to " + (notificationService==null?"null":"non-null") + "." );
- }
- }
-
- public void setRpcRegistry(RpcProviderRegistry rpcRegistry) {
- this.rpcRegistry = rpcRegistry;
-
- rpcRegistration = rpcRegistry.addRpcImplementation(ASDCAPIService.class, this);
-
- if( log.isDebugEnabled() ){
- log.debug( "RpcRegistry set to " + (rpcRegistry==null?"null":"non-null") + "." );
- }
- }
-
-
- protected boolean artifactVersionExists(String aName, String aVersion) {
- InstanceIdentifier artifactInstanceId =
- InstanceIdentifier.<Artifacts>builder(Artifacts.class)
- .child(Artifact.class, new ArtifactKey(aName, aVersion)).toInstance();
- ReadOnlyTransaction readTx = dataBroker.newReadOnlyTransaction();
- Optional<Artifact> data = null;
- try {
- data = (Optional<Artifact>) readTx.read(LogicalDatastoreType.CONFIGURATION, artifactInstanceId).get();
- } catch (InterruptedException | ExecutionException e) {
- log.error("Caught Exception reading MD-SAL for ["+aName+","+ aVersion+"] " ,e);
- return false;
-
- }
-
- if (data.isPresent()) {
- return true;
- } else {
- return false;
- }
- }
-
- protected void addArtifactVersion(String aName, String aVersion) {
-
-
- try {
- ArtifactBuilder aBuilder = new ArtifactBuilder();
-
- aBuilder.setArtifactName(aName);
- aBuilder.setArtifactVersion(aVersion);
-
- Artifact artifact = aBuilder.build();
-
- InstanceIdentifier.InstanceIdentifierBuilder<Artifact> aIdBuilder = InstanceIdentifier
- .<Artifacts> builder(Artifacts.class)
- .child(Artifact.class, artifact.getKey());
-
- InstanceIdentifier<Artifact> path = aIdBuilder
- .toInstance();
-
- WriteTransaction tx = dataBroker.newWriteOnlyTransaction();
-
- tx.merge(LogicalDatastoreType.CONFIGURATION, path,
- artifact);
- tx.submit().checkedGet();
- } catch (Exception e) {
- log.error("Caught exception trying to add artifact entry", e);
- }
-
- }
-
-
- private void applyVfLicenseModelUpdate(VfLicenseModelUpdateInput input) {
-
- String aName = input.getArtifactName();
- String aVersion = input.getArtifactVersion();
- VfLicenseModel vfLicenseModel = input.getVfLicenseModel();
-
-
- // Add new version (version = artifact-version)
- try {
-
- VfLicenseModelVersionBuilder vBuilder = new VfLicenseModelVersionBuilder();
- vBuilder.setArtifactName(aName);
- vBuilder.setArtifactVersion(aVersion);
- vBuilder.setVfLicenseModel(vfLicenseModel);
-
- VfLicenseModelVersion version = vBuilder.build();
-
- InstanceIdentifier.InstanceIdentifierBuilder<VfLicenseModelVersion> versionIdBuilder = InstanceIdentifier
- .<VfLicenseModelVersions> builder(VfLicenseModelVersions.class)
- .child(VfLicenseModelVersion.class, version.getKey());
-
- InstanceIdentifier<VfLicenseModelVersion> path = versionIdBuilder
- .toInstance();
-
- WriteTransaction tx = dataBroker.newWriteOnlyTransaction();
- tx.merge(LogicalDatastoreType.CONFIGURATION, path,
- version);
- tx.submit().checkedGet();
- } catch (Exception e) {
- log.error(
- "Caught exception trying to save entry to MD-SAL",
- e);
- }
-
-
- // Add "active" version (version = "active")
- try {
-
- VfLicenseModelVersionBuilder vBuilder = new VfLicenseModelVersionBuilder();
- vBuilder.setArtifactName(aName);
- vBuilder.setArtifactVersion(ACTIVE_VERSION);
- vBuilder.setVfLicenseModel(vfLicenseModel);
-
- VfLicenseModelVersion version = vBuilder.build();
- InstanceIdentifier.InstanceIdentifierBuilder<VfLicenseModelVersion> versionIdBuilder = InstanceIdentifier
- .<VfLicenseModelVersions> builder(VfLicenseModelVersions.class)
- .child(VfLicenseModelVersion.class, version.getKey());
-
- InstanceIdentifier<VfLicenseModelVersion> path = versionIdBuilder
- .toInstance();
-
- WriteTransaction tx = dataBroker.newWriteOnlyTransaction();
-
- tx.merge(LogicalDatastoreType.CONFIGURATION, path,
- version);
- tx.submit().checkedGet();
- } catch (Exception e) {
- log.error(
- "Caught exception trying to save entry to MD-SAL",
- e);
- }
-
-}
-
-@Override
-public Future<RpcResult<VfLicenseModelUpdateOutput>> vfLicenseModelUpdate(VfLicenseModelUpdateInput input) {
- final String SVC_OPERATION = "vf-license-model-update";
-
- Properties parms = new Properties();
-
- log.info( SVC_OPERATION +" called." );
-
- if(input == null ) {
- log.debug("exiting " +SVC_OPERATION+ " because of invalid input");
- return null;
- }
-
- VfLicenseModelUpdateInputBuilder inputBuilder = new VfLicenseModelUpdateInputBuilder(input);
- input = inputBuilder.build();
-
- String errorMessage = "Success";
- String errorCode = "200";
-
- // If this artifact already exists, reject this update
- if (artifactVersionExists(input.getArtifactName(), input.getArtifactVersion())) {
- errorCode = "409";
- errorMessage = "Artifact version already exists";
- } else {
- // Translate input object into SLI-consumable properties
- log.info("Adding INPUT data for "+SVC_OPERATION+" input: " + input);
- AsdcApiUtil.toProperties(parms, input);
-
-
- // Call directed graph
-
- Properties respProps = null;
-
-
- AsdcApiSliClient sliClient = new AsdcApiSliClient();
- try
- {
- if (sliClient.hasGraph("ASDC-API", SVC_OPERATION , null, "sync"))
- {
-
- try
- {
- respProps = sliClient.execute("ASDC-API", SVC_OPERATION, null, "sync", parms);
- }
- catch (Exception e)
- {
- log.error("Caught exception executing service logic for "+ SVC_OPERATION, e);
- }
- } else {
- errorMessage = "No service logic active for ASDC-API: '" + SVC_OPERATION + "'";
- errorCode = "503";
- }
- }
- catch (Exception e)
- {
- errorCode = "500";
- errorMessage = e.getMessage();
- log.error("Caught exception looking for service logic", e);
- }
-
-
- if (respProps != null)
- {
- errorCode = respProps.getProperty("error-code");
- errorMessage = respProps.getProperty("error-message", "");
- }
- }
-
-
- if ("200".equals(errorCode)) {
- log.info("ASDC update succeeded");
-
- // Update config tree
- applyVfLicenseModelUpdate(input);
- addArtifactVersion(input.getArtifactName(), input.getArtifactVersion());
-
- } else {
- log.info("ASDC update failed ("+errorCode+" : "+errorMessage);
- }
-
- // Send response
- VfLicenseModelUpdateOutputBuilder respBuilder = new VfLicenseModelUpdateOutputBuilder();
- respBuilder.setAsdcApiResponseCode(errorCode);
- if (errorMessage != null && errorMessage.length() > 0) {
- respBuilder.setAsdcApiResponseText(errorMessage);
- }
-
- RpcResult<VfLicenseModelUpdateOutput> rpcResult;
-
-
- rpcResult = RpcResultBuilder.<VfLicenseModelUpdateOutput> status(true).withResult(respBuilder.build()).build();
-
-
-
- return Futures.immediateFuture(rpcResult);
-}
-
-
-}
diff --git a/asdcApi/provider/src/main/java/org/openecomp/sdnc/asdcapi/AsdcApiSliClient.java b/asdcApi/provider/src/main/java/org/openecomp/sdnc/asdcapi/AsdcApiSliClient.java
deleted file mode 100644
index d56101aa..00000000
--- a/asdcApi/provider/src/main/java/org/openecomp/sdnc/asdcapi/AsdcApiSliClient.java
+++ /dev/null
@@ -1,111 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * openECOMP : SDN-C
- * ================================================================================
- * 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.sdnc.asdcapi;
-
-import java.util.Properties;
-
-import org.openecomp.sdnc.sli.SvcLogicException;
-import org.openecomp.sdnc.sli.provider.SvcLogicService;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.FrameworkUtil;
-import org.osgi.framework.ServiceReference;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-public class AsdcApiSliClient {
-
- private static final Logger LOG = LoggerFactory
- .getLogger(AsdcApiSliClient.class);
-
- private SvcLogicService svcLogic = null;
-
- public AsdcApiSliClient()
- {
- BundleContext bctx = FrameworkUtil.getBundle(SvcLogicService.class).getBundleContext();
-
- // Get SvcLogicService reference
- ServiceReference sref = bctx.getServiceReference(SvcLogicService.NAME);
- if (sref != null)
- {
- svcLogic = (SvcLogicService) bctx.getService(sref);
- }
- else
- {
- LOG.warn("Cannot find service reference for "+SvcLogicService.NAME);
-
- }
- }
-
- public boolean hasGraph(String module, String rpc, String version, String mode) throws SvcLogicException
- {
- return(svcLogic.hasGraph(module, rpc, version, mode));
- }
-
-
- public Properties execute(String module, String rpc, String version, String mode, Properties parms)
- throws SvcLogicException {
-
-
- if (LOG.isDebugEnabled())
- {
- LOG.debug("Parameters passed to SLI");
-
- for (Object key : parms.keySet()) {
- String parmName = (String) key;
- String parmValue = parms.getProperty(parmName);
-
- LOG.debug(parmName+" = "+parmValue);
-
- }
- }
-
- Properties respProps = svcLogic.execute(module, rpc, version, mode, parms);
-
- if (LOG.isDebugEnabled())
- {
- LOG.debug("Parameters returned by SLI");
-
- for (Object key : respProps.keySet()) {
- String parmName = (String) key;
- String parmValue = respProps.getProperty(parmName);
-
- LOG.debug(parmName+" = "+parmValue);
-
- }
- }
-
- if ("failure".equalsIgnoreCase(respProps.getProperty("SvcLogic.status"))) {
-
- if (!respProps.containsKey("error-code")) {
- respProps.setProperty("error-code", "500");
- }
- } else {
- if (!respProps.containsKey("error-code")) {
- respProps.setProperty("error-code", "200");
- }
- }
-
-
- return (respProps);
- }
-
-}
diff --git a/asdcApi/provider/src/main/java/org/openecomp/sdnc/asdcapi/AsdcApiUtil.java b/asdcApi/provider/src/main/java/org/openecomp/sdnc/asdcapi/AsdcApiUtil.java
deleted file mode 100644
index 4d6bd796..00000000
--- a/asdcApi/provider/src/main/java/org/openecomp/sdnc/asdcapi/AsdcApiUtil.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * openECOMP : SDN-C
- * ================================================================================
- * 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.sdnc.asdcapi;
-
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.ArtifactsBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.VfLicenseModelUpdateInput;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.VfLicenseModelUpdateInputBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.VfLicenseModelVersionsBuilder;
-import org.opendaylight.yang.gen.v1.org.openecomp.sdnc.rev170201.vf.license.model.versions.VfLicenseModelVersionBuilder;
-import org.openecomp.sdnc.sli.provider.MdsalHelper;
-
-public class AsdcApiUtil extends MdsalHelper {
-
- static {
-
- // Input objects
-
- VfLicenseModelUpdateInput i13 = new VfLicenseModelUpdateInputBuilder().build();
-
-
- // Other builders
- ArtifactsBuilder b1 = new ArtifactsBuilder();
-
- VfLicenseModelVersionsBuilder b14a = new VfLicenseModelVersionsBuilder();
- VfLicenseModelVersionBuilder b26a = new VfLicenseModelVersionBuilder();
-
-
- }
-}
diff --git a/asdcApi/provider/src/main/resources/initial/asdcApi-provider.xml b/asdcApi/provider/src/main/resources/initial/asdcApi-provider.xml
deleted file mode 100644
index ba7ea555..00000000
--- a/asdcApi/provider/src/main/resources/initial/asdcApi-provider.xml
+++ /dev/null
@@ -1,72 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ============LICENSE_START=======================================================
- openECOMP : SDN-C
- ================================================================================
- 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=========================================================
- -->
-
-<!-- vi: set et smarttab sw=4 tabstop=4: -->
-<snapshot>
- <configuration>
- <data xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
- <modules xmlns="urn:opendaylight:params:xml:ns:yang:controller:config">
- <module>
-
- <!-- This xmlns:prefix should match the namespace in the *-provider-impl.yang file
- The prefix: inside type should match the prefix of the yang file. -->
- <type xmlns:prefix="org:openecomp:sdnc:asdcapi:provider:impl">
- prefix:asdcApi-provider-impl
- </type>
- <name>asdcApi-provider-impl</name>
-
- <!-- The following sections contain bindings to services defined in the
- *-provider-impl yang file. For example the rpc-registry is required
- because we have a dependency (or augmentation) named "rpc-registry"
- and which binds to the md-sa-binding-registry. If you remove those
- dependencies from the yang file then you can remove them from here. -->
- <rpc-registry>
- <type xmlns:binding="urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding">binding:binding-rpc-registry</type>
- <name>binding-rpc-broker</name>
- </rpc-registry>
-
- <data-broker>
- <type xmlns:binding="urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding">binding:binding-async-data-broker</type>
- <name>binding-data-broker</name>
- </data-broker>
-
- <notification-service>
- <type xmlns:binding="urn:opendaylight:params:xml:ns:yang:controller:md:sal:binding">
- binding:binding-notification-service
- </type>
- <name>binding-notification-broker</name>
- </notification-service>
- </module>
-
- </modules>
- </data>
-
- </configuration>
-
- <!-- Required capabilities are basically a listing of all modules that need to be imported before
- our service can be resolved. Capabilities for dependencies defined above are implied which is
- why we do not have define a required capability for the data broker, for example. -->
- <required-capabilities>
- <capability>org:openecomp:sdnc:asdcapi:provider:impl?module=asdcApi-provider-impl&amp;revision=2014-05-23</capability>
- </required-capabilities>
-
-</snapshot>
diff --git a/asdcApi/provider/src/main/yang/asdcApi-provider-impl.yang b/asdcApi/provider/src/main/yang/asdcApi-provider-impl.yang
deleted file mode 100755
index 94ee8836..00000000
--- a/asdcApi/provider/src/main/yang/asdcApi-provider-impl.yang
+++ /dev/null
@@ -1,61 +0,0 @@
-module asdcApi-provider-impl {
-
- yang-version 1;
- namespace "org:openecomp:sdnc:asdcapi:provider:impl";
- prefix "asdcApi-provider-impl";
-
- import config { prefix config; revision-date 2013-04-05; }
- import opendaylight-md-sal-binding { prefix mdsal; revision-date 2013-10-28; }
-
- description
- "This module contains the base YANG definitions for
- asdcApi-provider impl implementation.";
-
- revision "2014-05-23" {
- description
- "Initial revision.";
- }
-
- // This is the definition of the service implementation as a module identity.
- identity asdcApi-provider-impl {
- base config:module-type;
-
- // Specifies the prefix for generated java classes.
- config:java-name-prefix AsdcApiProvider;
- }
-
- // Augments the 'configuration' choice node under modules/module.
- // We consume the three main services, RPCs, DataStore, and Notifications
- augment "/config:modules/config:module/config:configuration" {
- case asdcApi-provider-impl {
- when "/config:modules/config:module/config:type = 'asdcApi-provider-impl'";
-
- container rpc-registry {
- uses config:service-ref {
- refine type {
- mandatory true;
- config:required-identity mdsal:binding-rpc-registry;
- }
- }
- }
-
- container notification-service {
- uses config:service-ref {
- refine type {
- mandatory true;
- config:required-identity mdsal:binding-notification-service;
- }
- }
- }
-
- container data-broker {
- uses config:service-ref {
- refine type {
- mandatory false;
- config:required-identity mdsal:binding-async-data-broker;
- }
- }
- }
- }
- }
-}