summaryrefslogtreecommitdiffstats
path: root/appc-asdc-listener
diff options
context:
space:
mode:
Diffstat (limited to 'appc-asdc-listener')
-rw-r--r--appc-asdc-listener/.gitignore21
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/.gitignore2
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/.settings/org.eclipse.wst.common.project.facet.core.xml4
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/etc/asdc-client.jksbin1177 -> 0 bytes
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/etc/asdcclientstore.jksbin907 -> 0 bytes
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/log4j.properties17
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/pom.xml244
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/ArtifactProcessor.java41
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/helper/ArtifactStorageService.java329
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/helper/Constants.java72
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/helper/DependencyModelGenerator.java97
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/AbstractArtifactProcessor.java196
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/ArtifactProcessorFactory.java89
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/ConfigArtifactProcessor.java76
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/LicenseArtifactProcessor.java92
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/ToscaCsarArtifactProcessor.java241
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/ArtifactType.java46
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/Resource.java87
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/SDCArtifact.java215
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/SDCReference.java94
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/Vnfc.java78
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/AsdcCallback.java148
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/AsdcConfig.java197
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/AsdcListener.java219
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/ProviderOperations.java211
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/ProviderResponse.java45
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/Util.java126
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/tlv/sdc/security/Passwords.java170
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/OSGI-INF/blueprint/blueprint.xml43
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/attsdc-packages.yaml10
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/attsdc.yaml35
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/log4j.properties58
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/titan.properties29
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/scripts/startTest.sh112
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/org/openecomp/appc/default.properties40
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/test/java/org/openecomp/appc/sdc/listener/AsdcCallbackTest.java203
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/test/java/org/openecomp/appc/sdc/listener/AsdcListenerTest.java158
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/test/java/org/openecomp/appc/sdc/listener/TestRun.java41
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/test/resources/csar/service-ServiceAppc-csar.csarbin9782 -> 0 bytes
-rw-r--r--appc-asdc-listener/appc-asdc-listener-bundle/src/test/resources/org/openecomp/appc/default.properties36
-rw-r--r--appc-asdc-listener/appc-asdc-listener-features/.gitignore3
-rw-r--r--appc-asdc-listener/appc-asdc-listener-features/pom.xml89
-rw-r--r--appc-asdc-listener/appc-asdc-listener-features/src/main/resources/features.xml41
-rw-r--r--appc-asdc-listener/appc-asdc-listener-installer/.gitignore2
-rw-r--r--appc-asdc-listener/appc-asdc-listener-installer/pom.xml133
-rw-r--r--appc-asdc-listener/appc-asdc-listener-installer/src/assembly/assemble_installer_zip.xml62
-rw-r--r--appc-asdc-listener/appc-asdc-listener-installer/src/assembly/assemble_mvnrepo_zip.xml50
-rw-r--r--appc-asdc-listener/appc-asdc-listener-installer/src/main/resources/scripts/install-feature.sh63
-rw-r--r--appc-asdc-listener/appc-yang-generator/pom.xml74
-rw-r--r--appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/YANGGenerator.java49
-rw-r--r--appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/exception/YANGGenerationException.java51
-rw-r--r--appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/impl/YANGGeneratorFactory.java52
-rw-r--r--appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/impl/YANGGeneratorImpl.java176
-rw-r--r--appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/objects/Leaf.java72
-rw-r--r--appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/type/YangTypes.java108
-rw-r--r--appc-asdc-listener/appc-yang-generator/src/main/resources/templates/YangTemplate.vm47
-rw-r--r--appc-asdc-listener/appc-yang-generator/src/test/java/org/openecomp/appc/TestYANGGenerator.java197
-rw-r--r--appc-asdc-listener/appc-yang-generator/src/test/resources/tosca/toscaFile.yml319
-rw-r--r--appc-asdc-listener/appc-yang-generator/src/test/resources/tosca/toscaFileWithSyntaxError.yml319
-rw-r--r--appc-asdc-listener/appc-yang-generator/src/test/resources/tosca/toscaFileWithUnsupportedTypes.yml373
-rw-r--r--appc-asdc-listener/appc-yang-generator/src/test/resources/yang/expectedYang.yang345
-rw-r--r--appc-asdc-listener/pom.xml106
62 files changed, 0 insertions, 6653 deletions
diff --git a/appc-asdc-listener/.gitignore b/appc-asdc-listener/.gitignore
deleted file mode 100644
index c82c130d9..000000000
--- a/appc-asdc-listener/.gitignore
+++ /dev/null
@@ -1,21 +0,0 @@
-# Target dirs in all projects
-**/target/*
-
-# Generated models and features
-/model/bin/*
-/features/bin/*
-
-# MANIFEST.MF is updated on every clean install
-MANIFEST.MF
-
-# Karaf Assembly
-
-
-*.prefs
-.classpath
-.project
-/.settings/
-
-logs/
-debug-logs/
-/target/
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/.gitignore b/appc-asdc-listener/appc-asdc-listener-bundle/.gitignore
deleted file mode 100644
index 09e3bc9b2..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/bin/
-/target/
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/.settings/org.eclipse.wst.common.project.facet.core.xml b/appc-asdc-listener/appc-asdc-listener-bundle/.settings/org.eclipse.wst.common.project.facet.core.xml
deleted file mode 100644
index f4ef8aa0a..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/.settings/org.eclipse.wst.common.project.facet.core.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<faceted-project>
- <installed facet="java" version="1.8"/>
-</faceted-project>
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/etc/asdc-client.jks b/appc-asdc-listener/appc-asdc-listener-bundle/etc/asdc-client.jks
deleted file mode 100644
index eb0a0d35a..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/etc/asdc-client.jks
+++ /dev/null
Binary files differ
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/etc/asdcclientstore.jks b/appc-asdc-listener/appc-asdc-listener-bundle/etc/asdcclientstore.jks
deleted file mode 100644
index 5dc006db0..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/etc/asdcclientstore.jks
+++ /dev/null
Binary files differ
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/log4j.properties b/appc-asdc-listener/appc-asdc-listener-bundle/log4j.properties
deleted file mode 100644
index abdf8675a..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/log4j.properties
+++ /dev/null
@@ -1,17 +0,0 @@
-log4j.rootCategory=DEBUG, CONSOLE, LOGFILE
-
-log4j.logger.com.att=TRACE, CONSOLE, LOGFILE
-
-# CONSOLE is set to be a ConsoleAppender using a PatternLayout.
-log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
-log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
-log4j.appender.CONSOLE.layout.ConversionPattern=%p %d{yyyy-MM-dd HH:mm:ss.SSS Z} %c{1} - %m%n
-
-# LOGFILE is set to be a File appender using a PatternLayout.
-log4j.appender.LOGFILE=org.apache.log4j.RollingFileAppender
-log4j.appender.LOGFILE.File=logs/wordnik.log
-log4j.appender.LOGFILE.Append=true
-log4j.appender.LOGFILE.layout=org.apache.log4j.PatternLayout
-log4j.appender.LOGFILE.layout.ConversionPattern=%p %d{yyyy-MM-dd HH:mm:ss.SSS Z} %c{1} - %m%n
-log4j.appender.LOGFILE.MaxFileSize=10MB
-log4j.appender.LOGFILE.MaxBackupIndex=10
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/pom.xml b/appc-asdc-listener/appc-asdc-listener-bundle/pom.xml
deleted file mode 100644
index 316cfdda0..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/pom.xml
+++ /dev/null
@@ -1,244 +0,0 @@
-<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>appc-asdc-listener</artifactId>
- <groupId>org.openecomp.appc</groupId>
- <version>1.1.0-SNAPSHOT</version>
- </parent>
-
- <properties>
- <jackson-yaml-version>2.8.1</jackson-yaml-version>
- <snakeyaml.version>1.15</snakeyaml.version>
- </properties>
-
- <artifactId>appc-asdc-listener-bundle</artifactId>
- <packaging>bundle</packaging>
-
- <dependencies>
-
- <dependency>
- <groupId>equinoxSDK381</groupId>
- <artifactId>org.eclipse.osgi</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.json</groupId>
- <artifactId>json</artifactId>
- <scope>compile</scope>
- </dependency>
- <dependency>
- <groupId>org.mockito</groupId>
- <artifactId>mockito-all</artifactId>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.mockito</groupId>
- <artifactId>mockito-core</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.powermock</groupId>
- <artifactId>powermock-module-junit4</artifactId>
- <version>1.6.2</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.powermock</groupId>
- <artifactId>powermock-api-mockito</artifactId>
- <scope>test</scope>
- </dependency>
-
- <dependency>
- <groupId>org.openecomp.sdc.sdc-distribution-client</groupId>
- <artifactId>sdc-distribution-client</artifactId>
- <version>${sdc-client.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.openecomp.appc</groupId>
- <artifactId>appc-message-adapter-api</artifactId>
- <version>${project.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.openecomp.appc</groupId>
- <artifactId>appc-message-adapter-factory</artifactId>
- <version>${project.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.yaml</groupId>
- <artifactId>snakeyaml</artifactId>
- <version>${snakeyaml.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.openecomp.appc</groupId>
- <artifactId>appc-common</artifactId>
- <version>${project.version}</version>
- </dependency>
-
-
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>compile</scope>
- </dependency>
-
- <dependency>
- <groupId>com.att.eelf</groupId>
- <artifactId>eelf-core</artifactId>
- </dependency>
- <dependency>
- <groupId>ch.qos.logback</groupId>
- <artifactId>logback-core</artifactId>
- </dependency>
- <dependency>
- <groupId>ch.qos.logback</groupId>
- <artifactId>logback-classic</artifactId>
- </dependency>
- <dependency>
- <groupId>org.functionaljava</groupId>
- <artifactId>functionaljava</artifactId>
- <version>4.2</version>
- </dependency>
- <dependency>
- <groupId>org.apache.httpcomponents</groupId>
- <artifactId>httpcore</artifactId>
- <version>4.4.1</version>
- </dependency>
- <dependency>
- <groupId>org.apache.httpcomponents</groupId>
- <artifactId>httpclient</artifactId>
- <version>4.4.1</version>
- </dependency>
-
- <dependency>
- <groupId>org.openecomp.appc</groupId>
- <artifactId>appc-license-manager-api</artifactId>
- <!-- <version>${project.version}</version> -->
- <version>${project.version}</version>
- </dependency>
-
- <dependency>
- <groupId>com.google.code.gson</groupId>
- <artifactId>gson</artifactId>
- </dependency>
-
- <dependency>
- <groupId>org.apache.velocity</groupId>
- <artifactId>velocity</artifactId>
- <version>1.7</version>
- </dependency>
-
- <dependency>
- <groupId>org.opendaylight.yangtools</groupId>
- <artifactId>yang-parser-impl</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>
-
- <dependency>
- <groupId>org.openecomp.appc</groupId>
- <artifactId>appc-dg-dependency-model</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>com.fasterxml.jackson.dataformat</groupId>
- <artifactId>jackson-dataformat-yaml</artifactId>
- <version>${jackson-yaml-version}</version>
- </dependency>
- <dependency>
- <groupId>org.openecomp.appc</groupId>
- <artifactId>appc-dg-domain-model-lib</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-annotations</artifactId>
- <version>${jackson-yaml-version}</version>
- </dependency>
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-databind</artifactId>
- <version>${jackson-yaml-version}</version>
- </dependency>
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-core</artifactId>
- <version>${jackson-yaml-version}</version>
- </dependency>
- <dependency>
- <groupId>org.yaml</groupId>
- <artifactId>snakeyaml</artifactId>
- <version>${snakeyaml.version}</version>
- </dependency>
-
- <dependency>
- <groupId>org.mockito</groupId>
- <artifactId>mockito-core</artifactId>
- </dependency>
-
-
-
- </dependencies>
-
-
- <build>
- <plugins>
-
- <!-- ================================================== -->
- <!-- Set the JDK compiler version. -->
- <!-- ================================================== -->
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <!-- <inherited>true</inherited> -->
- <configuration>
- <source>1.7</source>
- <target>1.7</target>
- </configuration>
- </plugin>
-
- <plugin>
- <groupId>org.apache.felix</groupId>
- <artifactId>maven-bundle-plugin</artifactId>
- <extensions>true</extensions>
- <configuration>
- <instructions>
- <Bundle-SymbolicName>org.openecomp.appc.sdc.listener</Bundle-SymbolicName>
- <!--Bundle-Activator>org.openecomp.appc.sdc.listener.AppcAsdcListenerActivator</Bundle-Activator -->
- <Export-Package>org.openecomp.appc.sdc.listener</Export-Package>
- <Import-Package>
- org.openecomp.appc.licmgr,
- org.openecomp.appc.adapter.messaging.*,
- com.att.eelf.*,
- *;resolution:=optional
- </Import-Package>
- <Embed-Dependency>
- sdc-distribution-client,snakeyaml,
- saClientLibrary,cambriaClient,saToolkit,
- functionaljava,httpcore,httpclient,gson,appc-dg-dependency-model,appc-dg-domain-model-lib,
- jackson-core,jackson-databind,jackson-annotations,jackson-dataformat-yaml;
- scope=compile|runtime;inline=false
- </Embed-Dependency>
- <Embed-Transitive>true</Embed-Transitive>
- </instructions>
- </configuration>
- </plugin>
- </plugins>
- </build>
-</project>
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/ArtifactProcessor.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/ArtifactProcessor.java
deleted file mode 100644
index c0f52206f..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/ArtifactProcessor.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.artifacts;
-
-import org.openecomp.appc.exceptions.APPCException;
-import org.openecomp.sdc.api.results.IDistributionClientDownloadResult;
-
-/**
- * This interface provides api processArtifact which cab have multiple implementation
- * for type of artifact app-c receives from sdc
- */
-public interface ArtifactProcessor extends Runnable {
- /**
- * Processes the artifact received from sdc
- * @param result an instance of IDistributionClientDownloadResult
- * @throws APPCException
- */
- void processArtifact(IDistributionClientDownloadResult result) throws APPCException;
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/helper/ArtifactStorageService.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/helper/ArtifactStorageService.java
deleted file mode 100644
index 160ed03d0..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/helper/ArtifactStorageService.java
+++ /dev/null
@@ -1,329 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.artifacts.helper;
-
-import org.apache.commons.lang.StringUtils;
-import org.openecomp.appc.exceptions.APPCException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import org.openecomp.appc.sdc.artifacts.object.SDCReference;
-import org.openecomp.sdnc.sli.resource.dblib.DbLibService;
-import org.openecomp.appc.sdc.artifacts.object.SDCArtifact;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.FrameworkUtil;
-import org.osgi.framework.ServiceReference;
-
-import javax.sql.rowset.CachedRowSet;
-import java.sql.SQLException;
-import java.util.ArrayList;
-
-import static org.openecomp.appc.sdc.artifacts.helper.Constants.COMMA;
-import static org.openecomp.appc.sdc.artifacts.helper.Constants.AND;
-
-/**
- * Provides methods for storing sdc artifacts into app-c database
- */
-public class ArtifactStorageService {
-
- private DbLibService dbLibService;
-
- private static final String SCHEMA = "sdnctl";
-
- private static final String SELECT_QUERY = Constants.SELECT_FROM + Constants.ASDC_ARTIFACTS +
- Constants.WHERE + Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_NAME + Constants.QUERY_PLACEHOLDER +
- AND + Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_VERSION + Constants.QUERY_PLACEHOLDER +
- AND + Constants.ARTIFACT_TYPE + Constants.QUERY_PLACEHOLDER;
-
- private static final String SELECT_QUERY_SDC_REFERENCE = Constants.SELECT_FROM + Constants.ASDC_REFERENCE +
- Constants.WHERE + Constants.ASDC_REFERENCE_FIELDS.VNF_TYPE + Constants.QUERY_PLACEHOLDER +
- AND + Constants.ASDC_REFERENCE_FIELDS.FILE_CATEGORY + Constants.QUERY_PLACEHOLDER ;
-
- private static final String INSERT_QUERY = Constants.INSERT + Constants.ASDC_ARTIFACTS +
- " ( " + Constants.ASDC_ARTIFACTS_FIELDS.SERVICE_UUID + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.DISTRIBUTION_ID + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.SERVICE_NAME + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.SERVICE_DESCRIPTION + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_UUID + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_INSTANCE_NAME + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_NAME + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_VERSION + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_TYPE + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.ARTIFACT_UUID + COMMA +
- Constants.ARTIFACT_TYPE + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.ARTIFACT_VERSION + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.ARTIFACT_DESCRIPTION + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.CREATION_DATE + COMMA +
- Constants.ARTIFACT_NAME +COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.ARTIFACT_CONTENT + " ) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
-
- private static final String INSERT_QUERY_WITH_INT_VER = Constants.INSERT + Constants.ASDC_ARTIFACTS +
- " ( " + Constants.ASDC_ARTIFACTS_FIELDS.SERVICE_UUID + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.DISTRIBUTION_ID + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.SERVICE_NAME + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.SERVICE_DESCRIPTION + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_UUID + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_INSTANCE_NAME + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_NAME + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_VERSION + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_TYPE + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.ARTIFACT_UUID + COMMA +
- Constants.ARTIFACT_TYPE + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.ARTIFACT_VERSION + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.ARTIFACT_DESCRIPTION + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.CREATION_DATE + COMMA +
- Constants.ARTIFACT_NAME + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.ARTIFACT_CONTENT + COMMA +
- Constants.ASDC_ARTIFACTS_FIELDS.INTERNAL_VERSION + " ) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";
-
- private static final String ASDC_REF_INSERT_QUERY = Constants.INSERT + Constants.ASDC_REFERENCE +
- "( "+ Constants.ASDC_REFERENCE_FIELDS.VNF_TYPE + COMMA +
- Constants.ASDC_REFERENCE_FIELDS.VNFC_TYPE+ COMMA +
- Constants.ASDC_REFERENCE_FIELDS.FILE_CATEGORY +COMMA +
- Constants.ASDC_REFERENCE_FIELDS.ACTION +COMMA +
- Constants.ARTIFACT_TYPE + COMMA +
- Constants.ARTIFACT_NAME + " ) values (?,?,?,?,?,?)";
-
- private static final String SELECT_MAX_INT_VERSION = "SELECT coalesce(max(" + Constants.ASDC_ARTIFACTS_FIELDS.INTERNAL_VERSION + ")+1,1) as " + Constants.ASDC_ARTIFACTS_FIELDS.INTERNAL_VERSION +
- " FROM " + Constants.ASDC_ARTIFACTS + Constants.WHERE + Constants.ARTIFACT_NAME + Constants.QUERY_PLACEHOLDER;
-
-
- private final EELFLogger logger = EELFManager.getInstance().getLogger(ArtifactStorageService.class);
-
- /**
- * Stores Artifact received from SDC into APP-C database
- * @param artifact - SDC Artifact object
- * @throws APPCException
- */
- public void storeASDCArtifact(SDCArtifact artifact) throws APPCException {
- if(logger.isDebugEnabled()){
- logger.debug("Entering storeASDCArtifact with : " + artifact.toString());
- }
- try {
- initializeDBLibService();
- ArrayList<String> arguments = prepareArguments(artifact);
- dbLibService.writeData(INSERT_QUERY,arguments,SCHEMA);
- } catch (SQLException e) {
- logger.error("Error storing artifact in database : " +artifact.toString(),e);
- throw new APPCException(e.getMessage(),e);
- }
- if(logger.isDebugEnabled()){
- logger.debug("Exiting storeASDCArtifact");
- }
- }
-
- /**
- * Stores Artifact received from SDC and its Reference into APP-C database if it does not exist
- * @param artifact - SDC Artifact object
- * @param reference - SDC reference object
- * @throws APPCException
- */
- public void storeASDCArtifactWithReference(SDCArtifact artifact , SDCReference reference) throws APPCException {
- if(logger.isDebugEnabled()){
- logger.debug("Entering storeASDCArtifactWithReference with : " + artifact.toString());
- }
- try {
- initializeDBLibService();
- SDCArtifact existingArtifact = retrieveSDCArtifact(artifact.getResourceName(), artifact.getResourceVersion(),artifact.getArtifactType());
- if (existingArtifact ==null) { // new resource
- logger.debug(String.format("Artifact not found for vnfType = %s, version = %s and artifactType = %s. Inserting data." ,
- artifact.getResourceName(),artifact.getResourceVersion() ,artifact.getArtifactType()));
- ArrayList<String> arguments = prepareArguments(artifact);
- Integer version = getNextInternalVersion(artifact.getArtifactName());
- arguments.add(version.toString());
- dbLibService.writeData(INSERT_QUERY_WITH_INT_VER,arguments,SCHEMA);
- } else { // duplicate
- logger.debug(String.format("Artifact of type '%s' already deployed for resource_type='%s' and resource_version='%s'",
- artifact.getArtifactType() , artifact.getResourceName() , artifact.getResourceVersion()));
- }
-
- SDCReference existingReference = retrieveSDCReference(reference.getVnfType(),reference.getFileCategory());
- if(existingReference == null){
- logger.debug("Inserting SDC Reference data: " +reference.toString());
- ArrayList<String> arguments = prepareReferenceArguments(reference);
- dbLibService.writeData(ASDC_REF_INSERT_QUERY,arguments,SCHEMA);
- }else{
- logger.debug("Artifact reference already exists for: " +reference.toString());
- }
- } catch (SQLException e) {
- logger.error("Error storing artifact to database: " + artifact.toString(),e);
- throw new APPCException(e.getMessage(),e);
- }
- if(logger.isDebugEnabled()){
- logger.debug("Exiting storeASDCArtifactWithReference");
- }
- }
-
- private Integer getNextInternalVersion(String artifactName) throws APPCException {
- if (logger.isDebugEnabled()) {
- logger.debug("Entering getNextInternalVersion with artifactName:" + artifactName);
- }
- Integer version = 1;
- try {
- initializeDBLibService();
- ArrayList<String> arguments = new ArrayList<>();
- arguments.add(artifactName);
- CachedRowSet rowSet = dbLibService.getData(SELECT_MAX_INT_VERSION, arguments, SCHEMA);
- if (rowSet.first()) {
- version = rowSet.getInt(Constants.ASDC_ARTIFACTS_FIELDS.INTERNAL_VERSION .toString());
- }
- }catch (SQLException e) {
- logger.error("Error getting internal version for artifact name " + artifactName , e);
- throw new APPCException(e);
- }
- if (logger.isDebugEnabled()) {
- logger.debug("Exiting getNextInternalVersion with retrieved version:" + version.toString());
- }
- return version;
- }
-
- private void initializeDBLibService() {
- if(dbLibService == null){
- BundleContext context = FrameworkUtil.getBundle(DbLibService.class).getBundleContext();
- ServiceReference serviceReference = context.getServiceReference(DbLibService.class.getName());
- dbLibService = (DbLibService)context.getService(serviceReference);
- }
- }
-
- private ArrayList<String> prepareReferenceArguments(SDCReference reference) {
- ArrayList<String> arguments = new ArrayList<>();
- arguments.add(reference.getVnfType());
- arguments.add(reference.getVnfcType());
- arguments.add(reference.getFileCategory());
- arguments.add(reference.getAction());
- arguments.add(reference.getArtifactType());
- arguments.add(reference.getArtifactName());
- return arguments;
- }
-
- private ArrayList<String> prepareArguments(SDCArtifact artifact) {
- ArrayList<String> arguments = new ArrayList<>();
- arguments.add(artifact.getServiceUUID());
- arguments.add(artifact.getDistributionId());
- arguments.add(artifact.getServiceName());
- arguments.add(truncateServiceDescription(artifact.getServiceDescription()));
- arguments.add(artifact.getResourceUUID());
- arguments.add(artifact.getResourceInstanceName());
- arguments.add(artifact.getResourceName());
- arguments.add(artifact.getResourceVersion());
- arguments.add(artifact.getResourceType());
- arguments.add(artifact.getArtifactUUID());
- arguments.add(artifact.getArtifactType());
- arguments.add(artifact.getArtifactVersion());
- arguments.add(artifact.getArtifactDescription());
- arguments.add(artifact.getCreationDate());
- arguments.add(artifact.getArtifactName());
- arguments.add(artifact.getArtifactContent());
- return arguments;
- }
-
- private String truncateServiceDescription(String serviceDescription){
- if (!StringUtils.isBlank(serviceDescription) && serviceDescription.length()>255){
- logger.info("Truncating the SERVICE_DESCRIPTION to 255 characters");
- serviceDescription=serviceDescription.substring(0,255);
- }
- return serviceDescription;
- }
-
- /**
- * Reads the SDC artifact from APP-C database
- * @param resourceName - resource Name from ASDC Artifact
- * @param resourceVersion - resource version from ASDC Artifact
- * @param artifactType artifact type from ASDC Artifact
- * @return - ASDC_ARTIFACT record if data exists
- * @throws APPCException
- */
- public SDCArtifact retrieveSDCArtifact(String resourceName, String resourceVersion, String artifactType) throws APPCException {
- SDCArtifact artifact = null;
- try {
- initializeDBLibService();
- ArrayList<String> arguments = new ArrayList<>();
- arguments.add(resourceName);
- arguments.add(resourceVersion);
- arguments.add(artifactType);
- CachedRowSet rowSet = dbLibService.getData(SELECT_QUERY, arguments, SCHEMA);
- if (rowSet.first()) {
- artifact = new SDCArtifact();
- artifact.setArtifactUUID(rowSet.getString(Constants.ASDC_ARTIFACTS_FIELDS.ARTIFACT_UUID.toString()));
- artifact.setArtifactName(rowSet.getString(Constants.ARTIFACT_NAME));
- artifact.setArtifactType(rowSet.getString(Constants.ARTIFACT_TYPE));
- artifact.setArtifactVersion(rowSet.getString(Constants.ASDC_ARTIFACTS_FIELDS.ARTIFACT_VERSION.toString()));
- artifact.setArtifactDescription(rowSet.getString(Constants.ASDC_ARTIFACTS_FIELDS.ARTIFACT_DESCRIPTION.toString()));
- artifact.setArtifactContent(rowSet.getString(Constants.ASDC_ARTIFACTS_FIELDS.ARTIFACT_CONTENT.toString()));
-
- artifact.setResourceUUID(rowSet.getString(Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_UUID.toString()));
- artifact.setResourceName(rowSet.getString(Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_NAME.toString()));
- artifact.setResourceType(rowSet.getString(Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_TYPE.toString()));
- artifact.setResourceVersion(rowSet.getString(Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_VERSION.toString()));
- artifact.setResourceInstanceName(rowSet.getString(Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_INSTANCE_NAME.toString()));
-
- artifact.setServiceUUID(rowSet.getString(Constants.ASDC_ARTIFACTS_FIELDS.SERVICE_UUID.toString()));
- artifact.setServiceName(rowSet.getString(Constants.ASDC_ARTIFACTS_FIELDS.SERVICE_NAME.toString()));
- artifact.setServiceDescription(rowSet.getString(Constants.ASDC_ARTIFACTS_FIELDS.SERVICE_DESCRIPTION.toString()));
-
- artifact.setCreationDate(rowSet.getString(Constants.ASDC_ARTIFACTS_FIELDS.CREATION_DATE.toString()));
- artifact.setDistributionId(rowSet.getString(Constants.ASDC_ARTIFACTS_FIELDS.DISTRIBUTION_ID.toString()));
- }
-
- } catch (SQLException e) {
- logger.error("Error query artifact for " + Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_NAME + " = " + resourceName +
- Constants.ASDC_ARTIFACTS_FIELDS.RESOURCE_VERSION + " = " + resourceVersion +
- Constants.ARTIFACT_TYPE + " = " + artifactType, e);
- throw new APPCException(e);
- }
- return artifact;
- }
-
- /**
- * Reads the SDC reference from APP-C database
- * @param vnfType - vnf Type from ASDC reference
- * @param fileCategory - file category from ASDC reference
- * @return - ASDC_ARTIFACT record if data exists
- * @throws APPCException
- */
- public SDCReference retrieveSDCReference(String vnfType, String fileCategory) throws APPCException {
- SDCReference reference = null;
- try {
- initializeDBLibService();
- ArrayList<String> arguments = new ArrayList<>();
- arguments.add(vnfType);
- arguments.add(fileCategory);
- CachedRowSet rowSet = dbLibService.getData(SELECT_QUERY_SDC_REFERENCE, arguments, SCHEMA);
- if (rowSet.first()) {
- reference = new SDCReference();
- reference.setVnfType(rowSet.getString(Constants.ASDC_REFERENCE_FIELDS.VNF_TYPE.toString()));
- reference.setVnfcType(rowSet.getString(Constants.ASDC_REFERENCE_FIELDS.VNFC_TYPE.toString()));
- reference.setFileCategory(rowSet.getString(Constants.ASDC_REFERENCE_FIELDS.FILE_CATEGORY.toString()));
- reference.setAction(rowSet.getString(Constants.ASDC_REFERENCE_FIELDS.ACTION.toString()));
- reference.setArtifactType(rowSet.getString(Constants.ARTIFACT_TYPE));
- reference.setArtifactName(rowSet.getString(Constants.ARTIFACT_NAME));
- }
- } catch (SQLException e) {
- logger.error("Error querying ASDC_REFERENCE for " + Constants.ASDC_REFERENCE_FIELDS.VNF_TYPE + " = " + vnfType +
- Constants.ASDC_REFERENCE_FIELDS.FILE_CATEGORY + " = " + fileCategory , e);
- throw new APPCException(e);
- }
- return reference;
- }
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/helper/Constants.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/helper/Constants.java
deleted file mode 100644
index 67f8025d2..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/helper/Constants.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.artifacts.helper;
-
-/**
- * Constants required in ASDC listener module
- */
-public class Constants {
- static final String ASDC_ARTIFACTS = "ASDC_ARTIFACTS";
- static final String ASDC_REFERENCE = "ASDC_REFERENCE";
-
- static final String AND = " AND ";
-
- static final String ARTIFACT_TYPE = "ARTIFACT_TYPE";
- static final String ARTIFACT_NAME = "ARTIFACT_NAME";
-
- static final String VF_LICENSE = "VF_LICENSE";
-
- public enum ASDC_ARTIFACTS_FIELDS {
- SERVICE_UUID,
- DISTRIBUTION_ID,
- SERVICE_NAME,
- SERVICE_DESCRIPTION,
- RESOURCE_UUID,
- RESOURCE_INSTANCE_NAME,
- RESOURCE_NAME,
- RESOURCE_VERSION,
- RESOURCE_TYPE,
- ARTIFACT_UUID,
- ARTIFACT_VERSION,
- ARTIFACT_DESCRIPTION,
- INTERNAL_VERSION,
- CREATION_DATE,
- ARTIFACT_CONTENT
- }
-
- public enum ASDC_REFERENCE_FIELDS{
- ASDC_REFERENCE_ID,
- VNF_TYPE,
- VNFC_TYPE,
- FILE_CATEGORY,
- ACTION
- }
-
- static final String COMMA = " , ";
- static final String QUERY_PLACEHOLDER = " = ? ";
- static final String SELECT_FROM = "SELECT * FROM " ;
- static final String WHERE = " WHERE ";
- static final String INSERT = "INSERT INTO ";
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/helper/DependencyModelGenerator.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/helper/DependencyModelGenerator.java
deleted file mode 100644
index 0f8065a30..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/helper/DependencyModelGenerator.java
+++ /dev/null
@@ -1,97 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.artifacts.helper;
-
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import com.fasterxml.jackson.annotation.JsonInclude;
-import com.fasterxml.jackson.core.JsonProcessingException;
-import com.fasterxml.jackson.databind.MapperFeature;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.databind.ObjectWriter;
-import org.openecomp.appc.dg.dependencymanager.helper.DependencyModelParser;
-import org.openecomp.appc.dg.objects.Node;
-import org.openecomp.appc.dg.objects.VnfcDependencyModel;
-import org.openecomp.appc.domainmodel.Vnfc;
-import org.openecomp.appc.exceptions.APPCException;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * Provides method for genrating Dependency JSON from Tosca model
- */
-public class DependencyModelGenerator {
-
- private final EELFLogger logger = EELFManager.getInstance().getLogger(DependencyModelGenerator.class);
-
- /**
- *
- * @param tosca - tosca string from SDC
- * @param vnfType - Vnf Type from tosca
- * @return - Dependency JSON in String format
- * @throws APPCException is thrown if error occurs
- */
- public String getDependencyModel(String tosca, String vnfType) throws APPCException {
- logger.debug(String.format("Generating dependency model for vnfType : %s , TOSCA: %s ", vnfType ,tosca));
- String dependencyJson;
- DependencyModelParser dependencyModelParser = new DependencyModelParser();
- VnfcDependencyModel vnfcDependencyModel = dependencyModelParser.generateDependencyModel(tosca, vnfType);
-
- if (vnfcDependencyModel != null && !vnfcDependencyModel.getDependencies().isEmpty()) {
- logger.debug(String.format("Dependency Model generated : %s ", vnfcDependencyModel.toString()));
- List<org.openecomp.appc.sdc.artifacts.object.Vnfc> vnfcs = new ArrayList<>();
-
- for (Node<Vnfc> node : vnfcDependencyModel.getDependencies()) {
- org.openecomp.appc.sdc.artifacts.object.Vnfc vnfc = new org.openecomp.appc.sdc.artifacts.object.Vnfc();
- vnfc.setVnfcType(node.getChild().getVnfcType());
- vnfc.setMandatory(node.getChild().isMandatory());
- vnfc.setResilienceType(node.getChild().getResilienceType());
- if (node.getParents() != null && !node.getParents().isEmpty()) {
- List<String> parents = new ArrayList<>();
- for (Vnfc parentNode : node.getParents()) {
- parents.add(parentNode.getVnfcType());
- }
- vnfc.setParents(parents);
- }
- vnfcs.add(vnfc);
- }
- ObjectMapper objectMapper = new ObjectMapper();
-
- ObjectWriter writer = objectMapper.setSerializationInclusion(JsonInclude.Include.NON_NULL).configure
- (MapperFeature.SORT_PROPERTIES_ALPHABETICALLY, true).writer().withRootName("vnfcs");
- try {
- dependencyJson = writer.writeValueAsString(vnfcs);
- } catch (JsonProcessingException e) {
- logger.error("Error converting dependency model to JSON");
- throw new APPCException("Error converting dependency model to JSON",e);
- }
- } else {
- logger.error("Error generating dependency model from tosca. Empty dependency model");
- throw new APPCException("Error generating dependency model from tosca. Empty dependency model");
- }
- return dependencyJson;
- }
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/AbstractArtifactProcessor.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/AbstractArtifactProcessor.java
deleted file mode 100644
index 12fd260d0..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/AbstractArtifactProcessor.java
+++ /dev/null
@@ -1,196 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.artifacts.impl;
-
-import org.openecomp.appc.adapter.message.EventSender;
-import org.openecomp.appc.adapter.message.MessageDestination;
-import org.openecomp.appc.adapter.message.event.EventHeader;
-import org.openecomp.appc.adapter.message.event.EventMessage;
-import org.openecomp.appc.adapter.message.event.EventStatus;
-import org.openecomp.appc.sdc.listener.Util;
-import org.openecomp.appc.exceptions.APPCException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import org.openecomp.appc.sdc.artifacts.ArtifactProcessor;
-import org.openecomp.appc.sdc.artifacts.helper.ArtifactStorageService;
-import org.openecomp.appc.sdc.artifacts.object.SDCArtifact;
-import org.openecomp.sdc.api.IDistributionClient;
-import org.openecomp.sdc.api.notification.IArtifactInfo;
-import org.openecomp.sdc.api.notification.INotificationData;
-import org.openecomp.sdc.api.notification.IResourceInstance;
-import org.openecomp.sdc.api.results.IDistributionClientDownloadResult;
-import org.openecomp.sdc.utils.DistributionActionResultEnum;
-import org.openecomp.sdc.utils.DistributionStatusEnum;
-
-import java.io.UnsupportedEncodingException;
-import java.net.URI;
-import java.text.DateFormat;
-import java.text.SimpleDateFormat;
-import java.util.Date;
-
-/**
- * Provides abstrace implementation for SDC artifact processor
- */
-public abstract class AbstractArtifactProcessor implements ArtifactProcessor {
-
- public static final String PAYLOAD_CHARSET = "UTF-8";
- private static final String DATE_FORMAT = "yyyy/MM/dd HH:mm:ss";
-
- protected IDistributionClient client;
- protected EventSender eventSender;
-
- protected INotificationData notification;
- protected IResourceInstance resource;
- protected IArtifactInfo artifact;
- protected URI storeUri;
-
- private final EELFLogger logger = EELFManager.getInstance().getLogger(AbstractArtifactProcessor.class);
-
- protected ArtifactStorageService artifactStorageService;
-
- private AbstractArtifactProcessor(){
- artifactStorageService = new ArtifactStorageService();
- }
-
- AbstractArtifactProcessor(IDistributionClient client, EventSender eventSender, INotificationData notification, IResourceInstance resource,
- IArtifactInfo artifact, URI storeUri){
-
- this();
- this.client = client;
- this.eventSender = eventSender;
- this.notification = notification;
- this.resource = resource;
- this.artifact = artifact;
- this.storeUri = storeUri;
- }
-
- @Override
- public void run(){
-
- try{
- logger.info(String.format("Attempting to download artifact %s", artifact));
- // Download artifact
- IDistributionClientDownloadResult download = client.download(artifact);
-
- logger.info(String.format("Download of artifact %s completed with status %s", artifact.getArtifactUUID(), download));
-
- // Notify of download status
- if (download.getDistributionActionResult() != DistributionActionResultEnum.SUCCESS) {
- client.sendDownloadStatus(Util.buildDistributionStatusMessage(client, notification, artifact,
- DistributionStatusEnum.DOWNLOAD_ERROR), download.getDistributionMessageResult());
- sendDCAEEvent(notification.getDistributionID(), notification.getServiceName(), notification.getServiceVersion(), "Download is failed.");
- return;
- }
-
- client.sendDownloadStatus(Util.buildDistributionStatusMessage(client, notification, artifact, DistributionStatusEnum.DOWNLOAD_OK));
-
- processArtifact(download);
-
- client.sendDeploymentStatus(
- Util.buildDistributionStatusMessage(client, notification, this.artifact, DistributionStatusEnum.DEPLOY_OK));
- }
- catch (Exception e){
- logger.error("Error processing artifact " + this.artifact.toString() ,e);
-
- client.sendDeploymentStatus(Util.buildDistributionStatusMessage(client, notification, artifact,
- DistributionStatusEnum.DEPLOY_ERROR), e.getMessage());
- sendDCAEEvent(notification.getDistributionID(), notification.getServiceName(), notification.getServiceVersion(), e.getMessage());
- }
- }
-
-
- @Override
- public void processArtifact(IDistributionClientDownloadResult download) throws APPCException {
- String data = null;
- if(logger.isDebugEnabled()){
- logger.debug("Entry processArtifact in AbstractArtifactProcessor");
- }
- try {
- if (download.getArtifactPayload() != null) {
- data = new String(download.getArtifactPayload(), PAYLOAD_CHARSET);
- }
- } catch (UnsupportedEncodingException e) {
- logger.error("Error reading artifact with " + PAYLOAD_CHARSET + " encoding" + new String(download.getArtifactPayload()) ,e);
- throw new APPCException(e);
- }
-
- SDCArtifact sdcArtifact = getArtifactObject(data);
- logger.debug("Constructed SDCArtifact = " + sdcArtifact);
- processArtifact(sdcArtifact);
-
- if(logger.isDebugEnabled()){
- logger.debug("Exit processArtifact in AbstractArtifactProcessor");
- }
- }
-
- protected abstract void processArtifact(SDCArtifact artifact) throws APPCException;
-
- protected SDCArtifact getArtifactObject(String data){
-
- SDCArtifact sdcArtifact = new SDCArtifact();
-
- sdcArtifact.setArtifactUUID(this.artifact.getArtifactUUID());
- sdcArtifact.setArtifactName(this.artifact.getArtifactName());
- sdcArtifact.setArtifactType(this.artifact.getArtifactType());
- sdcArtifact.setArtifactVersion(this.artifact.getArtifactVersion());
- sdcArtifact.setArtifactDescription(this.artifact.getArtifactDescription());
- sdcArtifact.setArtifactContent(data);
- sdcArtifact.setCreationDate(getCurrentDateTime());
-
- sdcArtifact.setDistributionId(this.notification.getDistributionID());
- sdcArtifact.setServiceUUID(this.notification.getServiceUUID());
- sdcArtifact.setServiceName(this.notification.getServiceName());
- sdcArtifact.setServiceDescription(this.notification.getServiceDescription());
-
- sdcArtifact.setResourceName(this.resource.getResourceName());
- sdcArtifact.setResourceType(this.resource.getResourceType());
- sdcArtifact.setResourceVersion(this.resource.getResourceVersion());
- sdcArtifact.setResourceUUID(this.resource.getResourceUUID());
- sdcArtifact.setResourceInstanceName(this.resource.getResourceInstanceName());
-
- return sdcArtifact;
- }
-
- protected String getCurrentDateTime() {
- DateFormat dateFormat = new SimpleDateFormat(DATE_FORMAT);
- Date date = new Date();
- return dateFormat.format(date);
- }
-
- private void sendDCAEEvent(String distributionID, String serviceName, String serviceVersion, String errorMessage) {
- if (null == eventSender){
- return;
- }
- String errorDescription = String.format("ASDC distribution of service '%s', version '%s' is failed with reason: '%s'",
- serviceName, serviceVersion, errorMessage);
-
- EventMessage eventMessage = new EventMessage(
- new EventHeader((new Date()).toString(), serviceVersion, distributionID),
- new EventStatus(401, errorDescription));
-
- eventSender.sendEvent(MessageDestination.DCAE, eventMessage);
- }
-
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/ArtifactProcessorFactory.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/ArtifactProcessorFactory.java
deleted file mode 100644
index aa9d0e04b..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/ArtifactProcessorFactory.java
+++ /dev/null
@@ -1,89 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.artifacts.impl;
-
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import org.openecomp.appc.adapter.message.EventSender;
-import org.openecomp.appc.sdc.artifacts.ArtifactProcessor;
-import org.openecomp.appc.sdc.artifacts.object.ArtifactType;
-import org.openecomp.appc.sdc.listener.AsdcListener;
-import org.openecomp.sdc.api.IDistributionClient;
-import org.openecomp.sdc.api.notification.IArtifactInfo;
-import org.openecomp.sdc.api.notification.INotificationData;
-import org.openecomp.sdc.api.notification.IResourceInstance;
-
-import java.net.URI;
-
-/**
- * Factory class for creating instance of Artifact Processor
- */
-public class ArtifactProcessorFactory {
-
- private static final EELFLogger logger = EELFManager.getInstance().getLogger(ArtifactProcessorFactory.class);
-
- private ArtifactProcessorFactory (){
-
- }
-
- /**
- * Provides and instance of Artifact Processor
- * @param client an instance of IDistributionClient
- * @param eventSender an instance of EventSender
- * @param notification an instance of INotificationData
- * @param resource an instance of IResourceInstance
- * @param artifact an instance of IArtifactInfo
- * @param storeUri
- * @return
- */
- public static ArtifactProcessor getArtifactProcessor(IDistributionClient client, EventSender eventSender,
- INotificationData notification, IResourceInstance resource,
- IArtifactInfo artifact, URI storeUri) {
-
- logger.debug("Creating artifact processor for artifact type = " + artifact.getArtifactType());
- ArtifactType artifactType = ArtifactType.getArtifactType(artifact.getArtifactType());
- if(artifactType == null){
- return null;
- }
- ArtifactProcessor artifactProcessor = null;
- switch (artifactType){
- case APPC_CONFIG :
- artifactProcessor = new ConfigArtifactProcessor(client, eventSender, notification, resource,
- artifact, storeUri);
- break;
- case VF_LICENSE:
- artifactProcessor = new LicenseArtifactProcessor(client,eventSender,notification,resource,
- artifact,storeUri);
- break;
- case TOSCA_CSAR:
- artifactProcessor = new ToscaCsarArtifactProcessor(client,eventSender,notification,resource,
- artifact,storeUri);
- default:
- break;
- }
- return artifactProcessor;
- }
-
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/ConfigArtifactProcessor.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/ConfigArtifactProcessor.java
deleted file mode 100644
index 3667b6b2a..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/ConfigArtifactProcessor.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.artifacts.impl;
-
-import org.openecomp.appc.adapter.message.EventSender;
-import org.openecomp.appc.sdc.listener.ProviderOperations;
-import org.openecomp.appc.sdc.listener.ProviderResponse;
-import org.openecomp.appc.sdc.listener.Util;
-import org.openecomp.appc.exceptions.APPCException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import org.openecomp.appc.sdc.artifacts.object.SDCArtifact;
-import org.openecomp.sdc.api.IDistributionClient;
-import org.openecomp.sdc.api.notification.IArtifactInfo;
-import org.openecomp.sdc.api.notification.INotificationData;
-import org.openecomp.sdc.api.notification.IResourceInstance;
-
-import java.net.MalformedURLException;
-import java.net.URI;
-
-/**
- * Artifact processor for config artifact type
- */
-public class ConfigArtifactProcessor extends AbstractArtifactProcessor {
-
- private final EELFLogger logger = EELFManager.getInstance().getLogger(ConfigArtifactProcessor.class);
-
- /**
- * returns an instance of ConfigArtifactProcessor
- * @param client an instance of IDistributionClient
- * @param eventSender an instance of EventSender
- * @param notification an instance of INotificationData
- * @param resource an instance of IResourceInstance
- * @param artifact an instance of IArtifactInfo
- * @param storeUri an instance of URI
- */
- public ConfigArtifactProcessor(IDistributionClient client, EventSender eventSender, INotificationData notification, IResourceInstance resource, IArtifactInfo artifact, URI storeUri) {
- super(client,eventSender,notification,resource,artifact,storeUri);
- }
-
- @Override
- public void processArtifact(SDCArtifact artifact) throws APPCException {
- String postData = Util.toAsdcStoreDocumentInput(notification, resource, super.artifact, artifact.getArtifactContent());
- try {
- ProviderResponse result = ProviderOperations.post(storeUri.toURL(), postData, null);
- if (result.getStatus() == 200) {
- Util.parseResponse(result.getBody());
- }
- } catch (MalformedURLException | APPCException e) {
- logger.error("Error processing artifact : " + this.artifact.toString(),e);
- throw new APPCException(e.getMessage(),e);
- }
- }
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/LicenseArtifactProcessor.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/LicenseArtifactProcessor.java
deleted file mode 100644
index 9cbc56276..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/LicenseArtifactProcessor.java
+++ /dev/null
@@ -1,92 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.artifacts.impl;
-
-import org.openecomp.appc.adapter.message.EventSender;
-import org.openecomp.appc.exceptions.APPCException;
-import org.openecomp.appc.licmgr.Constants;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import org.apache.commons.lang.StringUtils;
-import org.openecomp.appc.sdc.artifacts.object.SDCArtifact;
-import org.openecomp.sdc.api.IDistributionClient;
-import org.openecomp.sdc.api.notification.IArtifactInfo;
-import org.openecomp.sdc.api.notification.INotificationData;
-import org.openecomp.sdc.api.notification.IResourceInstance;
-
-import java.net.URI;
-
-/**
- * Artifact processor for VNF license artifact type
- */
-public class LicenseArtifactProcessor extends AbstractArtifactProcessor {
-
- private final EELFLogger logger = EELFManager.getInstance().getLogger(LicenseArtifactProcessor.class);
-
- /**
- * returns an instance of ConfigArtifactProcessor
- * @param client an instance of IDistributionClient
- * @param eventSender an instance of EventSender
- * @param notification an instance of INotificationData
- * @param resource an instance of IResourceInstance
- * @param artifact an instance of IArtifactInfo
- * @param storeUri an instance of URI
- */
- public LicenseArtifactProcessor(IDistributionClient client, EventSender eventSender, INotificationData notification, IResourceInstance resource, IArtifactInfo artifact, URI storeUri) {
- super(client,eventSender,notification,resource,artifact,storeUri);
- }
-
- @Override
- public void processArtifact(SDCArtifact artifact) throws APPCException {
-
- String vnfType = artifact.getResourceName();
- String version = artifact.getResourceVersion();
- String packageArtifactID = artifact.getArtifactUUID();
-
- if (StringUtils.isEmpty(vnfType) ||
- StringUtils.isEmpty(version) ||
- StringUtils.isEmpty(packageArtifactID)) {
- String errStr = String.format("Missing information in ASDC request. Details: resource_type='%s', resource_version='%s', artifactID='%s'", vnfType, version, packageArtifactID);
- logger.error(errStr);
- throw new APPCException(errStr);
- }
-
- try {
- SDCArtifact existingArtifact = artifactStorageService.retrieveSDCArtifact(vnfType, version,artifact.getArtifactType());
-
- if (existingArtifact ==null) { // new resource
- logger.debug("Artifact not found from database for vnfType = " + vnfType + " , version = " + version + " , artifactType = " + artifact.getArtifactType());
- artifactStorageService.storeASDCArtifact(artifact);
- } else { // duplicate
- logger.debug("Artifact retrieved from database = " + existingArtifact);
- logger.warn(String.format("Artifact of type '%s' already deployed for resource_type='%s' and resource_version='%s'", Constants.VF_LICENSE, vnfType, version));
- }
-
- } catch (Exception e) {
- logger.error("Error processing artifact : " + artifact.toString(),e);
- throw new APPCException(e.getMessage(),e);
- }
- }
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/ToscaCsarArtifactProcessor.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/ToscaCsarArtifactProcessor.java
deleted file mode 100644
index 085902187..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/impl/ToscaCsarArtifactProcessor.java
+++ /dev/null
@@ -1,241 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.artifacts.impl;
-
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import com.fasterxml.jackson.databind.JsonNode;
-import com.fasterxml.jackson.databind.ObjectMapper;
-import com.fasterxml.jackson.dataformat.yaml.YAMLFactory;
-import org.apache.commons.lang.StringUtils;
-import org.openecomp.appc.adapter.message.EventSender;
-import org.openecomp.appc.exceptions.APPCException;
-import org.openecomp.appc.licmgr.Constants;
-import org.openecomp.appc.sdc.artifacts.helper.DependencyModelGenerator;
-import org.openecomp.appc.sdc.artifacts.object.Resource;
-import org.openecomp.appc.sdc.artifacts.object.SDCArtifact;
-import org.openecomp.appc.sdc.artifacts.object.SDCReference;
-import org.openecomp.sdc.api.IDistributionClient;
-import org.openecomp.sdc.api.notification.IArtifactInfo;
-import org.openecomp.sdc.api.notification.INotificationData;
-import org.openecomp.sdc.api.notification.IResourceInstance;
-import org.openecomp.sdc.api.results.IDistributionClientDownloadResult;
-
-import javax.json.Json;
-import java.io.*;
-import java.net.URI;
-import java.util.*;
-import java.util.zip.ZipEntry;
-import java.util.zip.ZipInputStream;
-
-public class ToscaCsarArtifactProcessor extends AbstractArtifactProcessor{
-
- private final EELFLogger logger = EELFManager.getInstance().getLogger(ToscaCsarArtifactProcessor.class);
-
- private DependencyModelGenerator dependencyModelGenerator;
-
- public ToscaCsarArtifactProcessor(IDistributionClient client, EventSender eventSender, INotificationData notification, IResourceInstance resource,
- IArtifactInfo artifact, URI storeUri){
- super(client,eventSender,notification,resource,artifact,storeUri);
- dependencyModelGenerator = new DependencyModelGenerator();
- }
-
- @Override
- public void processArtifact(IDistributionClientDownloadResult download) throws APPCException {
- logger.debug("processing artifact " + super.artifact.getArtifactType());
- byte[] byteArray = download.getArtifactPayload();
- String serviceFileName = "";
- String serviceTemplateContent = "";
- List<Resource> resources = null;
- Map<String,String> csarFiles = new HashMap<>();
- try (ZipInputStream inputStream = new ZipInputStream(new ByteArrayInputStream(byteArray))) {
- ZipEntry entry = inputStream.getNextEntry();
- logger.debug("First Entry = " +entry);
- while(entry!= null){
- String filename = entry.getName();
- logger.debug("Next Entry = "+ filename);
-
- BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
- String str = null;
- StringBuilder sb = new StringBuilder();
- while((str = bufferedReader.readLine()) != null){
- sb.append(new String(str)).append(System.getProperty("line.separator"));
- }
- csarFiles.put(filename,sb.toString());
- entry = inputStream.getNextEntry();
- }
-
- } catch (IOException e) {
- logger.error("Error Reading TOSCA.meta from CSAR",e);
- throw new APPCException(e);
- }
- serviceFileName = readServiceFileName(csarFiles.get("TOSCA-Metadata/TOSCA.meta"));
- logger.debug("Service File Name = " + serviceFileName);
- serviceTemplateContent = csarFiles.get(serviceFileName);
-
- try {
- resources = readResources (serviceTemplateContent);
- } catch (Exception e) {
- logger.error("Error reading resources from " + ", serviceFileName = " + serviceFileName
- + ", TOSCA Metadata = " + csarFiles.get("TOSCA-Metadata/TOSCA.meta"),e);
- throw new APPCException(e);
- }
-
- for(Resource resource:resources){
- String resourceTemplate = csarFiles.get("Definitions/resource-" + resource.getFileNameTag() + "-template.yml");
- SDCArtifact artifact = this.getArtifactObject(resource,resourceTemplate);
- processArtifact(artifact);
- }
- }
-
- private String readServiceFileName(String toscaMetadata) {
- toscaMetadata = toscaMetadata.substring(toscaMetadata.indexOf("Entry-Definitions"), toscaMetadata.indexOf(System.getProperty("line.separator"),toscaMetadata.indexOf("Entry-Definitions")));
- toscaMetadata =toscaMetadata.split(":")[1].trim();
- return toscaMetadata;
- }
-
- protected SDCArtifact getArtifactObject(Resource resource, String data){
-
- SDCArtifact sdcArtifact = new SDCArtifact();
-
- sdcArtifact.setArtifactUUID(this.artifact.getArtifactUUID());
- sdcArtifact.setArtifactName(this.artifact.getArtifactName());
- sdcArtifact.setArtifactType(this.artifact.getArtifactType());
- sdcArtifact.setArtifactVersion(this.artifact.getArtifactVersion());
- sdcArtifact.setArtifactDescription(this.artifact.getArtifactDescription());
- sdcArtifact.setArtifactContent(data);
- sdcArtifact.setCreationDate(super.getCurrentDateTime());
-
- sdcArtifact.setDistributionId(this.notification.getDistributionID());
- sdcArtifact.setServiceUUID(this.notification.getServiceUUID());
- sdcArtifact.setServiceName(this.notification.getServiceName());
- sdcArtifact.setServiceDescription(this.notification.getServiceDescription());
-
- sdcArtifact.setResourceName(resource.getName());
- sdcArtifact.setResourceType(resource.getType());
- sdcArtifact.setResourceVersion(resource.getVersion());
- sdcArtifact.setResourceUUID(resource.getUuid());
- sdcArtifact.setResourceInstanceName(resource.getInstanceName());
-
- return sdcArtifact;
- }
-
- private List<Resource> readResources(String serviceTemplateContent) throws IOException {
- List<Resource> resources = new LinkedList<>();
- ObjectMapper mapper = new ObjectMapper(new YAMLFactory());
- JsonNode root = mapper.readTree(serviceTemplateContent);
- JsonNode topologyTemplate = root.get("topology_template");
- JsonNode nodeTemplates = topologyTemplate.get("node_templates");
- Iterator<Map.Entry<String, JsonNode>> itr = nodeTemplates.fields();
- while(itr.hasNext()){
- Map.Entry<String, JsonNode> entry = itr.next();
- String instanceName = entry.getKey();
- JsonNode nodeTemplate = entry.getValue();
-
- String fileNameTag = nodeTemplate.get("type").asText();
- logger.debug("Resource type in Service Template = " + fileNameTag);
- fileNameTag = fileNameTag.substring(fileNameTag.lastIndexOf(".")+1,fileNameTag.length());
- String version = nodeTemplate.get("metadata").get("version").asText();
- String uuid = nodeTemplate.get("metadata").get("UUID").asText();
- String name = nodeTemplate.get("metadata").get("name").asText();
- String type = nodeTemplate.get("metadata").get("type").asText();
-
- if(!"VF".equalsIgnoreCase(type)){
- continue;
- }
-
- Resource resource = new Resource();
- resource.setFileNameTag(fileNameTag);
- resource.setVersion(version);
- resource.setUuid(uuid);
- resource.setInstanceName(instanceName);
- resource.setName(name);
- resource.setType(type);
-
- resources.add(resource);
- }
- return resources;
- }
-
-
- @Override
- protected void processArtifact(SDCArtifact artifact) throws APPCException {
- String vnfType = artifact.getResourceName();
- String version = artifact.getResourceVersion();
- String packageArtifactID = artifact.getArtifactUUID();
-
- if (StringUtils.isEmpty(vnfType) ||
- StringUtils.isEmpty(version) ||
- StringUtils.isEmpty(packageArtifactID)) {
- String errStr = String.format("Missing information in SDC request. Details: resource_type='%s', resource_version='%s', artifactID='%s'", vnfType, version, packageArtifactID);
- logger.error(errStr);
- throw new APPCException(errStr);
- }
- try {
- SDCReference reference = new SDCReference();
- reference.setVnfType(vnfType);
- reference.setFileCategory("tosca_model");
- reference.setArtifactName(artifact.getArtifactName());
- logger.debug("Storing TOSCA to ASDC Artifact");
- artifactStorageService.storeASDCArtifactWithReference(artifact,reference);
-
- SDCArtifact dependencyArtifact = getDependencyArtifact(artifact);
- SDCReference dependencyReference = new SDCReference();
- dependencyReference.setVnfType(vnfType);
- dependencyReference.setFileCategory("tosca_dependency_model");
- dependencyReference.setArtifactName(dependencyArtifact.getArtifactName());
- logger.debug("Storing Dependency to ASDC Artifact");
- artifactStorageService.storeASDCArtifactWithReference(dependencyArtifact,dependencyReference);
- } catch (Exception e) {
- logger.error("Error processing artifact : " + artifact.toString() );
- throw new APPCException(e.getMessage(),e);
- }
- }
-
- private SDCArtifact getDependencyArtifact(SDCArtifact toscaArtifact) throws APPCException {
- SDCArtifact artifact = new SDCArtifact();
- artifact.setArtifactName("dependency_"+toscaArtifact.getArtifactName());
- String dependencyModel = dependencyModelGenerator.getDependencyModel(toscaArtifact.getArtifactContent(),toscaArtifact.getResourceName());
- artifact.setArtifactContent(dependencyModel);
- artifact.setArtifactType("DEPENDENCY_MODEL");
-
- artifact.setArtifactUUID(toscaArtifact.getArtifactUUID());
- artifact.setArtifactVersion(toscaArtifact.getArtifactVersion());
- artifact.setArtifactDescription(toscaArtifact.getArtifactDescription());
- artifact.setCreationDate(super.getCurrentDateTime());
- artifact.setDistributionId(toscaArtifact.getDistributionId());
- artifact.setServiceUUID(toscaArtifact.getServiceUUID());
- artifact.setServiceName(toscaArtifact.getServiceName());
- artifact.setServiceDescription(toscaArtifact.getServiceDescription());
- artifact.setResourceName(toscaArtifact.getResourceName());
- artifact.setResourceType(toscaArtifact.getResourceType());
- artifact.setResourceVersion(toscaArtifact.getResourceVersion());
- artifact.setResourceUUID(toscaArtifact.getResourceUUID());
- artifact.setResourceInstanceName(toscaArtifact.getResourceInstanceName());
- return artifact;
- }
-
-
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/ArtifactType.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/ArtifactType.java
deleted file mode 100644
index 1ff62385d..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/ArtifactType.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.artifacts.object;
-
-/**
- * Enummration listing SDC artifact types
- */
-public enum ArtifactType {
- APPC_CONFIG,VF_LICENSE,TOSCA_CSAR;
-
- /**
- * returns ArtifactType for the input string type
- * @param artifactTypeStr
- * @return
- */
- public static ArtifactType getArtifactType(String artifactTypeStr){
- for(ArtifactType artifactType: ArtifactType.values()){
- if(artifactType.name().equals(artifactTypeStr)){
- return artifactType;
- }
- }
- return null;
- }
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/Resource.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/Resource.java
deleted file mode 100644
index 42716dc47..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/Resource.java
+++ /dev/null
@@ -1,87 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.artifacts.object;
-
-public class Resource {
- private String name;
- private String type;
- private String version;
- private String uuid;
- private String instanceName;
- private String fileNameTag;
-
- public Resource(){
-
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public String getType() {
- return type;
- }
-
- public void setType(String type) {
- this.type = type;
- }
-
- public String getVersion() {
- return version;
- }
-
- public void setVersion(String version) {
- this.version = version;
- }
-
- public String getUuid() {
- return uuid;
- }
-
- public void setUuid(String uuid) {
- this.uuid = uuid;
- }
-
- public String getInstanceName() {
- return instanceName;
- }
-
- public void setInstanceName(String instanceName) {
- this.instanceName = instanceName;
- }
-
-
- public String getFileNameTag() {
- return fileNameTag;
- }
-
- public void setFileNameTag(String fileNameTag) {
- this.fileNameTag = fileNameTag;
- }
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/SDCArtifact.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/SDCArtifact.java
deleted file mode 100644
index 6cba5b2a2..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/SDCArtifact.java
+++ /dev/null
@@ -1,215 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.artifacts.object;
-
-/**
- * POJO containing metadata about SDC artifact
- */
-public class SDCArtifact {
-
- private String artifactUUID;
-
- private String artifactName;
-
- private String artifactType;
-
- private String artifactVersion;
-
- private String artifactContent;
-
- private String artifactDescription;
-
- private String creationDate;
-
- private String distributionId;
-
-
-
- private String resourceUUID;
-
- private String resourceName;
-
- private String resourceType;
-
- private String resourceVersion;
-
- private String resourceInstanceName;
-
-
- private String serviceUUID;
-
- private String serviceName;
-
- private String serviceDescription;
-
- public String getArtifactUUID() {
- return artifactUUID;
- }
-
- public void setArtifactUUID(String artifactUUID) {
- this.artifactUUID = artifactUUID;
- }
-
- public String getArtifactContent() {
- return artifactContent;
- }
-
- public void setArtifactContent(String artifactContent) {
- this.artifactContent = artifactContent;
- }
-
- public String getArtifactDescription() {
- return artifactDescription;
- }
-
- public void setArtifactDescription(String artifactDescription) {
- this.artifactDescription = artifactDescription;
- }
-
- public String getArtifactName() {
- return artifactName;
- }
-
- public void setArtifactName(String artifactName) {
- this.artifactName = artifactName;
- }
-
- public String getArtifactType() {
- return artifactType;
- }
-
- public void setArtifactType(String artifactType) {
- this.artifactType = artifactType;
- }
-
- public String getArtifactVersion() {
- return artifactVersion;
- }
-
- public void setArtifactVersion(String artifactVersion) {
- this.artifactVersion = artifactVersion;
- }
-
- public String getCreationDate() {
- return creationDate;
- }
-
- public void setCreationDate(String creationDate) {
- this.creationDate = creationDate;
- }
-
- public String getDistributionId() {
- return distributionId;
- }
-
- public void setDistributionId(String distributionId) {
- this.distributionId = distributionId;
- }
-
- public String getResourceInstanceName() {
- return resourceInstanceName;
- }
-
- public void setResourceInstanceName(String resourceInstanceName) {
- this.resourceInstanceName = resourceInstanceName;
- }
-
- public String getResourceName() {
- return resourceName;
- }
-
- public void setResourceName(String resourceName) {
- this.resourceName = resourceName;
- }
-
- public String getResourceType() {
- return resourceType;
- }
-
- public void setResourceType(String resourceType) {
- this.resourceType = resourceType;
- }
-
- public String getResourceUUID() {
- return resourceUUID;
- }
-
- public void setResourceUUID(String resourceUUID) {
- this.resourceUUID = resourceUUID;
- }
-
- public String getResourceVersion() {
- return resourceVersion;
- }
-
- public void setResourceVersion(String resourceVersion) {
- this.resourceVersion = resourceVersion;
- }
-
- public String getServiceDescription() {
- return serviceDescription;
- }
-
- public void setServiceDescription(String serviceDescription) {
- this.serviceDescription = serviceDescription;
- }
-
- public String getServiceName() {
- return serviceName;
- }
-
- public void setServiceName(String serviceName) {
- this.serviceName = serviceName;
- }
-
- public String getServiceUUID() {
- return serviceUUID;
- }
-
- public void setServiceUUID(String serviceUUID) {
- this.serviceUUID = serviceUUID;
- }
-
-
- @Override
- public String toString() {
- return "artifactUUID = " + artifactUUID +
- " , artifactName = " + artifactName +
- " , artifactType = " + artifactType +
- " , artifactVersion = " + artifactVersion +
- " , artifactContent = " + artifactContent +
- " , artifactDescription = " + artifactDescription +
- " , creationDate = " + creationDate +
- " , distributionId = " +distributionId +
- " , resourceUUID = " + resourceUUID +
- " , resourceName = " + resourceName +
- " , resourceType = " + resourceType +
- " , resourceVersion = " + resourceVersion +
- " , resourceInstanceName = " + resourceInstanceName +
- " , serviceUUID = " + serviceUUID +
- " , serviceName = " + serviceName +
- " , serviceDescription = " + serviceDescription;
- }
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/SDCReference.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/SDCReference.java
deleted file mode 100644
index b9d630026..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/SDCReference.java
+++ /dev/null
@@ -1,94 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.artifacts.object;
-
-public class SDCReference {
-
- private String vnfType;
- private String vnfcType;
- private String fileCategory;
- private String action;
- private String artifactType;
- private String artifactName;
-
- public String getVnfType() {
- return vnfType;
- }
-
- public void setVnfType(String vnfType) {
- this.vnfType = vnfType;
- }
-
- public String getVnfcType() {
- return vnfcType;
- }
-
- public void setVnfcType(String vnfcType) {
- this.vnfcType = vnfcType;
- }
-
- public String getFileCategory() {
- return fileCategory;
- }
-
- public void setFileCategory(String fileCategory) {
- this.fileCategory = fileCategory;
- }
-
- public String getAction() {
- return action;
- }
-
- public void setAction(String action) {
- this.action = action;
- }
-
- public String getArtifactType() {
- return artifactType;
- }
-
- public void setArtifactType(String artifactType) {
- this.artifactType = artifactType;
- }
-
- public String getArtifactName() {
- return artifactName;
- }
-
- public void setArtifactName(String artifactName) {
- this.artifactName = artifactName;
- }
- @Override
- public String toString() {
- return "vnfType = " + vnfType+
- ", vnfType = " + vnfType+
- ", fileCategory = " + fileCategory+
- ", action = " + action+
- ", artifactType = " + artifactType+
- ", artifactName = " + artifactName+
- ", vnfType = " + vnfType;
- }
-
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/Vnfc.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/Vnfc.java
deleted file mode 100644
index 47d5f4516..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/artifacts/object/Vnfc.java
+++ /dev/null
@@ -1,78 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.artifacts.object;
-
-import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
-import com.fasterxml.jackson.annotation.JsonProperty;
-import com.fasterxml.jackson.annotation.JsonPropertyOrder;
-import com.fasterxml.jackson.databind.annotation.JsonSerialize;
-
-import java.util.List;
-
-@JsonSerialize(include = JsonSerialize.Inclusion.NON_NULL)
-@JsonIgnoreProperties(ignoreUnknown = true)
-@JsonPropertyOrder({"vnfc-type","mandatory","resilience","parents"})
-public class Vnfc {
-
- @JsonProperty("vnfc-type")
- private String vnfcType;
- @JsonProperty("mandatory")
- private boolean mandatory;
- @JsonProperty("resilience")
- private String resilienceType;
- @JsonProperty("parents")
- private List<String> parents;
-
- public String getVnfcType() {
- return vnfcType;
- }
-
- public void setVnfcType(String vnfcType) {
- this.vnfcType = vnfcType;
- }
- public boolean isMandatory() {
- return mandatory;
- }
-
- public void setMandatory(boolean mandatory) {
- this.mandatory = mandatory;
- }
-
- public String getResilienceType() {
- return resilienceType;
- }
-
- public void setResilienceType(String resilienceType) {
- this.resilienceType = resilienceType;
- }
-
- public List<String> getParents() {
- return parents;
- }
-
- public void setParents(List<String> parents) {
- this.parents = parents;
- }
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/AsdcCallback.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/AsdcCallback.java
deleted file mode 100644
index b5307d697..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/AsdcCallback.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.listener;
-
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import org.openecomp.appc.adapter.message.EventSender;
-import org.openecomp.appc.sdc.artifacts.ArtifactProcessor;
-import org.openecomp.appc.sdc.artifacts.impl.ArtifactProcessorFactory;
-import org.openecomp.sdc.api.IDistributionClient;
-import org.openecomp.sdc.api.consumer.INotificationCallback;
-import org.openecomp.sdc.api.notification.IArtifactInfo;
-import org.openecomp.sdc.api.notification.INotificationData;
-import org.openecomp.sdc.api.notification.IResourceInstance;
-import org.apache.commons.lang3.concurrent.BasicThreadFactory;
-import org.openecomp.sdc.utils.DistributionStatusEnum;
-import org.osgi.framework.BundleContext;
-import org.osgi.framework.FrameworkUtil;
-import org.osgi.framework.ServiceReference;
-
-import java.net.URI;
-import java.util.concurrent.ArrayBlockingQueue;
-import java.util.concurrent.ThreadPoolExecutor;
-import java.util.concurrent.TimeUnit;
-import java.util.concurrent.atomic.AtomicBoolean;
-
-public class AsdcCallback implements INotificationCallback {
-
- private final EELFLogger logger = EELFManager.getInstance().getLogger(AsdcCallback.class);
-
- private URI storeUri;
- private IDistributionClient client;
-
- private EventSender eventSender = null;
-
- private ThreadPoolExecutor executor;
- private int threadCount = 10;
-
- private AtomicBoolean isRunning = new AtomicBoolean(false);
-
-
- public AsdcCallback(URI storeUri, IDistributionClient client) {
- this.storeUri = storeUri;
- this.client = client;
-
- // Create the thread pool
- executor = new ThreadPoolExecutor(threadCount, threadCount, 1, TimeUnit.SECONDS,
- new ArrayBlockingQueue<Runnable>(threadCount * 2));
-
- // Custom Named thread factory
- BasicThreadFactory threadFactory = new BasicThreadFactory.Builder().namingPattern("Appc-Listener-%d").build();
- executor.setThreadFactory(threadFactory);
-
- isRunning.set(true);
- }
-
- @Override
- public void activateCallback(INotificationData data) {
- if (null == eventSender) {
- try {
- BundleContext bctx = FrameworkUtil.getBundle(EventSender.class).getBundleContext();
- ServiceReference sref = bctx.getServiceReference(EventSender.class);
- eventSender = (EventSender) bctx.getService(sref);
- } catch (Exception e) {
- logger.error("AsdcCallback failed on initializing EventSender", e);
- }
- }
-
- if (isRunning.get()) {
-
- for(IArtifactInfo artifact:data.getServiceArtifacts()){
- ArtifactProcessor artifactProcessor = ArtifactProcessorFactory.getArtifactProcessor(
- client, eventSender, data, null, artifact, storeUri);
- if(artifactProcessor!=null){
- executor.submit(artifactProcessor);
- }
- }
-
- for (IResourceInstance resource : data.getResources()) {
- for (IArtifactInfo artifact : resource.getArtifacts()) {
- logger.info(Util.toAsdcStoreDocumentInput(data, resource, artifact, "abc"));
- if (executor.getQueue().size() >= threadCount) {
- // log warning about job backlog
- }
- ArtifactProcessor artifactProcessor = ArtifactProcessorFactory.getArtifactProcessor(client, eventSender, data, resource, artifact, storeUri);
- if(artifactProcessor != null){
- executor.submit(artifactProcessor);
- }
- else{
- /* Before refactoring of the DownloadAndStoreOp class, the approach was to download all the
- artifacts, send the download status, and then perform the processing of artifact if it is
- required. Now that we are downloading the artifacts only when its processing is required,
- we are sending the download status as positive just to have the same behaviour as before
- refactoring.
- */
- client.sendDownloadStatus(Util.buildDistributionStatusMessage(client, data, artifact, DistributionStatusEnum.DOWNLOAD_OK));
- logger.error("Artifact type not supported : " + artifact.getArtifactType());
- }
- }
- }
- } else {
- // TODO - return a failed result so asdc knows we are shut down
- }
- }
-
- public void stop() {
- stop(10);
- }
-
- public void stop(int waitSec) {
- isRunning.set(false);
- logger.info(String.format("Stopping the ASDC listener and waiting up to %ds for %d pending jobs", waitSec,
- executor.getQueue().size()));
- boolean cleanShutdown = false;
- executor.shutdown();
- try {
- cleanShutdown = executor.awaitTermination(waitSec, TimeUnit.SECONDS);
- executor.shutdownNow(); // In case of timeout
- } catch (InterruptedException e) {
- e.printStackTrace();
- }
- logger.info(String.format("Attempting to shutdown cleanly: %s", cleanShutdown ? "SUCCESS" : "FAILURE"));
- logger.info("Shutdown complete.");
- }
-
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/AsdcConfig.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/AsdcConfig.java
deleted file mode 100644
index d0d5319f9..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/AsdcConfig.java
+++ /dev/null
@@ -1,197 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.listener;
-
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import org.openecomp.sdc.api.consumer.IConfiguration;
-
-import java.net.URI;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-import java.util.Properties;
-
-public class AsdcConfig implements IConfiguration {
-
- private String host;
- private String consumer;
- private String consumerId;
- private String env;
- private String keystorePath;
- private String keystorePass;
- /** Polling internal is time between listening sessions */
- private int pollingInterval;
- /** Polling timeout is the time to listen for (dmaap timeout url param)/1000 */
- private int pollingTimeout;
- private List<String> types = new ArrayList<>();
- private String user;
- private String pass;
-
- private URI storeOp;
-
- private Properties props;
-
- private final EELFLogger logger = EELFManager.getInstance().getLogger(AsdcConfig.class);
-
- AsdcConfig(Properties props) throws Exception {
- this.props = props;
- init();
- }
-
- private void init() throws Exception {
- if (props == null) {
- logger.error("SdcConfig init is skipped due to properties is null");
- return;
- }
-
- // Keystore for ca cert
- keystorePath = props.getProperty("appc.asdc.keystore.path");
- keystorePass = props.getProperty("appc.asdc.keystore.pass");
-
- // ASDC host
- host = props.getProperty("appc.asdc.host");
- env = props.getProperty("appc.asdc.env");
- user = props.getProperty("appc.asdc.user");
- pass = props.getProperty("appc.asdc.pass");
-
- // DMaaP properties
- consumer = props.getProperty("appc.asdc.consumer");
- consumerId = props.getProperty("appc.asdc.consumer.id");
-
- pollingInterval = Integer.valueOf(props.getProperty("interval", "60"));
-
- // Client uses cambriaClient-0.2.4 which throws non relevant (wrong)
- // exceptions with times > 30s
- pollingTimeout = Integer.valueOf(props.getProperty("timeout", "25"));
-
- // Anything less than 60 and we risk 429 Too Many Requests
- if (pollingInterval < 60) {
- pollingInterval = 60;
- }
-
- if (pollingInterval > pollingTimeout) {
- logger.warn(String.format(
- "Message acknowledgement may be delayed by %ds in the ADSC listener. [Listening Time: %s, Poll Period: %s]",
- pollingInterval - pollingTimeout, pollingTimeout, pollingInterval));
- }
-
- logParams();
-
- // Download type
- /*
- This types seems redundant, as it looks from the code that they are not being used anywhere
- */
- types.add("APPC_CONFIG");
- types.add("VF_LICENSE");
- types.add("TOSCA_CSAR");
-
- storeOp = new URI(props.getProperty("appc.asdc.provider.url"));
- }
-
- @Override
- public boolean activateServerTLSAuth() {
- return false;
- }
-
- public boolean isFilterInEmptyResources() {
- return false;
- }
-
- @Override
- public String getAsdcAddress() {
- return host;
- }
-
- @Override
- public String getConsumerGroup() {
- return consumer;
- }
-
- @Override
- public String getConsumerID() {
- return consumerId;
- }
-
- @Override
- public String getEnvironmentName() {
- return env;
- }
-
- @Override
- public String getKeyStorePassword() {
- return keystorePass;
- }
-
- @Override
- public String getKeyStorePath() {
- return keystorePath;
- }
-
- @Override
- public String getPassword() {
- return pass;
- }
-
- @Override
- public int getPollingInterval() {
- return pollingInterval;
- }
-
- @Override
- public int getPollingTimeout() {
- return pollingTimeout;
- }
-
- @Override
- public List<String> getRelevantArtifactTypes() {
- return types;
- }
-
- @Override
- public String getUser() {
- return user;
- }
-
- URI getStoreOpURI() {
- return storeOp;
- }
-
- /**
- * Logs the relevant parameters
- */
- private void logParams() {
- Map<String, String> params = new HashMap<>();
- params.put("ASDC Host", getAsdcAddress());
- params.put("ASDC Environment", getEnvironmentName());
- params.put("Consumer Name", getConsumerGroup());
- params.put("Consumer ID", getConsumerID());
- params.put("Poll Active Wait", String.valueOf(getPollingInterval()));
- params.put("Poll Timeout", String.valueOf(getPollingTimeout()));
-
- logger.info(String.format("ASDC Params: %s", params));
- }
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/AsdcListener.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/AsdcListener.java
deleted file mode 100644
index a580e4077..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/AsdcListener.java
+++ /dev/null
@@ -1,219 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.listener;
-
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import org.openecomp.appc.configuration.Configuration;
-import org.openecomp.appc.configuration.ConfigurationFactory;
-import org.openecomp.sdc.api.IDistributionClient;
-import org.openecomp.sdc.api.results.IDistributionClientResult;
-import org.openecomp.sdc.impl.DistributionClientFactory;
-import org.openecomp.sdc.utils.DistributionActionResultEnum;
-
-import java.net.URL;
-import java.util.HashMap;
-import java.util.Map;
-import java.util.Properties;
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.TimeUnit;
-
-/**
- * SDC listener handles bundle start and stop through start and stop method. <p>
- * Register connection with SDC server based on properties file configuration when start,
- * and disconnect with SDC server when stop.
- */
-public class AsdcListener {
- private final EELFLogger logger = EELFManager.getInstance().getLogger(AsdcListener.class);
-
- /**
- * The bundle context
- */
- private IDistributionClient client;
- private AsdcCallback callback;
- private AsdcConfig config;
- private CountDownLatch latch;
-
- private Thread startThread = null;
-
- @SuppressWarnings("unused")
- public void start() throws Exception {
- // Add timestamp to the log to differentiate the jmeter run testing calls.
- final long timeStamp = System.currentTimeMillis();
- logger.info(String.format("[%d] Starting SDC Listener", timeStamp));
-
- Configuration configuration = ConfigurationFactory.getConfiguration();
- Properties props = configuration.getProperties();
- config = new AsdcConfig(props);
- logger.debug(String.format("[%d] created SDC config", timeStamp));
-
- client = DistributionClientFactory.createDistributionClient();
- logger.debug(String.format("[%d] created SDC client", timeStamp));
-
- callback = new AsdcCallback(config.getStoreOpURI(), client);
- logger.debug(String.format("[%d] created SDC callback", timeStamp));
-
- latch = new CountDownLatch(1);
-
- startThread = new Thread(new StartRunnable(timeStamp));
- startThread.setName(String.format("[%d] sdcListener start", timeStamp));
- logger.debug(String.format("[%d] created SDC initialization thread", timeStamp));
- startThread.start();
- }
-
- @SuppressWarnings("unused")
- public void stop() throws InterruptedException {
- // Add timestamp to the log to differentiate the jmeter run testing calls.
- final long timeStamp = System.currentTimeMillis();
- logger.info(String.format("[%d] Stopping ASDC Listener", timeStamp));
-
- stopStartThread(timeStamp);
-
- if (latch != null) {
- logger.debug(String.format("[%d] waiting ASDC latch count to 0 for 10 seconds", timeStamp));
- latch.await(10, TimeUnit.SECONDS);
- latch = null;
- }
-
- if (callback != null) {
- logger.debug(String.format("[%d] stopping ASDC callback", timeStamp));
- callback.stop();
- callback = null;
- }
- if (client != null) {
- logger.debug(String.format("[%d] stopping ASDC client", timeStamp));
- client.stop();
- client = null;
-
- }
- logger.info(String.format("[%d] ASDC Listener stopped successfully", timeStamp));
- }
-
- void stopStartThread(long timeStamp) throws InterruptedException {
- if (startThread == null) {
- return;
- }
-
- if (startThread.getState() == Thread.State.TERMINATED) {
- logger.debug(String.format("[%d] ASDC thread(%s) is already terminated.",
- timeStamp, startThread.getName()));
- } else {
- logger.debug(String.format("[%d] ASDC thread(%s) is to be interrupted with state(%s)",
- timeStamp, startThread.getName(), startThread.getState().toString()));
-
- startThread.interrupt();
-
- logger.debug(String.format("[%d] ASDC thread(%s) has been interrupted(%s) with state(%s)",
- timeStamp, startThread.getName(), startThread.isInterrupted(),
- startThread.getState().toString()));
- }
- startThread = null;
- }
-
- /**
- * Runnable implementation for actual initialization during ASDC listener start
- */
- class StartRunnable implements Runnable {
- private final long timeStamp;
-
- StartRunnable(long theTimeStamp) {
- timeStamp = theTimeStamp;
- }
-
- /**
- * This run method calls ASDC client for init and start which are synchronized calls along with stop.
- * To interrupt this thread at stop time, we added thread interrupted checking in each step
- * for earlier interruption.
- */
- @Override
- public void run() {
- if (!initialRegistration()) {
- logger.warn(String.format("[%d] ASDC thread initial registration failed.", timeStamp));
- }
-
- if (isThreadInterrupted("after initial registration")) {
- return;
- }
-
- IDistributionClientResult result = client.init(config, callback);
-
- if (isThreadInterrupted("after client init")) {
- return;
- }
-
- if (result.getDistributionActionResult() == DistributionActionResultEnum.SUCCESS) {
- client.start();
- } else {
- logger.error(String.format("[%d] Could not register ASDC client. %s - %s",
- timeStamp, result.getDistributionActionResult(), result.getDistributionMessageResult()));
- }
-
- latch.countDown();
- }
-
- private boolean initialRegistration() {
- try {
- final String jsonTemplate =
- "{\"consumerName\": \"%s\",\"consumerSalt\": \"%s\",\"consumerPassword\":\"%s\"}";
- String saltedPassStr = org.openecomp.tlv.sdc.security.Passwords.hashPassword(config.getPassword());
- if (saltedPassStr == null || !saltedPassStr.contains(":")) {
- return false;
- }
-
- String[] saltedPass = saltedPassStr.split(":");
- String json = String.format(jsonTemplate, config.getUser(), saltedPass[0], saltedPass[1]);
-
- Map<String, String> headers = new HashMap<>();
- // TODO - Replace the header below to sdc's requirements. What should the new value be
- headers.put("USER_ID", "test");
-
- // TODO - How to format the url. Always same endpoint or ports?
- String host = config.getAsdcAddress();
- URL url = new URL(String.format("http%s://%s/sdc2/rest/v1/consumers",
- host.contains("443") ? "s" : "", host));
-
- logger.info(String.format("Attempting to register user %s on %s with salted pass of %s",
- config.getUser(), url, saltedPass[1]));
-
- ProviderOperations providerOperations = new ProviderOperations();
- ProviderResponse result = providerOperations.post(url, json, headers);
- return result.getStatus() == 200;
- } catch (Exception e) {
- logger.error(
- "Error performing initial registration with ASDC server. User may not be able to connect",
- e);
- return false;
- }
- }
-
- private boolean isThreadInterrupted(String details) {
- if (Thread.currentThread().isInterrupted()) {
- logger.info(String.format("[%d] ASDC thread interrupted %s.", timeStamp, details));
- return true;
- }
- return false;
- }
- }
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/ProviderOperations.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/ProviderOperations.java
deleted file mode 100644
index c644930e4..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/ProviderOperations.java
+++ /dev/null
@@ -1,211 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.listener;
-
-import java.io.IOException;
-import java.io.UnsupportedEncodingException;
-import java.net.Socket;
-import java.net.URL;
-import java.net.UnknownHostException;
-import java.security.KeyManagementException;
-import java.security.KeyStore;
-import java.security.KeyStoreException;
-import java.security.NoSuchAlgorithmException;
-import java.security.UnrecoverableKeyException;
-import java.security.cert.CertificateException;
-import java.security.cert.X509Certificate;
-import java.util.Map;
-import java.util.Map.Entry;
-
-import javax.net.ssl.SSLContext;
-import javax.net.ssl.TrustManager;
-import javax.net.ssl.X509TrustManager;
-
-import org.apache.commons.codec.binary.Base64;
-import org.apache.commons.io.IOUtils;
-import org.apache.http.HttpResponse;
-import org.apache.http.HttpVersion;
-import org.apache.http.client.HttpClient;
-import org.apache.http.client.methods.HttpPost;
-import org.apache.http.conn.ClientConnectionManager;
-import org.apache.http.conn.scheme.PlainSocketFactory;
-import org.apache.http.conn.scheme.Scheme;
-import org.apache.http.conn.scheme.SchemeRegistry;
-import org.apache.http.conn.ssl.SSLSocketFactory;
-import org.apache.http.entity.StringEntity;
-import org.apache.http.impl.client.DefaultHttpClient;
-import org.apache.http.impl.conn.tsccm.ThreadSafeClientConnManager;
-import org.apache.http.params.BasicHttpParams;
-import org.apache.http.params.HttpParams;
-import org.apache.http.params.HttpProtocolParams;
-import org.apache.http.protocol.HTTP;
-import org.openecomp.appc.exceptions.APPCException;
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-
-public class ProviderOperations {
-
- private static final EELFLogger LOG = EELFManager.getInstance().getLogger(ProviderOperations.class);
-
- private static String basic_auth;
-
- public static ProviderResponse post(URL url, String json, Map<String, String> adtl_headers) throws APPCException {
- if (json == null) {
- throw new APPCException("Provided message was null");
- }
-
- HttpPost post = null;
- try {
- post = new HttpPost(url.toExternalForm());
- post.setHeader("Content-Type", "application/json");
- post.setHeader("Accept", "application/json");
-
- // Set Auth
- if (basic_auth != null) {
- post.setHeader("Authorization", "Basic " + basic_auth);
- }
-
- if (adtl_headers != null) {
- for (Entry<String, String> header : adtl_headers.entrySet()) {
- post.setHeader(header.getKey(), header.getValue());
- }
- }
-
- StringEntity entity = new StringEntity(json);
- entity.setContentType("application/json");
- post.setEntity(new StringEntity(json));
- } catch (UnsupportedEncodingException e) {
- throw new APPCException(e);
- }
-
- HttpClient client = getHttpClient(url);
-
- int httpCode = 0;
- String respBody = null;
- try {
- HttpResponse response = client.execute(post);
- httpCode = response.getStatusLine().getStatusCode();
- respBody = IOUtils.toString(response.getEntity().getContent());
- return new ProviderResponse(httpCode, respBody);
- } catch (IOException e) {
- throw new APPCException(e);
- }
- }
-
- /**
- * Sets the basic authentication header for the given user and password. If either entry is null then set basic auth
- * to null
- *
- * @param user
- * The user with optional domain name (for AAF)
- * @param password
- * The password for the user
- * @return The new value of the basic auth string that will be used in the request headers
- */
- public static String setAuthentication(String user, String password) {
- if (user != null && password != null) {
- String authStr = user + ":" + password;
- basic_auth = new String(Base64.encodeBase64(authStr.getBytes()));
- } else {
- basic_auth = null;
- }
- return basic_auth;
- }
-
- @SuppressWarnings("deprecation")
- private static HttpClient getHttpClient(URL url) throws APPCException {
- HttpClient client;
- if (url.getProtocol().equals("https")) {
- try {
- KeyStore trustStore = KeyStore.getInstance(KeyStore.getDefaultType());
- trustStore.load(null, null);
- MySSLSocketFactory sf = new MySSLSocketFactory(trustStore);
- sf.setHostnameVerifier(MySSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER);
-
- HttpParams params = new BasicHttpParams();
- HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1);
- HttpProtocolParams.setContentCharset(params, HTTP.UTF_8);
-
- SchemeRegistry registry = new SchemeRegistry();
- registry.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80));
- registry.register(new Scheme("https", sf, 443));
- registry.register(new Scheme("https", sf, 8443));
- registry.register(new Scheme("http", sf, 8181));
-
- ClientConnectionManager ccm = new ThreadSafeClientConnManager(params, registry);
- client = new DefaultHttpClient(ccm, params);
- } catch (Exception e) {
- client = new DefaultHttpClient();
- }
- } else if (url.getProtocol().equals("http")) {
- client = new DefaultHttpClient();
- } else {
- throw new APPCException(
- "The provider.topology.url property is invalid. The url did not start with http[s]");
- }
- return client;
- }
-
- @SuppressWarnings("deprecation")
- public static class MySSLSocketFactory extends SSLSocketFactory {
- private SSLContext sslContext = SSLContext.getInstance("TLSv1.2");
-
- public MySSLSocketFactory(KeyStore truststore) throws NoSuchAlgorithmException, KeyManagementException,
- KeyStoreException, UnrecoverableKeyException {
- super(truststore);
-
- TrustManager tm = new X509TrustManager() {
- @Override
- public void checkClientTrusted(X509Certificate[] chain, String authType) throws CertificateException {
- }
-
- @Override
- public void checkServerTrusted(X509Certificate[] chain, String authType) throws CertificateException {
- }
-
- @Override
- public X509Certificate[] getAcceptedIssuers() {
- return null;
- }
- };
-
- sslContext.init(null, new TrustManager[] {
- tm
- }, null);
- }
-
- @Override
- public Socket createSocket(Socket socket, String host, int port, boolean autoClose)
- throws IOException, UnknownHostException {
- return sslContext.getSocketFactory().createSocket(socket, host, port, autoClose);
- }
-
- @Override
- public Socket createSocket() throws IOException {
- return sslContext.getSocketFactory().createSocket();
- }
- }
-
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/ProviderResponse.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/ProviderResponse.java
deleted file mode 100644
index cc21cea0c..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/ProviderResponse.java
+++ /dev/null
@@ -1,45 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.listener;
-
-public class ProviderResponse {
-
- private int status;
- private String body;
-
- public ProviderResponse(int status, String body) {
- this.status = status;
- this.body = body;
- }
-
- public String getBody() {
- return body;
- }
-
- public int getStatus() {
- return status;
- }
-
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/Util.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/Util.java
deleted file mode 100644
index 2729d1dcb..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/appc/sdc/listener/Util.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.listener;
-import org.openecomp.sdc.utils.DistributionStatusEnum;
-
-import org.json.JSONException;
-import org.json.JSONObject;
-import org.openecomp.appc.exceptions.APPCException;
-import org.openecomp.sdc.api.IDistributionClient;
-import org.openecomp.sdc.api.consumer.IDistributionStatusMessage;
-import org.openecomp.sdc.api.notification.IArtifactInfo;
-import org.openecomp.sdc.api.notification.INotificationData;
-import org.openecomp.sdc.api.notification.IResourceInstance;
-import org.openecomp.sdc.utils.DistributionStatusEnum;
-
-public class Util {
-
- // TODO - Use the yang builder instead
- public static String toAsdcStoreDocumentInput(INotificationData notification, IResourceInstance resource,
- IArtifactInfo artifact, String data) {
- JSONObject json = new JSONObject();
-
- JSONObject requestInfo = new JSONObject();
- requestInfo.put("request-id", notification.getServiceUUID());
- requestInfo.put("request-action", "StoreAsdcDocumentRequest");
- requestInfo.put("source", "ASDC");
-
- JSONObject docParams = new JSONObject();
- docParams.put("service-uuid", notification.getServiceUUID());
- docParams.put("distribution-id", notification.getDistributionID());
- docParams.put("service-name", notification.getServiceName());
- docParams.put("service-description", notification.getServiceDescription());
- docParams.put("service-artifacts", "[]");
- docParams.put("resource-uuid", resource.getResourceUUID());
- docParams.put("resource-instance-name", resource.getResourceInstanceName());
- docParams.put("resource-name", resource.getResourceName());
- docParams.put("resource-version", resource.getResourceVersion());
- docParams.put("resource-type", resource.getResourceType());
- docParams.put("artifact-uuid", artifact.getArtifactUUID());
- docParams.put("artifact-name", artifact.getArtifactName());
- docParams.put("artifact-type", artifact.getArtifactType());
- docParams.put("artifact-version", artifact.getArtifactVersion());
- docParams.put("artifact-description", artifact.getArtifactDescription());
- docParams.put("artifact-contents", data);
-
- json.put("request-information", requestInfo);
- json.put("document-parameters", docParams);
-
- return String.format("{\"input\": %s}", json.toString());
- }
-
- public static boolean parseResponse(String input) throws APPCException {
- JSONObject result, output, response;
- try {
- result = new JSONObject(input);
- output = result.getJSONObject("output");
- response = output.getJSONObject("config-document-response");
- String id = response.getString("request-id");
- String status = response.getString("status");
- if (status.equals(DistributionStatusEnum.DEPLOY_OK.toString())) {
- return true;
- } else {
- String error = response.optString("error-reason");
- String msg = error.isEmpty() ? "No Reason Provided" : error;
- throw new APPCException(msg);
- }
- } catch (JSONException jse) {
- throw new APPCException("Did not get valid json from provider.", jse);
- }
- }
-
- public static IDistributionStatusMessage buildDistributionStatusMessage(final IDistributionClient client,
- final INotificationData data, final IArtifactInfo relevantArtifact, final DistributionStatusEnum status) {
- IDistributionStatusMessage statusMessage = new IDistributionStatusMessage() {
-
- @Override
- public long getTimestamp() {
- long currentTimeMillis = System.currentTimeMillis();
- return currentTimeMillis;
- }
-
- @Override
- public DistributionStatusEnum getStatus() {
- return status;
- }
-
- @Override
- public String getDistributionID() {
- return data.getDistributionID();
- }
-
- @Override
- public String getConsumerID() {
- return client.getConfiguration().getConsumerID();
- }
-
- @Override
- public String getArtifactURL() {
- return relevantArtifact.getArtifactURL();
- }
- };
- return statusMessage;
- }
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/tlv/sdc/security/Passwords.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/tlv/sdc/security/Passwords.java
deleted file mode 100644
index 30b275a51..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/java/org/openecomp/tlv/sdc/security/Passwords.java
+++ /dev/null
@@ -1,170 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.tlv.sdc.security;
-
-import java.math.BigInteger;
-import java.security.MessageDigest;
-import java.security.NoSuchAlgorithmException;
-import java.security.SecureRandom;
-import java.util.Arrays;
-import java.util.Random;
-
-/**
- * A copy from the org.openecomp.sdc:security-utils artifact that works with java 7.
- */
-public class Passwords {
-
- private static final Random RANDOM = new SecureRandom();
- private static final int SALT = 0;
- private static final int HASH = 1;
- private static final String HASH_ALGORITHM = "SHA-256";
-
- /**
- * static utility class
- */
- private Passwords() {
- }
-
- /**
- * the method calculates a hash with a generated salt for the given password
- *
- * @param password
- * @return a "salt:hash" value
- */
- public static String hashPassword(String password) {
- byte[] salt = getNextSalt();
- byte byteData[] = hash(salt, password.getBytes());
- if (byteData != null) {
- return toHex(salt) + ":" + toHex(byteData);
- }
- return null;
-
- }
-
- /**
- * the method checks if the given password matches the calculated hash
- *
- * @param password
- * @param expectedHash
- * @return
- */
- public static boolean isExpectedPassword(String password, String expectedHash) {
- String[] params = expectedHash.split(":");
- return isExpectedPassword(password, params[SALT], params[HASH]);
- }
-
- /**
- * the method checks if the given password matches the calculated hash
- *
- * @param password
- * @param salt
- * @param hash
- * the hash generated using the salt
- * @return true if the password matched the hash
- */
- public static boolean isExpectedPassword(String password, String salt, String hash) {
- byte[] saltBytes = fromHex(salt);
- byte[] hashBytes = fromHex(hash);
-
- byte byteData[] = hash(saltBytes, password.getBytes());
- if (byteData != null) {
- return Arrays.equals(byteData, hashBytes);
- }
- return false;
- }
-
- public static void main(String[] args) {
- if (args.length > 1 || args.length > 0) {
- System.out.println("[" + hashPassword(args[0]) + "]");
- } else {
- System.out.println("no passward passed.");
- }
-
- }
-
- /**
- * Returns a random salt to be used to hash a password.
- *
- * @return a 16 bytes random salt
- */
- private static byte[] getNextSalt() {
- byte[] salt = new byte[16];
- RANDOM.nextBytes(salt);
- return salt;
- }
-
- /**
- * hase's the salt and value using the chosen algorithm
- *
- * @param salt
- * @param password
- * @return an array of bytes resulting from the hash
- */
- private static byte[] hash(byte[] salt, byte[] password) {
- MessageDigest md;
- byte[] byteData = null;
- try {
- md = MessageDigest.getInstance(HASH_ALGORITHM);
- md.update(salt);
- md.update(password);
- byteData = md.digest();
- } catch (NoSuchAlgorithmException e) {
- System.out.println("in vlide algorithem name");
- }
- return byteData;
- }
-
- /**
- * Converts a string of hexadecimal characters into a byte array.
- *
- * @param hex
- * the hex string
- * @return the hex string decoded into a byte array
- */
- private static byte[] fromHex(String hex) {
- byte[] binary = new byte[hex.length() / 2];
- for (int i = 0; i < binary.length; i++) {
- binary[i] = (byte) Integer.parseInt(hex.substring(2 * i, 2 * i + 2), 16);
- }
- return binary;
- }
-
- /**
- * Converts a byte array into a hexadecimal string.
- *
- * @param array
- * the byte array to convert
- * @return a length*2 character string encoding the byte array
- */
- private static String toHex(byte[] array) {
- BigInteger bi = new BigInteger(1, array);
- String hex = bi.toString(16);
- int paddingLength = (array.length * 2) - hex.length();
- if (paddingLength > 0)
- return String.format("%0" + paddingLength + "d", 0) + hex;
- else
- return hex;
- }
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/OSGI-INF/blueprint/blueprint.xml b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/OSGI-INF/blueprint/blueprint.xml
deleted file mode 100644
index 4dc493c95..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/OSGI-INF/blueprint/blueprint.xml
+++ /dev/null
@@ -1,43 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ============LICENSE_START=======================================================
- ONAP : APPC
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Copyright (C) 2017 Amdocs
- =============================================================================
- 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.
-
- ECOMP is a trademark and service mark of AT&T Intellectual Property.
- ============LICENSE_END=========================================================
- -->
-
-<!--
- Starter Blueprint Camel Definition appc-aai-adapter-blueprint
--->
-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://www.osgi.org/xmlns/blueprint/v1.0.0 http://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd">
-
-
- <bean id="AsdcListener" class="org.openecomp.appc.sdc.listener.AsdcListener" init-method="start" destroy-method="stop" scope="singleton" activation="eager">
- </bean>
-
- <!--
- <bean id="AsdcListenerBean" class="org.openecomp.appc.sdc.listener.impl.AsdcListenerBean" init-method="start" destroy-method="stop" activation="eager" scope="singleton" />
- <service id="AsdcListener" interface="org.openecomp.appc.sdc.listener.AsdcListener" ref="AsdcListenerBean"/>
- -->
-
-</blueprint>
-
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/attsdc-packages.yaml b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/attsdc-packages.yaml
deleted file mode 100644
index 8385dc988..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/attsdc-packages.yaml
+++ /dev/null
@@ -1,10 +0,0 @@
-packages:
- - org.openecomp.tlv.sdc.ci.tests.execute.general
- - org.openecomp.tlv.sdc.ci.tests.execute.user
- - org.openecomp.tlv.sdc.ci.tests.execute.property
- - org.openecomp.tlv.sdc.ci.tests.execute.lifecycle
- - org.openecomp.tlv.sdc.ci.tests.execute.resource
- - org.openecomp.tlv.sdc.ci.tests.execute.service
- - org.openecomp.tlv.sdc.ci.tests.execute.artifacts
- - org.openecomp.tlv.sdc.ci.tests.execute.imports
- - org.openecomp.tlv.sdc.ci.tests.execute.category \ No newline at end of file
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/attsdc.yaml b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/attsdc.yaml
deleted file mode 100644
index 7e612fe9b..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/attsdc.yaml
+++ /dev/null
@@ -1,35 +0,0 @@
-outputFolder: target
-reportName: index.html
-catalogBeHost: localhost
-catalogFeHost: localhost
-esHost: localhost
-disributionClientHost: localhost
-catalogFePort: 8181
-catalogBePort: 8080
-disributionClientPort: 8181
-esPort: 9200
-neoHost: localhost
-neoPort: 7474
-neoDBusername: neo4j
-neoDBpassword: 123456
-
-resourceConfigDir: src/test/resources/CI/tests
-componentsConfigDir: src/test/resources/CI/components
-importResourceConfigDir: src/test/resources/CI/importResource
-importResourceTestsConfigDir: src/test/resources/CI/importResourceTests
-errorConfigurationFile: ../catalog-be/src/main/resources/config/error-configuration.yaml
-
-titanPropertiesFile: src/main/resources/ci/conf/titan.properties
-
-stopOnClassFailure: false
-
-#List of non-abstract resources to keep during titan cleanup between tests
-#Only 1.0 version will be kept
-resourcesNotToDelete:
- - tosca.nodes.Compute
- - tosca.nodes.Database
- - tosca.nodes.ObjectStorage
- - tosca.nodes.BlockStorage
- - tosca.nodes.LoadBalancer
- - org.openecomp.d2.resource.cp.Port
- - org.openecomp.d2.resource.vl.Network \ No newline at end of file
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/log4j.properties b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/log4j.properties
deleted file mode 100644
index cc8c97a6a..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/log4j.properties
+++ /dev/null
@@ -1,58 +0,0 @@
-###
-# ============LICENSE_START=======================================================
-# ONAP : APPC
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
-# Copyright (C) 2017 Amdocs
-# =============================================================================
-# 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.
-#
-# ECOMP is a trademark and service mark of AT&T Intellectual Property.
-# ============LICENSE_END=========================================================
-###
-
-# Define the root logger with appender file
-log4j.rootLogger = DEBUG, FILE, stdout
-
-# Define the file appender
-log4j.appender.FILE=org.apache.log4j.RollingFileAppender
-log4j.appender.FILE.File=${targetlog}logs/ci-log.out
-
-# Define the layout for file appender
-log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
-log4j.appender.FILE.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss} %5p [%10c] : %m%n
-
-# Set the maximum file size before rollover
-log4j.appender.FILE.maxFileSize=5MB
-
-# Set the the backup index
-log4j.appender.FILE.maxBackupIndex=10
-
-
-#############################################################
-
-# Direct log messages to stdout
-log4j.appender.stdout=org.apache.log4j.ConsoleAppender
-log4j.appender.stdout.Target=System.out
-log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
-#log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
-log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %5p %10c:%L - %m%n
-
-log4j.logger.org.apache.cassandra.service.StorageProxy=DEBUG
-log4j.logger.com.thinkaurelius.titan.diskstorage.cassandra.CassandraTransaction=INFO, FILE, stdout
-
-log4j.logger.org.openecomp.tlv.sdc.ci.tests.utils=TRACE, FILE, stdout
-log4j.additivity.org.openecomp.tlv.sdc.ci.tests.utils=false
-
-
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/titan.properties b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/titan.properties
deleted file mode 100644
index e4bcb4bea..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/conf/titan.properties
+++ /dev/null
@@ -1,29 +0,0 @@
-###
-# ============LICENSE_START=======================================================
-# ONAP : APPC
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
-# Copyright (C) 2017 Amdocs
-# =============================================================================
-# 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.
-#
-# ECOMP is a trademark and service mark of AT&T Intellectual Property.
-# ============LICENSE_END=========================================================
-###
-
-storage.backend=cassandra
-storage.hostname=locahost
-storage.port=9160
-
-cache.db-cache = false
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/scripts/startTest.sh b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/scripts/startTest.sh
deleted file mode 100644
index 28e81ca2b..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/ci/scripts/startTest.sh
+++ /dev/null
@@ -1,112 +0,0 @@
-###
-# ============LICENSE_START=======================================================
-# ONAP : APPC
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
-# Copyright (C) 2017 Amdocs
-# =============================================================================
-# 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.
-#
-# ECOMP is a trademark and service mark of AT&T Intellectual Property.
-# ============LICENSE_END=========================================================
-###
-
-#!/bin/bash
-
-function usage {
- echo "Usage: $0 <jar file>"
-}
-
-function exitOnError() {
- if [ $1 -ne 0 ]
- then
- echo "Failed running task $2"
- exit 2
- fi
-}
-
-if [ $# -lt 1 ]
-then
- usage
- exit 2
-fi
-
-CURRENT_DIR=`pwd`
-BASEDIR=$(dirname $0)
-
-if [ ${BASEDIR:0:1} = "/" ]
-then
- FULL_PATH=$BASEDIR
-else
- FULL_PATH=$CURRENT_DIR/$BASEDIR
-fi
-
-LOGS_PROP_FILE=file:${FULL_PATH}/conf/log4j.properties
-#############################################
-TARGET_DIR=${FULL_PATH}/target
-CONF_FILE=${FULL_PATH}/conf/attsdc.yaml
-DEBUG=true
-#MainClass=org.openecomp.tlv.sdc.ci.tests.run.StartTest
-MainClass=org.openecomp.test.ClientTest
-
-JAR_FILE=$1
-
-#TARGET_DIR=`echo ${TARGET_DIR} | sed 's/\//\//g'`
-#echo $TARGET_DIR
-
-TESTS_DIR=/opt/app/sdc/ci/resources/tests
-COMPONENTS_DIR=/opt/app/sdc/ci/resources/components
-
-#sed -i 's#\(outputFolder:\).*#\1 '${TARGET_DIR}'#g' $CONF_FILE
-#sed -i 's#\(resourceConfigDir:\).*#\1 '${TESTS_DIR}'#g' $CONF_FILE
-#sed -i 's#\(componentsConfigDir:\).*#\1 '${COMPONENTS_DIR}'#g' $CONF_FILE
-TARGET_LOG_DIR="${TARGET_DIR}/"
-
-mkdir -p ${TARGET_DIR}
-if [ -d ${TARGET_DIR} ]
-then
- rm -rf ${TARGET_DIR}/*
- exitOnError $? "Failed_to_delete_target_dir"
-fi
-
-debug_port=8800
-#JAVA_OPTION="-javaagent:/var/tmp/jacoco/lib/jacocoagent.jar=destfile=jacoco-it.exec"
-JAVA_OPTION=""
-case "$2" in
- -debug) echo "Debug mode, Listen on port $debug_port"; JAVA_OPTION="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=${debug_port}" ;;
- "") echo "Standard mode";;
- *) echo "USAGE: startTest.sh [-debug]";;
-esac
-
-cmd="java $JAVA_OPTION -DdisplayException=true -Dtargetlog=${TARGET_LOG_DIR} -Dconfig.resource=${CONF_FILE} -Ddebug=${DEBUG} -Dlog4j.configuration=${LOGS_PROP_FILE} -cp $JAR_FILE ${MainClass}"
-
-#echo $cmd
-#console=`$cmd`
-
-if [ $DEBUG == "true" ]
-then
- $cmd
-else
- $cmd >> /dev/null
-fi
-status=`echo $?`
-
-
-
-echo "##################################################"
-echo "################# status is ${status} #################"
-echo "##################################################"
-
-exit $status
-
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/org/openecomp/appc/default.properties b/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/org/openecomp/appc/default.properties
deleted file mode 100644
index 55acec1fe..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/main/resources/org/openecomp/appc/default.properties
+++ /dev/null
@@ -1,40 +0,0 @@
-###
-# ============LICENSE_START=======================================================
-# ONAP : APPC
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
-# Copyright (C) 2017 Amdocs
-# =============================================================================
-# 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.
-#
-# ECOMP is a trademark and service mark of AT&T Intellectual Property.
-# ============LICENSE_END=========================================================
-###
-
-org.openecomp.appc.bootstrap.file=appc.properties
-org.openecomp.appc.bootstrap.path=/opt/openecomp/appc/data/properties,${user.home},.
-
-# These ASDC properties were provided by the ASDC Op-So team
-appc.asdc.keystore.path=etc/asdc-client.jks
-appc.asdc.keystore.pass=Aa123456
-
-appc.asdc.host=192.168.1.2:8443
-appc.asdc.env=TEST
-appc.asdc.user=appc
-appc.asdc.pass=appc
-
-appc.asdc.consumer=TEST
-appc.asdc.consumer.id=TEST
-appc.asdc.provider.url=http://localhost:8181/restconf/operations/AsdcMessage:configuration-document-request
-
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/test/java/org/openecomp/appc/sdc/listener/AsdcCallbackTest.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/test/java/org/openecomp/appc/sdc/listener/AsdcCallbackTest.java
deleted file mode 100644
index 3971ec248..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/test/java/org/openecomp/appc/sdc/listener/AsdcCallbackTest.java
+++ /dev/null
@@ -1,203 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.listener;
-
-import org.junit.Before;
-import org.junit.Ignore;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Matchers;
-import org.mockito.Mockito;
-import org.mockito.invocation.InvocationOnMock;
-import org.mockito.stubbing.Answer;
-import org.openecomp.appc.adapter.message.EventSender;
-import org.openecomp.appc.sdc.artifacts.helper.ArtifactStorageService;
-import org.openecomp.appc.sdc.artifacts.impl.ArtifactProcessorFactory;
-import org.openecomp.appc.sdc.artifacts.impl.ToscaCsarArtifactProcessor;
-import org.openecomp.appc.sdc.artifacts.object.SDCArtifact;
-import org.openecomp.sdc.api.IDistributionClient;
-import org.openecomp.sdc.api.consumer.IDistributionStatusMessage;
-import org.openecomp.sdc.api.consumer.INotificationCallback;
-import org.openecomp.sdc.api.notification.IArtifactInfo;
-import org.openecomp.sdc.api.notification.INotificationData;
-import org.openecomp.sdc.api.notification.IResourceInstance;
-import org.openecomp.sdc.api.results.IDistributionClientDownloadResult;
-import org.openecomp.sdc.impl.DistributionClientDownloadResultImpl;
-import org.openecomp.sdc.utils.DistributionActionResultEnum;
-import org.powermock.api.mockito.PowerMockito;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
-import org.powermock.reflect.Whitebox;
-
-import java.io.File;
-import java.io.FileInputStream;
-import java.io.IOException;
-import java.lang.reflect.Constructor;
-import java.lang.reflect.InvocationTargetException;
-import java.lang.reflect.Method;
-import java.net.URI;
-import java.net.URISyntaxException;
-import java.util.ArrayList;
-import java.util.List;
-
-@RunWith(PowerMockRunner.class)
-@PrepareForTest({IDistributionClient.class,
- EventSender.class,
- ArtifactStorageService.class,
- ToscaCsarArtifactProcessor.class,
- ArtifactProcessorFactory.class})
-public class AsdcCallbackTest {
-
- private IDistributionClient client;
- private EventSender eventSender;
- private INotificationCallback asdcCallback;
- private ArtifactStorageService storageService;
- private ToscaCsarArtifactProcessor artifactProcessor;
-
- @Before
- public void setup() throws Exception {
- client = PowerMockito.mock(IDistributionClient.class);
- eventSender = PowerMockito.mock(EventSender.class);
- asdcCallback = new AsdcCallback(null,client);
-
- artifactProcessor = Mockito.spy(new ToscaCsarArtifactProcessor(
- client, eventSender, getNotificationData(), getResources().get(0),
- getServiceArtifacts().get(0),null));
- storageService = PowerMockito.mock(ArtifactStorageService.class);
- Whitebox.setInternalState(artifactProcessor,"artifactStorageService", storageService);
-
- PowerMockito.doCallRealMethod().when(artifactProcessor)
- .processArtifact((IDistributionClientDownloadResult) Matchers.anyObject());
- PowerMockito.doCallRealMethod().when(artifactProcessor).run();
-
- PowerMockito.mockStatic(ArtifactProcessorFactory.class);
- PowerMockito.when(ArtifactProcessorFactory.getArtifactProcessor((IDistributionClient)Matchers.anyObject(),
- (EventSender)Matchers.anyObject(),
- (INotificationData)Matchers.anyObject(), (IResourceInstance)Matchers.anyObject(),
- (IArtifactInfo)Matchers.anyObject(), (URI)Matchers.anyObject())).thenReturn(artifactProcessor);
-
- Whitebox.setInternalState(asdcCallback,"eventSender", eventSender);
- PowerMockito.doReturn(readDownloadResult()).when(client).download((IArtifactInfo) Matchers.anyObject());
- PowerMockito.doReturn(null).when(client).sendDownloadStatus(
- (IDistributionStatusMessage) Matchers.anyObject());
-
- PowerMockito.doReturn(null).when(storageService).retrieveSDCArtifact(Matchers.anyString(),
- Matchers.anyString(), Matchers.anyString());
-
- PowerMockito.doAnswer(new Answer<Object>() {
- @Override
- public Object answer(InvocationOnMock invocationOnMock) throws Exception {
- System.out.print(invocationOnMock.getArguments()[0].toString());
- return null;
- }
- }).when(storageService).storeASDCArtifact((SDCArtifact)Matchers.anyObject());
- }
-
- private IDistributionClientDownloadResult readDownloadResult() throws IOException, URISyntaxException {
- DistributionClientDownloadResultImpl downloadResult = new DistributionClientDownloadResultImpl(
- DistributionActionResultEnum.SUCCESS,"Download success");
- File file = new File(this.getClass().getResource("/csar/service-ServiceAppc-csar.csar").toURI());
-
- byte[] bFile = new byte[(int) file.length()];
- FileInputStream fileInputStream = new FileInputStream(file);
- fileInputStream.read(bFile);
- fileInputStream.close();
-
- downloadResult.setArtifactPayload(bFile);
- return downloadResult;
- }
-
- @Ignore
- @Test
- public void testASDCListener()
- throws ClassNotFoundException, InstantiationException, IllegalAccessException, InvocationTargetException {
- INotificationData notificationData = getNotificationData();
- asdcCallback.activateCallback(notificationData);
-// pause();
- }
-
-// private void pause(){
-// try {
-// Thread.sleep(50000000);
-// } catch (InterruptedException e) {
-// e.printStackTrace();
-// }
-// }
-
- private INotificationData getNotificationData()
- throws ClassNotFoundException, IllegalAccessException, InstantiationException, InvocationTargetException {
-
- INotificationData notificationData = (INotificationData)getObject(
- "org.openecomp.sdc.impl.NotificationDataImpl");
-
- List<IArtifactInfo> serviceArtifacts = getServiceArtifacts();
-
- invokeMethod(notificationData, "setServiceArtifacts", serviceArtifacts);
- return notificationData;
- }
-
- private List<IResourceInstance> getResources()
- throws ClassNotFoundException, InvocationTargetException, InstantiationException, IllegalAccessException {
- List<IResourceInstance> resources = new ArrayList<>();
- IResourceInstance resource = (IResourceInstance)getObject(
- "org.openecomp.sdc.impl.JsonContainerResourceInstance");
-
- List<IArtifactInfo> serviceArtifacts = getServiceArtifacts();
- invokeMethod(resource,"setArtifacts",serviceArtifacts);
- invokeMethod(resource,"setResourceName","Vnf");
- invokeMethod(resource,"setResourceVersion","1.0");
-
- resources.add(resource);
- return resources;
- }
-
- private void invokeMethod(Object object, String methodName,Object... arguments)
- throws IllegalAccessException, InvocationTargetException {
- Method[] methods = object.getClass().getDeclaredMethods();
- for(Method method:methods){
- if(methodName.equalsIgnoreCase(method.getName())){
- method.setAccessible(true);
- method.invoke(object,arguments);
- }
- }
- }
-
- private Object getObject(String fqcn)
- throws ClassNotFoundException, InstantiationException, IllegalAccessException, InvocationTargetException {
- Constructor constructor = Class.forName(fqcn).getDeclaredConstructors()[0];
- constructor.setAccessible(true);
- return constructor.newInstance();
- }
-
- private List<IArtifactInfo> getServiceArtifacts()
- throws ClassNotFoundException, InvocationTargetException, InstantiationException, IllegalAccessException {
- List<IArtifactInfo> serviceArtifacts = new ArrayList<>();
- IArtifactInfo artifactInfo = (IArtifactInfo)getObject("org.openecomp.sdc.impl.ArtifactInfoImpl");
- invokeMethod(artifactInfo,"setArtifactType","TOSCA_CSAR");
- invokeMethod(artifactInfo,"setArtifactUUID","abcd-efgh-ijkl");
- serviceArtifacts.add(artifactInfo);
- return serviceArtifacts;
- }
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/test/java/org/openecomp/appc/sdc/listener/AsdcListenerTest.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/test/java/org/openecomp/appc/sdc/listener/AsdcListenerTest.java
deleted file mode 100644
index a821812ff..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/test/java/org/openecomp/appc/sdc/listener/AsdcListenerTest.java
+++ /dev/null
@@ -1,158 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-package org.openecomp.appc.sdc.listener;
-
-import com.att.eelf.configuration.EELFLogger;
-import org.junit.Assert;
-import org.junit.Before;
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.mockito.Mockito;
-import org.openecomp.sdc.api.IDistributionClient;
-import org.powermock.core.classloader.annotations.PrepareForTest;
-import org.powermock.modules.junit4.PowerMockRunner;
-import org.powermock.reflect.Whitebox;
-
-import java.util.concurrent.CountDownLatch;
-import java.util.concurrent.TimeUnit;
-
-import static org.mockito.Matchers.any;
-import static org.mockito.Mockito.mock;
-import static org.mockito.Mockito.spy;
-import static org.mockito.Mockito.times;
-
-@RunWith(PowerMockRunner.class)
-@PrepareForTest(Thread.class)
-public class AsdcListenerTest {
- private AsdcListener asdcListener;
- private EELFLogger mockLogger = mock(EELFLogger.class);
-
- @Before
- public void setUp() throws Exception {
- asdcListener = new AsdcListener();
-
- // to avoid operation on logger fail, mock up the logger
- Whitebox.setInternalState(asdcListener, "logger", mockLogger);
- }
-
- @Test
- public void testStart() throws Exception {
- asdcListener.start();
- Assert.assertTrue("Should created startThread",
- Whitebox.getInternalState(asdcListener, "startThread") != null);
- }
-
- @Test
- public void testStop() throws Exception {
- // test interrupt thread and other null case
- MockThread mockThread = spy(new MockThread());
- mockThread.setNewState(Thread.State.TIMED_WAITING);
- Whitebox.setInternalState(asdcListener, "startThread", mockThread);
-
- asdcListener.stop();
- Mockito.verify(mockThread, times(1)).interrupt();
- Assert.assertTrue("Should reset startThread",
- Whitebox.getInternalState(asdcListener, "startThread") == null);
-
- // test other non-null case and thread null case
- IDistributionClient mockClient = mock(IDistributionClient.class);
- Whitebox.setInternalState(asdcListener, "client", mockClient);
- AsdcCallback mockCallback = mock(AsdcCallback.class);
- Whitebox.setInternalState(asdcListener, "callback", mockCallback);
- CountDownLatch mockLatch = mock(CountDownLatch.class);
- Whitebox.setInternalState(asdcListener, "latch", mockLatch);
-
- asdcListener.stop();
-
- Mockito.verify(mockLatch, times(1)).await(10, TimeUnit.SECONDS);
- Mockito.verify(mockCallback, times(1)).stop();
- Mockito.verify(mockClient, times(1)).stop();
- Assert.assertTrue("Should reset latch",
- Whitebox.getInternalState(asdcListener, "latch") == null);
- Assert.assertTrue("Should reset callback",
- Whitebox.getInternalState(asdcListener, "callback") == null);
- Assert.assertTrue("Should reset client",
- Whitebox.getInternalState(asdcListener, "client") == null);
- }
-
- @Test
- public void testStopStartThread() throws Exception {
- // null case
- asdcListener.stopStartThread(123);
- Mockito.verify(mockLogger, times(0)).debug(String.valueOf(any()));
-
- MockThread mockThread = spy(new MockThread());
-
- // thread terminated case
- Whitebox.setInternalState(asdcListener, "startThread", mockThread);
- mockThread.setNewState(Thread.State.TERMINATED);
- asdcListener.stopStartThread(123);
- Mockito.verify(mockThread, times(0)).interrupt();
- Mockito.verify(mockLogger, times(1)).debug(String.valueOf(any()));
- Assert.assertTrue("Should reset startThread",
- Whitebox.getInternalState(asdcListener, "startThread") == null);
-
- // thread not termianted case
- int timesCallThread = 0;
- int timesCallLogger = 1;
- for(Thread.State state : Thread.State.values()) {
- if (state == Thread.State.TERMINATED) {
- continue;
- }
- Whitebox.setInternalState(asdcListener, "startThread", mockThread);
- mockThread.setNewState(state);
- asdcListener.stopStartThread(123);
- Mockito.verify(mockThread, times(++ timesCallThread)).interrupt();
- Mockito.verify(mockLogger, times(timesCallLogger += 2)).debug(String.valueOf(any()));
- Assert.assertTrue("Should reset startThread",
- Whitebox.getInternalState(asdcListener, "startThread") == null);
- }
- }
-
- /*
- * I have used the following PowerMockito (due to Thread.getName() is a final method)
- * try to mock up the thread behavior. But the mock Thread.getName() always returns null
- * which works in intelliJ Junit test, but not Jenkins build:
- * Thread mockThread = PowerMockito.mock(Thread.class);
- * PowerMockito.doReturn(Thread.State.TERMINATED).when(mockThread).getState();
- * PowerMockito.doReturn("testing").when(mockThread).getName();
- * Hence, here goes the MockThread class to override Thread to my expected behavior.
- */
- class MockThread extends Thread {
- private State state;
-
- private MockThread() {
- super.setName("testing");
- }
-
- void setNewState(State newState) {
- state = newState;
- }
-
- @Override
- public State getState() {
- return state;
- }
- }
-} \ No newline at end of file
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/test/java/org/openecomp/appc/sdc/listener/TestRun.java b/appc-asdc-listener/appc-asdc-listener-bundle/src/test/java/org/openecomp/appc/sdc/listener/TestRun.java
deleted file mode 100644
index 9e00ad9ef..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/test/java/org/openecomp/appc/sdc/listener/TestRun.java
+++ /dev/null
@@ -1,41 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.sdc.listener;
-
-import org.junit.Test;
-
-public class TestRun {
-
- @Test
- public void testRunning() throws Exception {
- /*
- AppcAsdcListenerActivator a = new AppcAsdcListenerActivator();
- a.start(null);
- Thread.sleep(10000);
- a.stop(null);
- */
- }
-
-}
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/test/resources/csar/service-ServiceAppc-csar.csar b/appc-asdc-listener/appc-asdc-listener-bundle/src/test/resources/csar/service-ServiceAppc-csar.csar
deleted file mode 100644
index a30ca2f6f..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/test/resources/csar/service-ServiceAppc-csar.csar
+++ /dev/null
Binary files differ
diff --git a/appc-asdc-listener/appc-asdc-listener-bundle/src/test/resources/org/openecomp/appc/default.properties b/appc-asdc-listener/appc-asdc-listener-bundle/src/test/resources/org/openecomp/appc/default.properties
deleted file mode 100644
index 291a46f09..000000000
--- a/appc-asdc-listener/appc-asdc-listener-bundle/src/test/resources/org/openecomp/appc/default.properties
+++ /dev/null
@@ -1,36 +0,0 @@
-###
-# ============LICENSE_START=======================================================
-# ONAP : APPC
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
-# Copyright (C) 2017 Amdocs
-# =============================================================================
-# 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.
-#
-# ECOMP is a trademark and service mark of AT&T Intellectual Property.
-# ============LICENSE_END=========================================================
-###
-
-# These ASDC properties were provided by the ASDC Op-So team
-appc.asdc.keystore.path=etc/asdc-client.jks
-appc.asdc.keystore.pass=Aa123456
-
-appc.asdc.host=192.168.1.2:8443
-appc.asdc.env=TEST
-appc.asdc.user=appc
-appc.asdc.pass=appc
-
-appc.asdc.consumer=TEST
-appc.asdc.consumer.id=TEST
-appc.asdc.provider.url=http://localhost:8181/restconf/operations/AsdcMessage:configuration-document-request
diff --git a/appc-asdc-listener/appc-asdc-listener-features/.gitignore b/appc-asdc-listener/appc-asdc-listener-features/.gitignore
deleted file mode 100644
index 2992ae832..000000000
--- a/appc-asdc-listener/appc-asdc-listener-features/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-/target/
-/bin/
-/.settings/
diff --git a/appc-asdc-listener/appc-asdc-listener-features/pom.xml b/appc-asdc-listener/appc-asdc-listener-features/pom.xml
deleted file mode 100644
index 247d8bd32..000000000
--- a/appc-asdc-listener/appc-asdc-listener-features/pom.xml
+++ /dev/null
@@ -1,89 +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>appc-asdc-listener</artifactId>
- <groupId>org.openecomp.appc</groupId>
- <version>1.1.0-SNAPSHOT</version>
- </parent>
- <artifactId>appc-asdc-listener-features</artifactId>
- <name>Event Listener - Features</name>
-
- <packaging>jar</packaging>
-
- <dependencies>
- <dependency>
- <groupId>org.openecomp.appc</groupId>
- <artifactId>appc-asdc-listener-bundle</artifactId>
- <version>${project.version}</version>
- </dependency>
-
- <dependency>
- <groupId>commons-lang</groupId>
- <artifactId>commons-lang</artifactId>
- <scope>compile</scope>
- </dependency>
-
- <dependency>
- <groupId>org.opendaylight.mdsal</groupId>
- <artifactId>features-mdsal</artifactId>
- <classifier>features</classifier>
- <type>xml</type>
- <scope>runtime</scope>
- </dependency>
-
- <dependency>
- <groupId>org.opendaylight.yangtools</groupId>
- <artifactId>features-yangtools</artifactId>
- <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>
- <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/appc-asdc-listener/appc-asdc-listener-features/src/main/resources/features.xml b/appc-asdc-listener/appc-asdc-listener-features/src/main/resources/features.xml
deleted file mode 100644
index 5b89ae291..000000000
--- a/appc-asdc-listener/appc-asdc-listener-features/src/main/resources/features.xml
+++ /dev/null
@@ -1,41 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- ============LICENSE_START=======================================================
- ONAP : APPC
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Copyright (C) 2017 Amdocs
- =============================================================================
- 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.
-
- ECOMP is a trademark and service mark of AT&T Intellectual Property.
- ============LICENSE_END=========================================================
- -->
-
-
-<features name="appc-asdc-listener-${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.version}/xml/features</repository> -->
- <repository>mvn:org.opendaylight.mdsal/features-mdsal/${odl.mdsal.features.version}/xml/features</repository>
-
- <feature name='appc-asdc-listener' description="asdc listener" version='${project.version}'>
- <!-- Most applications will have a dependency on the ODL MD-SAL Broker -->
- <feature version="${broker-mdsal.version}">odl-mdsal-broker</feature>
- <bundle dependency="true">mvn:org.openecomp.appc/appc-common/${project.version}</bundle>
- <bundle>mvn:org.openecomp.appc/appc-asdc-listener-bundle/${project.version}</bundle>
- </feature>
-
-</features>
diff --git a/appc-asdc-listener/appc-asdc-listener-installer/.gitignore b/appc-asdc-listener/appc-asdc-listener-installer/.gitignore
deleted file mode 100644
index 731eb433c..000000000
--- a/appc-asdc-listener/appc-asdc-listener-installer/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/target/
-/.settings/
diff --git a/appc-asdc-listener/appc-asdc-listener-installer/pom.xml b/appc-asdc-listener/appc-asdc-listener-installer/pom.xml
deleted file mode 100644
index 7535b6d6f..000000000
--- a/appc-asdc-listener/appc-asdc-listener-installer/pom.xml
+++ /dev/null
@@ -1,133 +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>appc-asdc-listener</artifactId>
- <groupId>org.openecomp.appc</groupId>
- <version>1.1.0-SNAPSHOT</version>
- </parent>
- <artifactId>appc-asdc-listener-installer</artifactId>
- <name>ASDC Listener - Karaf Installer</name>
- <packaging>pom</packaging>
-
- <properties>
- <application.name>appc-asdc-listener</application.name>
- <features.boot>appc-asdc-listener</features.boot>
- <features.repositories>mvn:org.openecomp.appc/appc-asdc-listener-features/${project.version}/xml/features</features.repositories>
- <include.transitive.dependencies>false</include.transitive.dependencies>
- </properties>
-
- <dependencies>
-
- <dependency>
- <groupId>org.openecomp.appc</groupId>
- <artifactId>appc-asdc-listener-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.appc</groupId>
- <artifactId>appc-asdc-listener-bundle</artifactId>
- <version>${project.version}</version>
- </dependency>
- </dependencies>
-
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-assembly-plugin</artifactId>
- <executions>
- <execution>
- <id>maven-repo-zip</id>
- <goals>
- <goal>single</goal>
- </goals>
- <phase>package</phase>
- <configuration>
- <appendAssemblyId>false</appendAssemblyId>
- <attach>false</attach>
- <finalName>stage/${application.name}-${project.version}</finalName>
- <descriptors>
- <descriptor>src/assembly/assemble_mvnrepo_zip.xml</descriptor>
- </descriptors>
- </configuration>
- </execution>
- <execution>
- <id>installer-zip</id>
- <goals>
- <goal>single</goal>
- </goals>
- <phase>package</phase>
- <configuration>
- <appendAssemblyId>false</appendAssemblyId>
- <attach>true</attach>
- <finalName>${application.name}-${project.version}</finalName>
- <descriptors>
- <descriptor>src/assembly/assemble_installer_zip.xml</descriptor>
- </descriptors>
- </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>
- <excludeGroupIds>org.opendaylight</excludeGroupIds>
- <scope>provided</scope>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <artifactId>maven-resources-plugin</artifactId>
- <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/appc-asdc-listener/appc-asdc-listener-installer/src/assembly/assemble_installer_zip.xml b/appc-asdc-listener/appc-asdc-listener-installer/src/assembly/assemble_installer_zip.xml
deleted file mode 100644
index 322fa76eb..000000000
--- a/appc-asdc-listener/appc-asdc-listener-installer/src/assembly/assemble_installer_zip.xml
+++ /dev/null
@@ -1,62 +0,0 @@
-<!--
- ============LICENSE_START=======================================================
- ONAP : APPC
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Copyright (C) 2017 Amdocs
- =============================================================================
- 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.
-
- ECOMP is a trademark and service mark of AT&T Intellectual Property.
- ============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>adapter</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/appc-asdc-listener/appc-asdc-listener-installer/src/assembly/assemble_mvnrepo_zip.xml b/appc-asdc-listener/appc-asdc-listener-installer/src/assembly/assemble_mvnrepo_zip.xml
deleted file mode 100644
index 615ee37d0..000000000
--- a/appc-asdc-listener/appc-asdc-listener-installer/src/assembly/assemble_mvnrepo_zip.xml
+++ /dev/null
@@ -1,50 +0,0 @@
-<!--
- ============LICENSE_START=======================================================
- ONAP : APPC
- ================================================================================
- Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- ================================================================================
- Copyright (C) 2017 Amdocs
- =============================================================================
- 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.
-
- ECOMP is a trademark and service mark of AT&T Intellectual Property.
- ============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>adapter</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>
-
-</assembly>
diff --git a/appc-asdc-listener/appc-asdc-listener-installer/src/main/resources/scripts/install-feature.sh b/appc-asdc-listener/appc-asdc-listener-installer/src/main/resources/scripts/install-feature.sh
deleted file mode 100644
index 13d41ca56..000000000
--- a/appc-asdc-listener/appc-asdc-listener-installer/src/main/resources/scripts/install-feature.sh
+++ /dev/null
@@ -1,63 +0,0 @@
-###
-# ============LICENSE_START=======================================================
-# ONAP : APPC
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
-# Copyright (C) 2017 Amdocs
-# =============================================================================
-# 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.
-#
-# ECOMP is a trademark and service mark of AT&T Intellectual Property.
-# ============LICENSE_END=========================================================
-###
-
-#!/bin/bash
-
-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 -n -d ${ODL_HOME} ${REPOZIP}
-else
- echo "ERROR : repo zip ($REPOZIP) not found"
- exit 1
-fi
-
-COUNT=0
-while [ $COUNT -lt 10 ]; do
- ${ODL_KARAF_CLIENT} ${ODL_KARAF_CLIENT_OPTS} feature:repo-add ${features.repositories} 2> /tmp/installErr
- cat /tmp/installErr
- if grep -q 'Failed to get the session' /tmp/installErr; then
- sleep 10
- else
- let COUNT=10
- fi
- let COUNT=COUNT+1
-done
-COUNT=0
-while [ $COUNT -lt 10 ]; do
- ${ODL_KARAF_CLIENT} ${ODL_KARAF_CLIENT_OPTS} feature:install ${features.boot} 2> /tmp/installErr
- cat /tmp/installErr
- if grep -q 'Failed to get the session' /tmp/installErr; then
- sleep 10
- else
- let COUNT=10
- fi
- let COUNT=COUNT+1
-done
diff --git a/appc-asdc-listener/appc-yang-generator/pom.xml b/appc-asdc-listener/appc-yang-generator/pom.xml
deleted file mode 100644
index 11b5b9d76..000000000
--- a/appc-asdc-listener/appc-yang-generator/pom.xml
+++ /dev/null
@@ -1,74 +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>appc-asdc-listener</artifactId>
- <groupId>org.openecomp.appc</groupId>
- <version>1.1.0-SNAPSHOT</version>
- </parent>
-
- <artifactId>appc-yang-generator</artifactId>
- <packaging>jar</packaging>
-
- <properties>
- <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- </properties>
-
- <dependencies>
- <dependency>
- <groupId>com.att.eelf</groupId>
- <artifactId>eelf-core</artifactId>
- </dependency>
- <dependency>
- <groupId>org.apache.velocity</groupId>
- <artifactId>velocity</artifactId>
- <version>1.7</version>
- </dependency>
- <dependency>
- <groupId>org.opendaylight.yangtools</groupId>
- <artifactId>yang-parser-impl</artifactId>
- <version>${odl.yangtools.version}</version>
- </dependency>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.openecomp.sdc.common</groupId>
- <artifactId>openecomp-tosca-datatype</artifactId>
- <version>${toscalib.version}</version>
- </dependency>
- </dependencies>
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-shade-plugin</artifactId>
- <executions>
- <execution>
- <phase>package</phase>
- <goals>
- <goal>shade</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <finalName>${artifactId}-${version}</finalName>
- </configuration>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-compiler-plugin</artifactId>
- <version>3.6.1</version>
- <configuration>
- <source>1.8</source>
- <target>1.8</target>
- </configuration>
- </plugin>
- </plugins>
- </build>
-
-</project> \ No newline at end of file
diff --git a/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/YANGGenerator.java b/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/YANGGenerator.java
deleted file mode 100644
index 562c4abf2..000000000
--- a/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/YANGGenerator.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.yang;
-
-import org.openecomp.appc.yang.exception.YANGGenerationException;
-
-import java.io.OutputStream;
-
-/**
- * The Interface YANGGenerator - provides method to generate YANG file from TOSCA.
- */
-public interface YANGGenerator {
-
- /**
- * Generate YANG from TOSCA.
- * if any exceptional Type is coming in the input tosca as a part of configuration parameter property, YANGGenerationException will be thrown.
- * This API is not supporting below mentioned built-in Types:
- * bits, decimal64, enumeration, identityref, leafref, union
- *
- * @param uniqueID - Set as module name in the yang, mandatory, cannot be null or empty
- * @param tosca - TOSCA String from which the YANG is to be generated, mandatory, cannot be null or empty
- * @param stream - The outputStream to which the generated yang is written, mandatory, cannot be null
- * @throws YANGGenerationException - Thrown when any error occurred during method execution, the origin can be found from ex.getCause() or ex.getMessage()
- */
-
- void generateYANG(String uniqueID, String tosca, OutputStream stream) throws YANGGenerationException;
-}
diff --git a/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/exception/YANGGenerationException.java b/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/exception/YANGGenerationException.java
deleted file mode 100644
index a37d6f685..000000000
--- a/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/exception/YANGGenerationException.java
+++ /dev/null
@@ -1,51 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.yang.exception;
-
-/**
- * The Class YANGGenerationException.
- */
-public class YANGGenerationException extends Exception {
-
-
- /**
- * Instantiates a new YANG generation exception.
- *
- * @param message - the appropriate message
- * @param cause -the appropriate cause
- */
- public YANGGenerationException(String message,Throwable cause){
- super(message,cause);
- }
-
-
- /**
- * Instantiates new YANG generation exception
- * @param message
- */
- public YANGGenerationException(String message){
- super(message);
- }
-}
diff --git a/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/impl/YANGGeneratorFactory.java b/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/impl/YANGGeneratorFactory.java
deleted file mode 100644
index 25d9b211a..000000000
--- a/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/impl/YANGGeneratorFactory.java
+++ /dev/null
@@ -1,52 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.yang.impl;
-
-import org.openecomp.appc.yang.YANGGenerator;
-
-/**
- * A factory for creating YANGGenerator objects.
- */
-public class YANGGeneratorFactory {
-
- private YANGGeneratorFactory(){}
-
- private static class InstanceHolder
- {
- private static YANGGeneratorImpl instance = new YANGGeneratorImpl();
- private InstanceHolder(){}
- }
-
- /**
- * Gets the YANG generator.
- *
- * @return the YANG generator
- */
- public static YANGGenerator getYANGGenerator()
- {
- return InstanceHolder.instance;
- }
-
-}
diff --git a/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/impl/YANGGeneratorImpl.java b/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/impl/YANGGeneratorImpl.java
deleted file mode 100644
index 246563932..000000000
--- a/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/impl/YANGGeneratorImpl.java
+++ /dev/null
@@ -1,176 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.yang.impl;
-
-import com.att.eelf.configuration.EELFLogger;
-import com.att.eelf.configuration.EELFManager;
-import org.apache.commons.lang.StringUtils;
-import org.apache.velocity.Template;
-import org.apache.velocity.VelocityContext;
-import org.apache.velocity.app.VelocityEngine;
-import org.apache.velocity.exception.ParseErrorException;
-import org.apache.velocity.exception.ResourceNotFoundException;
-import org.apache.velocity.runtime.RuntimeConstants;
-import org.apache.velocity.runtime.resource.loader.ClasspathResourceLoader;
-import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.YangStatementSourceImpl;
-import org.openecomp.appc.yang.YANGGenerator;
-import org.openecomp.appc.yang.exception.YANGGenerationException;
-import org.openecomp.appc.yang.objects.Leaf;
-import org.openecomp.appc.yang.type.YangTypes;
-import org.openecomp.sdc.tosca.datatypes.model.NodeType;
-import org.openecomp.sdc.tosca.datatypes.model.PropertyDefinition;
-import org.openecomp.sdc.tosca.datatypes.model.ServiceTemplate;
-import org.openecomp.sdc.tosca.services.YamlUtil;
-
-import java.io.*;
-import java.util.HashMap;
-import java.util.LinkedList;
-import java.util.List;
-import java.util.Map;
-
-@SuppressWarnings("CheckStyle")
-public class YANGGeneratorImpl implements YANGGenerator {
-
- private static final EELFLogger Log = EELFManager.getInstance().getLogger(YANGGeneratorImpl.class);
- private static final String MODULE_TYPE = "moduleType";
- private static final String LEAVES = "leaves";
-
-
- /* (non-Javadoc)
- * @see org.openecomp.appc.yang.YANGGenerator#generateYANG(java.lang.String, java.lang.String, java.io.OutputStream)
- */
- @Override
- public void generateYANG(String uniqueID, String tosca, OutputStream stream)
- throws YANGGenerationException {
- Log.info("Entered into generateYANG.");
- Log.debug("Received Tosca:\n" + tosca +"\n Received uniqueID: "+uniqueID);
-
- validateInput(uniqueID, tosca, stream);
- Map<String,Object> parsedToscaMap = parseTosca(tosca);
- String moduleType =parsedToscaMap.get(MODULE_TYPE).toString();
- List<Leaf> leaves = (List<Leaf>) parsedToscaMap.get(LEAVES);
- VelocityEngine ve = new VelocityEngine();
- ve.setProperty(RuntimeConstants.RESOURCE_LOADER, "classpath");
- ve.setProperty("classpath.resource.loader.class", ClasspathResourceLoader.class.getName());
- ve.init();
- Template template;
-
- try {
- template = ve.getTemplate("templates/YangTemplate.vm");
- } catch ( ResourceNotFoundException | ParseErrorException ex) {
- Log.error("Error while retrieving YANG Template", ex);
- throw new YANGGenerationException("Error while retrieving YANG Template",ex);
- }
-
- VelocityContext vc = new VelocityContext();
-
- vc.put("moduleName", uniqueID);
- vc.put(MODULE_TYPE, moduleType);
- vc.put(LEAVES, leaves);
-
- StringWriter sw = new StringWriter();
- template.merge(vc,sw);
- Log.debug("generated YANG \n "+sw.toString());
- try {
- String yang = sw.toString();
- validateYang(yang);
- stream.write(yang.getBytes());
- stream.flush();
- } catch (IOException e) {
- Log.error("Error while writing to outputstream", e);
- throw new YANGGenerationException("Error writing to outputstream",e);
- } finally {
- try {
- stream.close();
- } catch (IOException e) {
- Log.error("Error while closing outputstream", e);
- }
- }
- Log.info("exiting generateYANG method.");
- }
-
- private void validateYang(String yang) throws YANGGenerationException {
-
- try(InputStream inputYangStream = new ByteArrayInputStream(yang.getBytes())){
- YangStatementSourceImpl statementSource = new YangStatementSourceImpl(inputYangStream);
- if(statementSource.getYangAST()==null){
- throw new YANGGenerationException("Syntax Error in Generated YANG = " + yang);
- }
- }
- catch(IOException e){
- Log.error("Error validating yang file "+ yang,e);
- throw new YANGGenerationException("Invalid YANG generated",e);
- }
- }
-
- private Map<String,Object> parseTosca(String tosca) throws YANGGenerationException {
- Log.info("Entered into parseTosca.");
- ServiceTemplate serviceTemplate = new YamlUtil().yamlToObject(tosca, ServiceTemplate.class);
- Map<String, NodeType> nodeTypeMap = serviceTemplate.getNode_types();
- String kind = nodeTypeMap.keySet().toArray(new String[0])[0];
- NodeType nodeType = nodeTypeMap.get(kind);
- Map<String,Object> returnMap= new HashMap<>();
- Map<String, PropertyDefinition> propertyDefinitionFromTOSCA = nodeType.getProperties();
- returnMap.put(MODULE_TYPE, kind);
- List<Leaf> leaves = new LinkedList<>();
-
- for(Map.Entry<String, PropertyDefinition> entry: propertyDefinitionFromTOSCA.entrySet()){
- Leaf leaf = new Leaf();
- leaf.setName(entry.getKey());
- PropertyDefinition pd = entry.getValue();
- Map<String,String> typeMap=YangTypes.getYangTypeMap();
- if (typeMap.containsKey(pd.getType())) {
- String paramType = typeMap.get(pd.getType());
- leaf.setType(paramType);
- leaf.setDescription(!StringUtils.isEmpty(pd.getDescription()) ? pd.getDescription() : "");
- leaf.setMandatory((pd.getRequired() != null) ? Boolean.toString(pd.getRequired()) : Boolean.toString(false));
- leaf.setDefaultValue((pd.get_default() != null) ? pd.get_default().toString(): "");
- leaves.add(leaf);
- } else {
- YANGGenerationException yangGenerationException = new YANGGenerationException(pd.getType() + " Type is not supported ", null);
- Log.error(pd.getType() + " Type is not supported ", yangGenerationException);
- throw yangGenerationException;
- }
- }
- returnMap.put(LEAVES, leaves);
- Log.info("exiting parseTosca method with return MAP "+returnMap);
- return returnMap;
- }
-
- private void validateInput(String uniqueID, String tosca, OutputStream stream) throws YANGGenerationException {
- Log.info("Entered into validateInput.");
- if(StringUtils.isEmpty(uniqueID)) {
- throw new YANGGenerationException("uniqueID is mandatory, cannot be null or empty.",null);
- }
- if(StringUtils.isEmpty(tosca)) {
- throw new YANGGenerationException("tosca is mandatory, cannot be null or empty.",null);
- }
- if(stream == null){
- throw new YANGGenerationException("stream is mandatory, cannot be null.",null);
- }
- Log.info("exiting validateInput method.");
- }
-
-}
diff --git a/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/objects/Leaf.java b/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/objects/Leaf.java
deleted file mode 100644
index 013e31475..000000000
--- a/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/objects/Leaf.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.yang.objects;
-
-public class Leaf {
- private String name;
- private String type;
- private String description;
- private String mandatory;
- private String defaultValue;
-
- public String getName() {
- return name;
- }
- public void setName(String name) {
- this.name = name;
- }
- public String getType() {
- return type;
- }
- public void setType(String type) {
- this.type = type;
- }
- public String getDescription() {
- return description;
- }
- public void setDescription(String description) {
- this.description = description;
- }
- public String getMandatory() {
- return mandatory;
- }
- public void setMandatory(String mandatory) {
- this.mandatory = mandatory;
- }
- public String getDefaultValue() {
- return defaultValue;
- }
- public void setDefaultValue(String defaultValue) {
- this.defaultValue = defaultValue;
- }
- @Override
- public String toString() {
- return "Leaf [name=" + name + ", type=" + type + ", description=" + description + ", mandatory=" + mandatory
- + ", defaultValue=" + defaultValue + "]";
- }
-
-
-
-}
diff --git a/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/type/YangTypes.java b/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/type/YangTypes.java
deleted file mode 100644
index ca18c4311..000000000
--- a/appc-asdc-listener/appc-yang-generator/src/main/java/org/openecomp/appc/yang/type/YangTypes.java
+++ /dev/null
@@ -1,108 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc.yang.type;
-
-import java.util.Collections;
-import java.util.HashMap;
-import java.util.Map;
-
-public class YangTypes {
-
- private static final Map<String, String> yangTypeMap;
- private YangTypes(){}
- static {
- Map<String, String> typeMap = new HashMap<>();
-
- /* standard Types */
- /* typeMap.put("bits","bits");
- typeMap.put("leafref","leafref");
- typeMap.put("decimal64","decimal64");
- typeMap.put("enumeration","enumeration");
- typeMap.put("identityref","identityref");
- typeMap.put("union","union");*/
- typeMap.put("binary","binary");
- typeMap.put("boolean","boolean");
- typeMap.put("empty","empty");
- typeMap.put("instance-identifier","instance-identifier");
- typeMap.put("int8","int8");
- typeMap.put("int16","int16");
- typeMap.put("int32","int32");
- typeMap.put("int64","int64");
- typeMap.put("string","string");
- typeMap.put("uint8","uint8");
- typeMap.put("uint16","uint16");
- typeMap.put("uint32","uint32");
- typeMap.put("uint64","uint64");
-
-
- /* ietf-yang-types */
-
- typeMap.put("counter32","yang:counter32");
- typeMap.put("zero-based-counter32","yang:zero-based-counter32");
- typeMap.put("counter64","yang:counter64");
- typeMap.put("zero-based-counter64","yang:zero-based-counter64");
- typeMap.put("gauge32","yang:gauge32");
- typeMap.put("gauge64","yang:gauge64");
- typeMap.put("object-identifier","yang:object-identifier");
- typeMap.put("object-identifier-128","yang:object-identifier-128");
- typeMap.put("yang-identifier","yang:yang-identifier");
- typeMap.put("date-and-time","yang:date-and-time");
- typeMap.put("timeticks","yang:timeticks");
- typeMap.put("timestamp","yang:timestamp");
- typeMap.put("phys-address","yang:phys-address");
- typeMap.put("mac-address","yang:mac-address");
- typeMap.put("xpath1.0","yang:xpath1.0");
- typeMap.put("hex-string","yang:hex-string");
- typeMap.put("uuid","yang:uuid");
- typeMap.put("dotted-quad","yang:dotted-quad");
-
- /* ietf-inet-types */
-
- typeMap.put("ip-version","inet:ip-version");
- typeMap.put("dscp","inet:dscp");
- typeMap.put("ipv6-flow-label","inet:ipv6-flow-label");
- typeMap.put("port-number","inet:port-number");
- typeMap.put("as-number","inet:as-number");
- typeMap.put("ip-address","inet:ip-address");
- typeMap.put("ipv4-address","inet:ipv4-address");
- typeMap.put("ipv6-address","inet:ipv6-address");
- typeMap.put("ip-address-no-zone","inet:ip-address-no-zone");
- typeMap.put("ipv4-address-no-zone","inet:ipv4-address-no-zone");
- typeMap.put("ipv6-address-no-zone","inet:ipv6-address-no-zone");
- typeMap.put("ip-prefix","inet:ip-prefix");
- typeMap.put("ipv4-prefix","inet:ipv4-prefix");
- typeMap.put("ipv6-prefix","inet:ipv6-prefix");
- typeMap.put("domain-name","inet:domain-name");
- typeMap.put("host","inet:host");
- typeMap.put("uri","inet:uri");
-
- yangTypeMap = Collections.unmodifiableMap(typeMap);
- }
-
- public static Map<String, String> getYangTypeMap(){
- return yangTypeMap;
- }
-
-}
diff --git a/appc-asdc-listener/appc-yang-generator/src/main/resources/templates/YangTemplate.vm b/appc-asdc-listener/appc-yang-generator/src/main/resources/templates/YangTemplate.vm
deleted file mode 100644
index ab608c5e1..000000000
--- a/appc-asdc-listener/appc-yang-generator/src/main/resources/templates/YangTemplate.vm
+++ /dev/null
@@ -1,47 +0,0 @@
-module $moduleName {
- yang-version 1;
- namespace "org:openecomp:appc:vnf:$moduleName";
- prefix appc-vnf;
- organization "Copyright 2017 AT&T Intellectual Property.";
-
- description
- "$moduleType description";
-
- revision "2017-01-01" {
- description
- "$moduleName Configuration";
- }
-
- import ietf-inet-types {
- prefix inet;
- }
-
- import ietf-yang-types {
- prefix yang;
- }
-
- grouping vnf-config-grp {
- container vnf-config {
- #foreach( $data in $leaves )
- leaf $data.getName() {
- type $data.getType();
- description "$data.getDescription()";
- mandatory $data.getMandatory();
- default "$data.getDefaultValue()";
- }
- #end
-}
- }
-
- container vnf-config-repo {
- list vnf-config-list {
- key "vnf-identifier";
- leaf vnf-identifier {
- type string;
- }
- uses vnf-config-grp;
- }
-
- }
-
-}
diff --git a/appc-asdc-listener/appc-yang-generator/src/test/java/org/openecomp/appc/TestYANGGenerator.java b/appc-asdc-listener/appc-yang-generator/src/test/java/org/openecomp/appc/TestYANGGenerator.java
deleted file mode 100644
index a4487ac52..000000000
--- a/appc-asdc-listener/appc-yang-generator/src/test/java/org/openecomp/appc/TestYANGGenerator.java
+++ /dev/null
@@ -1,197 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-package org.openecomp.appc;
-
-import org.junit.*;
-import org.junit.rules.TemporaryFolder;
-import org.openecomp.appc.yang.YANGGenerator;
-import org.openecomp.appc.yang.exception.YANGGenerationException;
-import org.openecomp.appc.yang.impl.YANGGeneratorFactory;
-
-import java.io.*;
-
-/**
- * The Class TestYANGGenerator - Junit Test Class for all related test cases.
- */
-@Ignore
-public class TestYANGGenerator {
-
- private YANGGenerator yangGenerator = YANGGeneratorFactory.getYANGGenerator();
- private static String tosca;
- private static String toscaWithSyntaxError;
- private static String expectedYang;
-
- @Rule
- public TemporaryFolder temporaryFolder = new TemporaryFolder();
-
- /**
- * Run before test method.
- *
- * @throws IOException Signals that an I/O exception has occurred.
- */
- @Before
- public void runBeforeTestMethod() throws IOException {
- tosca= getFileContent("tosca/toscaFile.yml");
- toscaWithSyntaxError = getFileContent("tosca/toscaFileWithSyntaxError.yml");
- expectedYang = getFileContent("yang/expectedYang.yang");
- }
-
- /**
- * Test YANG generator for success.
- *
- * @throws IOException Signals that an I/O exception has occurred.
- * @throws YANGGenerationException the YANG generation exception
- */
- @Test
- public void TestYANGGeneratorForSuccess() throws IOException, YANGGenerationException {
- File tempFile = temporaryFolder.newFile("generatedYang.yang");
- OutputStream out = new FileOutputStream(tempFile);
- Assert.assertNotNull(tosca);
- Assert.assertFalse("tosca file is emply or blank", tosca.equals(""));
- yangGenerator.generateYANG("ATD456", tosca, out);
- out.flush();
- out.close();
- String generatedYang = getFileContent(tempFile);
- Assert.assertEquals(expectedYang,generatedYang);
- }
-
- @Test(expected = YANGGenerationException.class)
- public void testYangGenerationForSyntaxError() throws IOException, YANGGenerationException {
- File tempFile = temporaryFolder.newFile("generatedYang.yang");
- OutputStream out = new FileOutputStream(tempFile);
- yangGenerator.generateYANG("ATD456",toscaWithSyntaxError,out);
- }
-
-
- /**
- * Test for Yang Generator which generates YANG that is not matching with expected YANG.
- *
- * @throws IOException Signals that an I/O exception has occurred.
- * @throws YANGGenerationException - the YANG generation exception
- */
- @Test
- public void unmatchedYangGenerationTest() throws IOException, YANGGenerationException {
- File tempFile = temporaryFolder.newFile("generatedYang.yang");
- OutputStream out = new FileOutputStream(tempFile);
- yangGenerator.generateYANG("112476", tosca, out);
- out.flush();
- out.close();
- String generatedYang = getFileContent(tempFile);
- Assert.assertNotSame(expectedYang, generatedYang);
-
- }
-
- /**
- * Yang generation test for empty tosca input.
- *
- * @throws YANGGenerationException the YANG generation exception
- */
- @Test(expected = YANGGenerationException.class)
- public void YangGenerationTestForEmptyUniqueIDInput() throws IOException, YANGGenerationException {
-// OutputStream out = new FileOutputStream(classLoader.getResource("yang/generatedYang.yang").getFile());
- File tempFile = temporaryFolder.newFile("generatedYang.yang");
- OutputStream out = new FileOutputStream(tempFile);
- yangGenerator.generateYANG("", tosca, out);
- }
-
- /**
- * Yang generation test for empty tosca input.
- *
- * @throws YANGGenerationException the YANG generation exception
- */
- @Test(expected = YANGGenerationException.class)
- public void YangGenerationTestForUnSupportedType() throws IOException, YANGGenerationException {
- tosca= getFileContent("tosca/toscaFileWithUnsupportedTypes.yml");
- File tempFile = temporaryFolder.newFile("generatedYang.yang");
- OutputStream out = new FileOutputStream(tempFile);
- yangGenerator.generateYANG("", tosca, out);
- }
-
- /**
- * Yang generation test for empty tosca input.
- *
- * @throws YANGGenerationException the YANG generation exception
- */
- @Test(expected = YANGGenerationException.class)
- public void YangGenerationTestForEmptyToscaInput() throws IOException, YANGGenerationException {
- File tempFile = temporaryFolder.newFile("generatedYang.yang");
- OutputStream out = new FileOutputStream(tempFile);
- yangGenerator.generateYANG("1111", "", out);
- }
-
- /**
- * YANG generation test with invalid method arguments.
- *
- * @throws YANGGenerationException the YANG generation exception
- */
- @Test(expected = YANGGenerationException.class)
- public void YANGGenerationTestWithInvalidMethodArguments() throws YANGGenerationException {
- yangGenerator.generateYANG("112476", "ToscaSAMPLE", null);
- }
-
- @Test(expected = YANGGenerationException.class)
- public void YANGGenerationTestWithIOException() throws IOException, YANGGenerationException {
- File tempFile = temporaryFolder.newFile("generatedYang.yang");
- OutputStream out = new FileOutputStream(tempFile);
- out.flush();
- out.close();
- yangGenerator.generateYANG("1111", tosca, out);
- }
-
-
- private String getFileContent(String fileName) throws IOException
- {
- ClassLoader classLoader = new TestYANGGenerator().getClass().getClassLoader();
- InputStream is = new FileInputStream(classLoader.getResource(fileName).getFile());
- BufferedReader buf = new BufferedReader(new InputStreamReader(is));
- String line = buf.readLine();
- StringBuilder sb = new StringBuilder();
-
- while (line != null) {
- sb.append(line).append("\n");
- line = buf.readLine();
- }
- String fileString = sb.toString();
- is.close();
- return fileString;
- }
-
- private String getFileContent(File file) throws IOException
- {
- InputStream is = new FileInputStream(file);
- BufferedReader buf = new BufferedReader(new InputStreamReader(is));
- String line = buf.readLine();
- StringBuilder sb = new StringBuilder();
-
- while (line != null) {
- sb.append(line).append("\n");
- line = buf.readLine();
- }
- String fileString = sb.toString();
- is.close();
- return fileString;
- }
-
-}
diff --git a/appc-asdc-listener/appc-yang-generator/src/test/resources/tosca/toscaFile.yml b/appc-asdc-listener/appc-yang-generator/src/test/resources/tosca/toscaFile.yml
deleted file mode 100644
index 0356678d1..000000000
--- a/appc-asdc-listener/appc-yang-generator/src/test/resources/tosca/toscaFile.yml
+++ /dev/null
@@ -1,319 +0,0 @@
-###
-# ============LICENSE_START=======================================================
-# ONAP : APPC
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
-# Copyright (C) 2017 Amdocs
-# =============================================================================
-# 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.
-#
-# ECOMP is a trademark and service mark of AT&T Intellectual Property.
-# ============LICENSE_END=========================================================
-###
-
-node_types:
- Property Definition:
- derived_from: org.openecomp.genericvnf
- version: V1
- description: ''
- properties:
- param1:
- type: domain-name
- description: param1 desc
- required: true
- default: param1 def val
- status: SUPPORTED
- param2:
- type: ipv4-address-no-zone
- description: param2 desc
- required: true
- default: param2 def val
- status: SUPPORTED
- param3:
- type: instance-identifier
- description: param3 desc
- required: true
- default: param3 def val
- status: SUPPORTED
- param4:
- type: uuid
- description: param4 desc
- required: true
- default: param4 def val
- status: SUPPORTED
- param5:
- type: empty
- description: param5 desc
- required: true
- default: param5 def val
- status: SUPPORTED
- param6:
- type: object-identifier-128
- description: param6 desc
- required: true
- default: param6 def val
- status: SUPPORTED
- param7:
- type: dscp
- description: param7 desc
- required: true
- default: param7 def val
- status: SUPPORTED
- param8:
- type: int64
- description: param8 desc
- required: true
- default: param8 def val
- status: SUPPORTED
- param9:
- type: zero-based-counter64
- description: param9 desc
- required: true
- default: param9 def val
- status: SUPPORTED
- param10:
- type: int8
- description: param10 desc
- required: true
- default: param10 def val
- status: SUPPORTED
- param11:
- type: host
- description: param11 desc
- required: true
- default: param11 def val
- status: SUPPORTED
- param12:
- type: uint32
- description: param12 desc
- required: true
- default: param12 def val
- status: SUPPORTED
- param13:
- type: timeticks
- description: param13 desc
- required: true
- default: param13 def val
- status: SUPPORTED
- param15:
- type: mac-address
- description: param15 desc
- required: true
- default: param15 def val
- status: SUPPORTED
- param16:
- type: as-number
- description: param16 desc
- required: true
- default: param16 def val
- status: SUPPORTED
- param17:
- type: counter64
- description: param17 desc
- required: true
- default: param17 def val
- status: SUPPORTED
- param19:
- type: xpath1.0
- description: param19 desc
- required: true
- default: param19 def val
- status: SUPPORTED
- param20:
- type: ip-version
- description: param20 desc
- required: true
- default: param20 def val
- status: SUPPORTED
- param21:
- type: port-number
- description: param21 desc
- required: true
- default: param21 def val
- status: SUPPORTED
- param22:
- type: int16
- description: param22 desc
- required: true
- default: param22 def val
- status: SUPPORTED
- param23:
- type: ipv6-address-no-zone
- description: param23 desc
- required: true
- default: param23 def val
- status: SUPPORTED
- param24:
- type: hex-string
- description: param24 desc
- required: true
- default: param24 def val
- status: SUPPORTED
- param26:
- type: uint64
- description: param26 desc
- required: true
- default: param26 def val
- status: SUPPORTED
- param27:
- type: uint8
- description: param27 desc
- required: true
- default: param27 def val
- status: SUPPORTED
- param28:
- type: ipv4-prefix
- description: param28 desc
- required: true
- default: param28 def val
- status: SUPPORTED
- param29:
- type: ipv6-prefix
- description: param29 desc
- required: true
- default: param29 def val
- status: SUPPORTED
- param30:
- type: gauge64
- description: param30 desc
- required: true
- default: param30 def val
- status: SUPPORTED
- param31:
- type: counter32
- description: param31 desc
- required: true
- default: param31 def val
- status: SUPPORTED
- param32:
- type: string
- description: param32 desc
- required: true
- default: param32 def val
- status: SUPPORTED
- param33:
- type: object-identifier
- description: param33 desc
- required: true
- default: param33 def val
- status: SUPPORTED
- param34:
- type: ip-address-no-zone
- description: param34 desc
- required: true
- default: param34 def val
- status: SUPPORTED
- param36:
- type: gauge32
- description: param36 desc
- required: true
- default: param36 def val
- status: SUPPORTED
- param37:
- type: ipv4-address
- description: param37 desc
- required: true
- default: param37 def val
- status: SUPPORTED
- param38:
- type: ip-prefix
- description: param38 desc
- required: true
- default: param38 def val
- status: SUPPORTED
- param39:
- type: uint16
- description: param39 desc
- required: true
- default: param39 def val
- status: SUPPORTED
- param40:
- type: timestamp
- description: param40 desc
- required: true
- default: param40 def val
- status: SUPPORTED
- param42:
- type: dotted-quad
- description: param42 desc
- required: true
- default: param42 def val
- status: SUPPORTED
- param43:
- type: uri
- description: param43 desc
- required: true
- default: param43 def val
- status: SUPPORTED
- param44:
- type: ipv6-address
- description: param44 desc
- required: true
- default: param44 def val
- status: SUPPORTED
- param45:
- type: ipv6-flow-label
- description: param45 desc
- required: true
- default: param45 def val
- status: SUPPORTED
- param46:
- type: zero-based-counter32
- description: param46 desc
- required: true
- default: param46 def val
- status: SUPPORTED
- param47:
- type: ip-address
- description: param47 desc
- required: true
- default: param47 def val
- status: SUPPORTED
- param48:
- type: boolean
- description: param48 desc
- required: true
- default: param48 def val
- status: SUPPORTED
- param50:
- type: yang-identifier
- description: param50 desc
- required: true
- default: param50 def val
- status: SUPPORTED
- param51:
- type: int32
- description: param51 desc
- required: true
- default: param51 def val
- status: SUPPORTED
- param52:
- type: date-and-time
- description: param52 desc
- required: true
- default: param52 def val
- status: SUPPORTED
- param53:
- type: phys-address
- description: param53 desc
- required: true
- default: param53 def val
- status: SUPPORTED
-topology_template:
- node_templates:
- Property Definition_Template:
- type: Property Definition
- properties:
- param 1: <rule-type:rule1> <resk1:resk2 , resk2:resv2 , resk3:resv3> param1 source <reqk1:reqv1 , reqk2:reqv2 , reqk3:reqv3>
- param 2: <rule-type:rule2> <resk1:resk2 , resk2:resv2> param2 source <reqk1:reqv1 , reqk2:reqv2 , reqk3:reqv3>
diff --git a/appc-asdc-listener/appc-yang-generator/src/test/resources/tosca/toscaFileWithSyntaxError.yml b/appc-asdc-listener/appc-yang-generator/src/test/resources/tosca/toscaFileWithSyntaxError.yml
deleted file mode 100644
index 8ef1729a9..000000000
--- a/appc-asdc-listener/appc-yang-generator/src/test/resources/tosca/toscaFileWithSyntaxError.yml
+++ /dev/null
@@ -1,319 +0,0 @@
-###
-# ============LICENSE_START=======================================================
-# ONAP : APPC
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
-# Copyright (C) 2017 Amdocs
-# =============================================================================
-# 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.
-#
-# ECOMP is a trademark and service mark of AT&T Intellectual Property.
-# ============LICENSE_END=========================================================
-###
-
-node_types:
- Property Definition:
- derived_from: org.openecomp.genericvnf
- version: V1
- description: ''
- properties:
- param 1:
- type: domain-name
- description: param1 desc
- required: true
- default: param1 def val
- status: SUPPORTED
- param2:
- type: ipv4-address-no-zone
- description: param2 desc
- required: true
- default: param2 def val
- status: SUPPORTED
- param3:
- type: instance-identifier
- description: param3 desc
- required: true
- default: param3 def val
- status: SUPPORTED
- param4:
- type: uuid
- description: param4 desc
- required: true
- default: param4 def val
- status: SUPPORTED
- param5:
- type: empty
- description: param5 desc
- required: true
- default: param5 def val
- status: SUPPORTED
- param6:
- type: object-identifier-128
- description: param6 desc
- required: true
- default: param6 def val
- status: SUPPORTED
- param7:
- type: dscp
- description: param7 desc
- required: true
- default: param7 def val
- status: SUPPORTED
- param8:
- type: int64
- description: param8 desc
- required: true
- default: param8 def val
- status: SUPPORTED
- param9:
- type: zero-based-counter64
- description: param9 desc
- required: true
- default: param9 def val
- status: SUPPORTED
- param10:
- type: int8
- description: param10 desc
- required: true
- default: param10 def val
- status: SUPPORTED
- param11:
- type: host
- description: param11 desc
- required: true
- default: param11 def val
- status: SUPPORTED
- param12:
- type: uint32
- description: param12 desc
- required: true
- default: param12 def val
- status: SUPPORTED
- param13:
- type: timeticks
- description: param13 desc
- required: true
- default: param13 def val
- status: SUPPORTED
- param15:
- type: mac-address
- description: param15 desc
- required: true
- default: param15 def val
- status: SUPPORTED
- param16:
- type: as-number
- description: param16 desc
- required: true
- default: param16 def val
- status: SUPPORTED
- param17:
- type: counter64
- description: param17 desc
- required: true
- default: param17 def val
- status: SUPPORTED
- param19:
- type: xpath1.0
- description: param19 desc
- required: true
- default: param19 def val
- status: SUPPORTED
- param20:
- type: ip-version
- description: param20 desc
- required: true
- default: param20 def val
- status: SUPPORTED
- param21:
- type: port-number
- description: param21 desc
- required: true
- default: param21 def val
- status: SUPPORTED
- param22:
- type: int16
- description: param22 desc
- required: true
- default: param22 def val
- status: SUPPORTED
- param23:
- type: ipv6-address-no-zone
- description: param23 desc
- required: true
- default: param23 def val
- status: SUPPORTED
- param24:
- type: hex-string
- description: param24 desc
- required: true
- default: param24 def val
- status: SUPPORTED
- param26:
- type: uint64
- description: param26 desc
- required: true
- default: param26 def val
- status: SUPPORTED
- param27:
- type: uint8
- description: param27 desc
- required: true
- default: param27 def val
- status: SUPPORTED
- param28:
- type: ipv4-prefix
- description: param28 desc
- required: true
- default: param28 def val
- status: SUPPORTED
- param29:
- type: ipv6-prefix
- description: param29 desc
- required: true
- default: param29 def val
- status: SUPPORTED
- param30:
- type: gauge64
- description: param30 desc
- required: true
- default: param30 def val
- status: SUPPORTED
- param31:
- type: counter32
- description: param31 desc
- required: true
- default: param31 def val
- status: SUPPORTED
- param32:
- type: string
- description: param32 desc
- required: true
- default: param32 def val
- status: SUPPORTED
- param33:
- type: object-identifier
- description: param33 desc
- required: true
- default: param33 def val
- status: SUPPORTED
- param34:
- type: ip-address-no-zone
- description: param34 desc
- required: true
- default: param34 def val
- status: SUPPORTED
- param36:
- type: gauge32
- description: param36 desc
- required: true
- default: param36 def val
- status: SUPPORTED
- param37:
- type: ipv4-address
- description: param37 desc
- required: true
- default: param37 def val
- status: SUPPORTED
- param38:
- type: ip-prefix
- description: param38 desc
- required: true
- default: param38 def val
- status: SUPPORTED
- param39:
- type: uint16
- description: param39 desc
- required: true
- default: param39 def val
- status: SUPPORTED
- param40:
- type: timestamp
- description: param40 desc
- required: true
- default: param40 def val
- status: SUPPORTED
- param42:
- type: dotted-quad
- description: param42 desc
- required: true
- default: param42 def val
- status: SUPPORTED
- param43:
- type: uri
- description: param43 desc
- required: true
- default: param43 def val
- status: SUPPORTED
- param44:
- type: ipv6-address
- description: param44 desc
- required: true
- default: param44 def val
- status: SUPPORTED
- param45:
- type: ipv6-flow-label
- description: param45 desc
- required: true
- default: param45 def val
- status: SUPPORTED
- param46:
- type: zero-based-counter32
- description: param46 desc
- required: true
- default: param46 def val
- status: SUPPORTED
- param47:
- type: ip-address
- description: param47 desc
- required: true
- default: param47 def val
- status: SUPPORTED
- param48:
- type: boolean
- description: param48 desc
- required: true
- default: param48 def val
- status: SUPPORTED
- param50:
- type: yang-identifier
- description: param50 desc
- required: true
- default: param50 def val
- status: SUPPORTED
- param51:
- type: int32
- description: param51 desc
- required: true
- default: param51 def val
- status: SUPPORTED
- param52:
- type: date-and-time
- description: param52 desc
- required: true
- default: param52 def val
- status: SUPPORTED
- param53:
- type: phys-address
- description: param53 desc
- required: true
- default: param53 def val
- status: SUPPORTED
-topology_template:
- node_templates:
- Property Definition_Template:
- type: Property Definition
- properties:
- param 1: <rule-type:rule1> <resk1:resk2 , resk2:resv2 , resk3:resv3> param1 source <reqk1:reqv1 , reqk2:reqv2 , reqk3:reqv3>
- param 2: <rule-type:rule2> <resk1:resk2 , resk2:resv2> param2 source <reqk1:reqv1 , reqk2:reqv2 , reqk3:reqv3>
diff --git a/appc-asdc-listener/appc-yang-generator/src/test/resources/tosca/toscaFileWithUnsupportedTypes.yml b/appc-asdc-listener/appc-yang-generator/src/test/resources/tosca/toscaFileWithUnsupportedTypes.yml
deleted file mode 100644
index e2102e134..000000000
--- a/appc-asdc-listener/appc-yang-generator/src/test/resources/tosca/toscaFileWithUnsupportedTypes.yml
+++ /dev/null
@@ -1,373 +0,0 @@
-###
-# ============LICENSE_START=======================================================
-# ONAP : APPC
-# ================================================================================
-# Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
-# ================================================================================
-# Copyright (C) 2017 Amdocs
-# =============================================================================
-# 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.
-#
-# ECOMP is a trademark and service mark of AT&T Intellectual Property.
-# ============LICENSE_END=========================================================
-###
-
-node_types:
- Property Definition:
- derived_from: org.openecomp.genericvnf
- version: V1
- description: ''
- properties:
- param1:
- type: domain-name
- description: param1 desc
- required: true
- default: param1 def val
- status: SUPPORTED
- param2:
- type: ipv4-address-no-zone
- description: param2 desc
- required: true
- default: param2 def val
- status: SUPPORTED
- param3:
- type: instance-identifier
- description: param3 desc
- required: true
- default: param3 def val
- status: SUPPORTED
- param4:
- type: uuid
- description: param4 desc
- required: true
- default: param4 def val
- status: SUPPORTED
- param5:
- type: empty
- description: param5 desc
- required: true
- default: param5 def val
- status: SUPPORTED
- param6:
- type: object-identifier-128
- description: param6 desc
- required: true
- default: param6 def val
- status: SUPPORTED
- param7:
- type: dscp
- description: param7 desc
- required: true
- default: param7 def val
- status: SUPPORTED
- param8:
- type: int64
- description: param8 desc
- required: true
- default: param8 def val
- status: SUPPORTED
- param9:
- type: zero-based-counter64
- description: param9 desc
- required: true
- default: param9 def val
- status: SUPPORTED
- param10:
- type: int8
- description: param10 desc
- required: true
- default: param10 def val
- status: SUPPORTED
- param11:
- type: host
- description: param11 desc
- required: true
- default: param11 def val
- status: SUPPORTED
- param12:
- type: uint32
- description: param12 desc
- required: true
- default: param12 def val
- status: SUPPORTED
- param13:
- type: timeticks
- description: param13 desc
- required: true
- default: param13 def val
- status: SUPPORTED
- param14:
- type: enumeration
- description: param14 desc
- required: true
- default: param14 def val
- status: SUPPORTED
- param15:
- type: mac-address
- description: param15 desc
- required: true
- default: param15 def val
- status: SUPPORTED
- param16:
- type: as-number
- description: param16 desc
- required: true
- default: param16 def val
- status: SUPPORTED
- param17:
- type: counter64
- description: param17 desc
- required: true
- default: param17 def val
- status: SUPPORTED
- param18:
- type: bits
- description: param18 desc
- required: true
- default: param18 def val
- status: SUPPORTED
- param19:
- type: xpath1.0
- description: param19 desc
- required: true
- default: param19 def val
- status: SUPPORTED
- param20:
- type: ip-version
- description: param20 desc
- required: true
- default: param20 def val
- status: SUPPORTED
- param21:
- type: port-number
- description: param21 desc
- required: true
- default: param21 def val
- status: SUPPORTED
- param22:
- type: int16
- description: param22 desc
- required: true
- default: param22 def val
- status: SUPPORTED
- param23:
- type: ipv6-address-no-zone
- description: param23 desc
- required: true
- default: param23 def val
- status: SUPPORTED
- param24:
- type: hex-string
- description: param24 desc
- required: true
- default: param24 def val
- status: SUPPORTED
- param25:
- type: decimal64
- description: param25 desc
- required: true
- default: param25 def val
- status: SUPPORTED
- param26:
- type: uint64
- description: param26 desc
- required: true
- default: param26 def val
- status: SUPPORTED
- param27:
- type: uint8
- description: param27 desc
- required: true
- default: param27 def val
- status: SUPPORTED
- param28:
- type: ipv4-prefix
- description: param28 desc
- required: true
- default: param28 def val
- status: SUPPORTED
- param29:
- type: ipv6-prefix
- description: param29 desc
- required: true
- default: param29 def val
- status: SUPPORTED
- param30:
- type: gauge64
- description: param30 desc
- required: true
- default: param30 def val
- status: SUPPORTED
- param31:
- type: counter32
- description: param31 desc
- required: true
- default: param31 def val
- status: SUPPORTED
- param32:
- type: string
- description: param32 desc
- required: true
- default: param32 def val
- status: SUPPORTED
- param33:
- type: object-identifier
- description: param33 desc
- required: true
- default: param33 def val
- status: SUPPORTED
- param34:
- type: ip-address-no-zone
- description: param34 desc
- required: true
- default: param34 def val
- status: SUPPORTED
- param35:
- type: identityref
- description: param35 desc
- required: true
- default: param35 def val
- status: SUPPORTED
- param36:
- type: gauge32
- description: param36 desc
- required: true
- default: param36 def val
- status: SUPPORTED
- param37:
- type: ipv4-address
- description: param37 desc
- required: true
- default: param37 def val
- status: SUPPORTED
- param38:
- type: ip-prefix
- description: param38 desc
- required: true
- default: param38 def val
- status: SUPPORTED
- param39:
- type: uint16
- description: param39 desc
- required: true
- default: param39 def val
- status: SUPPORTED
- param40:
- type: timestamp
- description: param40 desc
- required: true
- default: param40 def val
- status: SUPPORTED
- param41:
- type: union
- description: param41 desc
- required: true
- default: param41 def val
- status: SUPPORTED
- param42:
- type: dotted-quad
- description: param42 desc
- required: true
- default: param42 def val
- status: SUPPORTED
- param43:
- type: uri
- description: param43 desc
- required: true
- default: param43 def val
- status: SUPPORTED
- param44:
- type: ipv6-address
- description: param44 desc
- required: true
- default: param44 def val
- status: SUPPORTED
- param45:
- type: ipv6-flow-label
- description: param45 desc
- required: true
- default: param45 def val
- status: SUPPORTED
- param46:
- type: zero-based-counter32
- description: param46 desc
- required: true
- default: param46 def val
- status: SUPPORTED
- param47:
- type: ip-address
- description: param47 desc
- required: true
- default: param47 def val
- status: SUPPORTED
- param48:
- type: boolean
- description: param48 desc
- required: true
- default: param48 def val
- status: SUPPORTED
- param49:
- type: leafref
- description: param49 desc
- required: true
- default: param49 def val
- status: SUPPORTED
- param50:
- type: yang-identifier
- description: param50 desc
- required: true
- default: param50 def val
- status: SUPPORTED
- param51:
- type: int32
- description: param51 desc
- required: true
- default: param51 def val
- status: SUPPORTED
- param52:
- type: date-and-time
- description: param52 desc
- required: true
- default: param52 def val
- status: SUPPORTED
- param53:
- type: phys-address
- description: param53 desc
- required: true
- default: param53 def val
- status: SUPPORTED
- param54:
- type: phys-add
- description: param54 desc
- required: true
- default: param54 def val
- status: SUPPORTED
- param55:
- type: null
- description: param55 desc
- required: true
- default: param55 def val
- status: SUPPORTED
- param56:
- type:
- description: param56 desc
- required: true
- default: param56 def val
- status: SUPPORTED
-topology_template:
- node_templates:
- Property Definition_Template:
- type: Property Definition
- properties:
- param 1: <rule-type:rule1> <resk1:resk2 , resk2:resv2 , resk3:resv3> param1 source <reqk1:reqv1 , reqk2:reqv2 , reqk3:reqv3>
- param 2: <rule-type:rule2> <resk1:resk2 , resk2:resv2> param2 source <reqk1:reqv1 , reqk2:reqv2 , reqk3:reqv3>
diff --git a/appc-asdc-listener/appc-yang-generator/src/test/resources/yang/expectedYang.yang b/appc-asdc-listener/appc-yang-generator/src/test/resources/yang/expectedYang.yang
deleted file mode 100644
index 29c89182b..000000000
--- a/appc-asdc-listener/appc-yang-generator/src/test/resources/yang/expectedYang.yang
+++ /dev/null
@@ -1,345 +0,0 @@
-/*-
- * ============LICENSE_START=======================================================
- * ONAP : APPC
- * ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
- * ================================================================================
- * Copyright (C) 2017 Amdocs
- * =============================================================================
- * 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.
- *
- * ECOMP is a trademark and service mark of AT&T Intellectual Property.
- * ============LICENSE_END=========================================================
- */
-
-module ATD456 {
- yang-version 1;
- namespace "org:openecomp:appc:vnf:ATD456";
- prefix appc-vnf;
- organization "Copyright 2017 AT&T Intellectual Property.";
-
- description
- "Property Definition description";
-
- revision "2017-01-01" {
- description
- "ATD456 Configuration";
- }
-
- import ietf-inet-types {
- prefix inet;
- }
-
- import ietf-yang-types {
- prefix yang;
- }
-
- grouping vnf-config-grp {
- container vnf-config {
- leaf param1 {
- type inet:domain-name;
- description "param1 desc";
- mandatory true;
- default "param1 def val";
- }
- leaf param2 {
- type inet:ipv4-address-no-zone;
- description "param2 desc";
- mandatory true;
- default "param2 def val";
- }
- leaf param3 {
- type instance-identifier;
- description "param3 desc";
- mandatory true;
- default "param3 def val";
- }
- leaf param4 {
- type yang:uuid;
- description "param4 desc";
- mandatory true;
- default "param4 def val";
- }
- leaf param5 {
- type empty;
- description "param5 desc";
- mandatory true;
- default "param5 def val";
- }
- leaf param6 {
- type yang:object-identifier-128;
- description "param6 desc";
- mandatory true;
- default "param6 def val";
- }
- leaf param7 {
- type inet:dscp;
- description "param7 desc";
- mandatory true;
- default "param7 def val";
- }
- leaf param8 {
- type int64;
- description "param8 desc";
- mandatory true;
- default "param8 def val";
- }
- leaf param9 {
- type yang:zero-based-counter64;
- description "param9 desc";
- mandatory true;
- default "param9 def val";
- }
- leaf param10 {
- type int8;
- description "param10 desc";
- mandatory true;
- default "param10 def val";
- }
- leaf param11 {
- type inet:host;
- description "param11 desc";
- mandatory true;
- default "param11 def val";
- }
- leaf param12 {
- type uint32;
- description "param12 desc";
- mandatory true;
- default "param12 def val";
- }
- leaf param13 {
- type yang:timeticks;
- description "param13 desc";
- mandatory true;
- default "param13 def val";
- }
- leaf param15 {
- type yang:mac-address;
- description "param15 desc";
- mandatory true;
- default "param15 def val";
- }
- leaf param16 {
- type inet:as-number;
- description "param16 desc";
- mandatory true;
- default "param16 def val";
- }
- leaf param17 {
- type yang:counter64;
- description "param17 desc";
- mandatory true;
- default "param17 def val";
- }
- leaf param19 {
- type yang:xpath1.0;
- description "param19 desc";
- mandatory true;
- default "param19 def val";
- }
- leaf param20 {
- type inet:ip-version;
- description "param20 desc";
- mandatory true;
- default "param20 def val";
- }
- leaf param21 {
- type inet:port-number;
- description "param21 desc";
- mandatory true;
- default "param21 def val";
- }
- leaf param22 {
- type int16;
- description "param22 desc";
- mandatory true;
- default "param22 def val";
- }
- leaf param23 {
- type inet:ipv6-address-no-zone;
- description "param23 desc";
- mandatory true;
- default "param23 def val";
- }
- leaf param24 {
- type yang:hex-string;
- description "param24 desc";
- mandatory true;
- default "param24 def val";
- }
- leaf param26 {
- type uint64;
- description "param26 desc";
- mandatory true;
- default "param26 def val";
- }
- leaf param27 {
- type uint8;
- description "param27 desc";
- mandatory true;
- default "param27 def val";
- }
- leaf param28 {
- type inet:ipv4-prefix;
- description "param28 desc";
- mandatory true;
- default "param28 def val";
- }
- leaf param29 {
- type inet:ipv6-prefix;
- description "param29 desc";
- mandatory true;
- default "param29 def val";
- }
- leaf param30 {
- type yang:gauge64;
- description "param30 desc";
- mandatory true;
- default "param30 def val";
- }
- leaf param31 {
- type yang:counter32;
- description "param31 desc";
- mandatory true;
- default "param31 def val";
- }
- leaf param32 {
- type string;
- description "param32 desc";
- mandatory true;
- default "param32 def val";
- }
- leaf param33 {
- type yang:object-identifier;
- description "param33 desc";
- mandatory true;
- default "param33 def val";
- }
- leaf param34 {
- type inet:ip-address-no-zone;
- description "param34 desc";
- mandatory true;
- default "param34 def val";
- }
- leaf param36 {
- type yang:gauge32;
- description "param36 desc";
- mandatory true;
- default "param36 def val";
- }
- leaf param37 {
- type inet:ipv4-address;
- description "param37 desc";
- mandatory true;
- default "param37 def val";
- }
- leaf param38 {
- type inet:ip-prefix;
- description "param38 desc";
- mandatory true;
- default "param38 def val";
- }
- leaf param39 {
- type uint16;
- description "param39 desc";
- mandatory true;
- default "param39 def val";
- }
- leaf param40 {
- type yang:timestamp;
- description "param40 desc";
- mandatory true;
- default "param40 def val";
- }
- leaf param42 {
- type yang:dotted-quad;
- description "param42 desc";
- mandatory true;
- default "param42 def val";
- }
- leaf param43 {
- type inet:uri;
- description "param43 desc";
- mandatory true;
- default "param43 def val";
- }
- leaf param44 {
- type inet:ipv6-address;
- description "param44 desc";
- mandatory true;
- default "param44 def val";
- }
- leaf param45 {
- type inet:ipv6-flow-label;
- description "param45 desc";
- mandatory true;
- default "param45 def val";
- }
- leaf param46 {
- type yang:zero-based-counter32;
- description "param46 desc";
- mandatory true;
- default "param46 def val";
- }
- leaf param47 {
- type inet:ip-address;
- description "param47 desc";
- mandatory true;
- default "param47 def val";
- }
- leaf param48 {
- type boolean;
- description "param48 desc";
- mandatory true;
- default "param48 def val";
- }
- leaf param50 {
- type yang:yang-identifier;
- description "param50 desc";
- mandatory true;
- default "param50 def val";
- }
- leaf param51 {
- type int32;
- description "param51 desc";
- mandatory true;
- default "param51 def val";
- }
- leaf param52 {
- type yang:date-and-time;
- description "param52 desc";
- mandatory true;
- default "param52 def val";
- }
- leaf param53 {
- type yang:phys-address;
- description "param53 desc";
- mandatory true;
- default "param53 def val";
- }
- }
- }
-
- container vnf-config-repo {
- list vnf-config-list {
- key "vnf-identifier";
- leaf vnf-identifier {
- type string;
- }
- uses vnf-config-grp;
- }
-
- }
-
-}
diff --git a/appc-asdc-listener/pom.xml b/appc-asdc-listener/pom.xml
deleted file mode 100644
index 23b6e86f7..000000000
--- a/appc-asdc-listener/pom.xml
+++ /dev/null
@@ -1,106 +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.appc</groupId>
- <artifactId>appc</artifactId>
- <version>1.1.0-SNAPSHOT</version>
- </parent>
-
- <artifactId>appc-asdc-listener</artifactId>
- <name>ASDC Event Listener</name>
- <description>Listener to read and write events from DMaaP (Cambria) or DMaaP.</description>
- <packaging>pom</packaging>
-
- <reporting>
- <plugins>
- <plugin>
- <artifactId>maven-javadoc-plugin</artifactId>
- <configuration>
- <additionalDependencies>
- <additionalDependency>
- <groupId>org.slf4j</groupId>
- <artifactId>slf4j-api</artifactId>
- <version>${slf4j.version}</version>
- </additionalDependency>
- <additionalDependency>
- <groupId>org.antlr</groupId>
- <artifactId>antlr4</artifactId>
- <version>${antlr.version}</version>
- </additionalDependency>
- <additionalDependency>
- <groupId>org.antlr</groupId>
- <artifactId>antlr4-runtime</artifactId>
- <version>4.3</version>
- </additionalDependency>
- </additionalDependencies>
- </configuration>
- <reportSets>
- <reportSet>
- <reports>
- <report>javadoc-no-fork</report>
- <report>test-javadoc-no-fork</report>
- </reports>
- </reportSet>
- <reportSet>
- <id>aggregate</id>
- <reports>
- <report>aggregate</report>
- <report>test-aggregate</report>
- </reports>
- </reportSet>
- </reportSets>
- </plugin>
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-jxr-plugin</artifactId>
- <version>2.3</version>
- <reportSets>
- <reportSet>
- <id>aggregate</id>
- <reports>
- <report>aggregate</report>
- <report>test-aggregate</report>
- </reports>
- </reportSet>
- </reportSets>
- </plugin>
-
- <plugin>
- <artifactId>maven-surefire-plugin</artifactId>
- </plugin>
-
- <plugin>
- <groupId>org.apache.maven.plugins</groupId>
- <artifactId>maven-changelog-plugin</artifactId>
- <version>2.3</version>
- <reportSets>
- <reportSet>
- <id>dual-report</id>
- <configuration>
- <type>range</type>
- <range>30</range>
- </configuration>
- <reports>
- <report>changelog</report>
- <report>file-activity</report>
- </reports>
- </reportSet>
- </reportSets>
- </plugin>
-
- <plugin>
- <groupId>org.codehaus.mojo</groupId>
- <artifactId>taglist-maven-plugin</artifactId>
- <version>2.4</version>
- </plugin>
- </plugins>
- </reporting>
-
- <modules>
- <module>appc-yang-generator</module>
- <module>appc-asdc-listener-bundle</module>
- <module>appc-asdc-listener-features</module>
- <module>appc-asdc-listener-installer</module>
- </modules>
-</project> \ No newline at end of file