Initial commit for appc-config-audit bundle 75/7975/1
authorSkip Wonnell <kw5258@att.com>
Wed, 16 Aug 2017 00:57:50 +0000 (19:57 -0500)
committerPatrick Brady <pb071s@att.com>
Fri, 18 Aug 2017 05:39:26 +0000 (22:39 -0700)
This Bundle is used for Auditing against
a running configurition

Signed-off-by: Skip Wonnell <kw5258@att.com>
Issue-Id: APPC-22
Signed-off-by: Patrick Brady <pb071s@att.com>
Change-Id: Id19c65e351cc377d32d6533d3fa73415019652f0

33 files changed:
appc-config/appc-config-audit/.gitignore [new file with mode: 0644]
appc-config/appc-config-audit/features/.gitignore [new file with mode: 0644]
appc-config/appc-config-audit/features/pom.xml [new file with mode: 0644]
appc-config/appc-config-audit/features/src/main/resources/features.xml [new file with mode: 0644]
appc-config/appc-config-audit/installer/pom.xml [new file with mode: 0644]
appc-config/appc-config-audit/installer/src/assembly/assemble_installer_zip.xml [new file with mode: 0644]
appc-config/appc-config-audit/installer/src/assembly/assemble_mvnrepo_zip.xml [new file with mode: 0644]
appc-config/appc-config-audit/installer/src/main/resources/scripts/install-feature.sh [new file with mode: 0644]
appc-config/appc-config-audit/pom.xml [new file with mode: 0644]
appc-config/appc-config-audit/provider/.gitignore [new file with mode: 0644]
appc-config/appc-config-audit/provider/pom.xml [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/SliAuditActivator.java [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/SliAuditConstant.java [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareCliData.java [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareConstants.java [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareDataInterface.java [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareJsonData.java [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareNode.java [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareXmlData.java [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/Parameters.java [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/main/resources/adaptor.properties [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/test/java/org/openecomp/sdnc/config/audit/node/TestCompareNodeCli.java [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/test/java/org/openecomp/sdnc/config/audit/node/TestCompareNodeJson.java [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/test/java/org/openecomp/sdnc/config/audit/node/TestCompareNodeXml.java [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/test/resources/convert/escape/config_msc.txt [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/test/resources/convert/escape/config_ssc.txt [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/test/resources/convert/escape/config_vdbe.xml [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/test/resources/convert/payload_cli_config.json [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/test/resources/convert/payload_json_config.json [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/test/resources/convert/payload_parameters_config.json [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/test/resources/convert/payload_template_config.json [new file with mode: 0644]
appc-config/appc-config-audit/provider/src/test/resources/convert/payload_xml_config.json [new file with mode: 0644]
appc-config/pom.xml

diff --git a/appc-config/appc-config-audit/.gitignore b/appc-config/appc-config-audit/.gitignore
new file mode 100644 (file)
index 0000000..b83d222
--- /dev/null
@@ -0,0 +1 @@
+/target/
diff --git a/appc-config/appc-config-audit/features/.gitignore b/appc-config/appc-config-audit/features/.gitignore
new file mode 100644 (file)
index 0000000..b83d222
--- /dev/null
@@ -0,0 +1 @@
+/target/
diff --git a/appc-config/appc-config-audit/features/pom.xml b/appc-config/appc-config-audit/features/pom.xml
new file mode 100644 (file)
index 0000000..4197f94
--- /dev/null
@@ -0,0 +1,125 @@
+<?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>                
+               <groupId>org.openecomp.appc</groupId>
+               <artifactId>appc-config-audit</artifactId>
+               <version>1.1.0-SNAPSHOT</version>
+       </parent>
+       <artifactId>appc-config-audit-features</artifactId>
+       <name>Config Audit Plugin - Features</name>
+
+       <packaging>jar</packaging>
+
+       <dependencies>
+
+               <dependency>
+                       <groupId>org.openecomp.appc</groupId>
+                       <artifactId>appc-config-audit-provider</artifactId>
+                       <version>${project.version}</version>
+               </dependency>
+
+               <dependency>
+                       <groupId>commons-lang</groupId>
+                       <artifactId>commons-lang</artifactId>
+                       <version>2.6</version>
+                       <scope>compile</scope>
+               </dependency>
+
+               <dependency>
+                       <groupId>org.opendaylight.mdsal</groupId>
+                       <artifactId>features-mdsal</artifactId>
+                       <version>${odl.mdsal.version}</version>
+                       <classifier>features</classifier>
+                       <type>xml</type>
+
+                       <scope>runtime</scope>
+               </dependency>
+
+
+               <!-- dependency for opendaylight-karaf-empty for use by testing -->
+               <dependency>
+                       <groupId>org.opendaylight.controller</groupId>
+                       <artifactId>opendaylight-karaf-empty</artifactId>
+                       <version>${odl.karaf.empty.distro.version}</version>
+                       <type>zip</type>
+               </dependency>
+
+
+               <dependency>
+                       <!-- Required for launching the feature tests -->
+                       <groupId>org.opendaylight.odlparent</groupId>
+                       <artifactId>features-test</artifactId>
+                       <version>${odl.commons.opendaylight.version}</version>
+                       <scope>test</scope>
+               </dependency>
+
+       </dependencies>
+
+       <build>
+               <resources>
+                       <resource>
+                               <filtering>true</filtering>
+                               <directory>src/main/resources</directory>
+                       </resource>
+               </resources>
+               <plugins>
+                       <plugin>
+                               <groupId>org.apache.maven.plugins</groupId>
+                               <artifactId>maven-resources-plugin</artifactId>
+                               <executions>
+                                       <execution>
+                                               <id>filter</id>
+                                               <goals>
+                                                       <goal>resources</goal>
+                                               </goals>
+                                               <phase>generate-resources</phase>
+                                       </execution>
+                               </executions>
+                       </plugin>
+                                       <!-- launches the feature test, which validates that your karaf feature
+                                       can be installed inside of a karaf container. It doesn't validate that your
+                                       functionality works correctly, just that you have all of the dependent bundles
+                                       defined correctly.
+                       <plugin>
+
+                               <groupId>org.apache.maven.plugins</groupId>
+                               <artifactId>maven-surefire-plugin</artifactId>
+                               <version>2.16</version>
+                               <configuration>
+                                       <systemPropertyVariables>
+                                               <karaf.distro.groupId>org.opendaylight.controller</karaf.distro.groupId>
+                                               <karaf.distro.artifactId>opendaylight-karaf-empty</karaf.distro.artifactId>
+                                               <karaf.distro.version>${odl.karaf.empty.distro.version}</karaf.distro.version>
+                                       </systemPropertyVariables>
+                                       <dependenciesToScan>
+                                               <dependency>org.opendaylight.yangtools:features-test</dependency>
+                                       </dependenciesToScan>
+                               </configuration>
+                       </plugin>
+                       -->
+                       <plugin>
+                               <groupId>org.codehaus.mojo</groupId>
+                               <artifactId>build-helper-maven-plugin</artifactId>
+                               <executions>
+                                       <execution>
+                                               <id>attach-artifacts</id>
+                                               <goals>
+                                                       <goal>attach-artifact</goal>
+                                               </goals>
+                                               <phase>package</phase>
+                                               <configuration>
+                                                       <artifacts>
+                                                               <artifact>
+                                                                       <file>${project.build.directory}/classes/${features.file}</file>
+                                                                       <type>xml</type>
+                                                                       <classifier>features</classifier>
+                                                               </artifact>
+                                                       </artifacts>
+                                               </configuration>
+                                       </execution>
+                               </executions>
+                       </plugin>
+               </plugins>
+       </build>
+</project>
diff --git a/appc-config/appc-config-audit/features/src/main/resources/features.xml b/appc-config/appc-config-audit/features/src/main/resources/features.xml
new file mode 100644 (file)
index 0000000..5c07c6d
--- /dev/null
@@ -0,0 +1,45 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ============LICENSE_START=======================================================
+  ONAP : APP-C
+  ================================================================================
+  Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+  ================================================================================
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+  
+       http://www.apache.org/licenses/LICENSE-2.0
+  
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  ============LICENSE_END=========================================================
+  -->
+
+
+<features name="appc-config-audit-${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>
+
+       <feature name='appc-config-audit' description="Application Controller Config Audit"
+               version='${project.version}'>
+               <!-- Most applications will have a dependency on the ODL MD-SAL Broker -->
+               <feature version="${broker-mdsal.version}">odl-mdsal-broker</feature>
+               <feature version='${sdnc.sli.version}'>sdnc-sli</feature>
+               <bundle>mvn:commons-lang/commons-lang/2.6</bundle>
+               <bundle>wrap:mvn:com.fasterxml.jackson.core/jackson-databind/${jackson.version}</bundle>
+               <bundle>wrap:mvn:com.fasterxml.jackson.core/jackson-annotations/${jackson.version}</bundle>
+               <bundle>wrap:mvn:com.fasterxml.jackson.core/jackson-core/${jackson.version}</bundle>
+
+               <bundle>wrap:mvn:com.att.eelf/eelf-core/${eelf.version}</bundle>
+               <bundle>mvn:ch.qos.logback/logback-core/${logback.version}</bundle>
+               <bundle>mvn:ch.qos.logback/logback-classic/${logback.version}</bundle>
+               <bundle>wrap:mvn:xmlunit/xmlunit/${xmlunit.version}</bundle>
+               <bundle>mvn:org.openecomp.appc/config-audit-provider/${project.version}</bundle>
+       </feature>
+</features>
diff --git a/appc-config/appc-config-audit/installer/pom.xml b/appc-config/appc-config-audit/installer/pom.xml
new file mode 100644 (file)
index 0000000..c12576a
--- /dev/null
@@ -0,0 +1,148 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+  ============LICENSE_START=======================================================
+  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.
+  ============LICENSE_END=========================================================
+  ECOMP is a trademark and service mark of AT&T Intellectual Property.
+  -->
+<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>
+        <groupId>org.openecomp.appc</groupId>
+        <artifactId>appc-config-audit</artifactId>
+        <version>1.1.0-SNAPSHOT</version>
+    </parent>
+
+    <artifactId>appc-config-audit-installer</artifactId>
+    <name>Config Component Audit - Installer</name>
+    <packaging>pom</packaging>
+    <properties>
+        <application.name>appc-config-audit</application.name>
+        <features.boot>appc-config-audit</features.boot>
+        <features.repositories>mvn:org.openecomp.appc/appc-config-audit-features/${project.version}/xml/features</features.repositories>
+        <include.transitive.dependencies>false</include.transitive.dependencies>
+    </properties>
+    <dependencies>
+        <dependency>
+            <groupId>org.openecomp.appc</groupId>
+            <artifactId>appc-config-audit-features</artifactId>
+            <classifier>features</classifier>
+            <type>xml</type>
+            <exclusions>
+                <exclusion>
+                    <groupId>*</groupId>
+                    <artifactId>*</artifactId>
+                </exclusion>
+            </exclusions>
+        </dependency>
+        <dependency>
+            <groupId>org.openecomp.appc</groupId>
+            <artifactId>appc-config-audit-provider</artifactId>
+            <version>1.1.0-SNAPSHOT</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-config/appc-config-audit/installer/src/assembly/assemble_installer_zip.xml b/appc-config/appc-config-audit/installer/src/assembly/assemble_installer_zip.xml
new file mode 100644 (file)
index 0000000..f6495af
--- /dev/null
@@ -0,0 +1,59 @@
+<!--
+  ============LICENSE_START=======================================================
+  ONAP : APP-C
+  ================================================================================
+  Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+  ================================================================================
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+  
+       http://www.apache.org/licenses/LICENSE-2.0
+  
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  ============LICENSE_END=========================================================
+  ECOMP is a trademark and service mark of AT&T Intellectual Property.
+  -->
+
+<!-- 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>audit</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-config/appc-config-audit/installer/src/assembly/assemble_mvnrepo_zip.xml b/appc-config/appc-config-audit/installer/src/assembly/assemble_mvnrepo_zip.xml
new file mode 100644 (file)
index 0000000..9f24d65
--- /dev/null
@@ -0,0 +1,47 @@
+<!--
+  ============LICENSE_START=======================================================
+  ONAP : APP-C
+  ================================================================================
+  Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+  ================================================================================
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+  
+       http://www.apache.org/licenses/LICENSE-2.0
+  
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  ============LICENSE_END=========================================================
+  ECOMP is a trademark and service mark of AT&T Intellectual Property.
+  -->
+
+<!-- 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>audit</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-config/appc-config-audit/installer/src/main/resources/scripts/install-feature.sh b/appc-config/appc-config-audit/installer/src/main/resources/scripts/install-feature.sh
new file mode 100644 (file)
index 0000000..d3d2ea6
--- /dev/null
@@ -0,0 +1,40 @@
+###
+# ============LICENSE_START=======================================================
+# ONAP : APP-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# 
+#      http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+# ECOMP is a trademark and service mark of AT&T Intellectual Property.
+###
+
+#!/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
+
+${ODL_KARAF_CLIENT} ${ODL_KARAF_CLIENT_OPTS} feature:repo-add ${features.repositories}
+${ODL_KARAF_CLIENT} ${ODL_KARAF_CLIENT_OPTS} feature:install ${features.boot}
diff --git a/appc-config/appc-config-audit/pom.xml b/appc-config/appc-config-audit/pom.xml
new file mode 100644 (file)
index 0000000..a0e7b43
--- /dev/null
@@ -0,0 +1,62 @@
+<?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">
+       <parent>
+               <groupId>org.openecomp.appc</groupId>
+               <artifactId>appc-config</artifactId>
+               <version>1.1.0-SNAPSHOT</version>
+       </parent>
+       <modelVersion>4.0.0</modelVersion>
+       <packaging>pom</packaging>
+       <artifactId>appc-config-audit</artifactId>
+
+       <name>Config Audit Node</name>
+       <description>Common Utilities for DG</description>
+
+       <properties>
+               <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+               <xmlunit.version>1.6</xmlunit.version>
+       </properties>
+
+       <dependencyManagement>
+
+               <dependencies>
+                       <dependency>
+                               <groupId>org.openecomp.appc</groupId>
+                               <artifactId>appc-config-audit-features</artifactId>
+                               <classifier>features</classifier>
+                               <type>xml</type>
+                               <version>${project.version}</version>
+                       </dependency>
+
+                       <dependency>
+                               <groupId>org.openecomp.appc</groupId>
+                               <artifactId>appc-config-audit-provider</artifactId>
+                               <version>${project.version}</version>
+                       </dependency>
+               </dependencies>
+
+       </dependencyManagement>
+
+       <profiles>
+               <profile>
+                       <id>default</id>
+                       <activation>
+                               <activeByDefault>true</activeByDefault>
+                       </activation>
+                       <modules>
+                               <module>features</module>
+                               <module>provider</module>
+                               <module>installer</module>
+                       </modules>
+               </profile>
+               <profile>
+                       <id>all</id>
+                       <modules>
+                               <module>features</module>
+                               <module>provider</module>
+                               <module>installer</module>
+                       </modules>
+               </profile>
+       </profiles>
+</project>
diff --git a/appc-config/appc-config-audit/provider/.gitignore b/appc-config/appc-config-audit/provider/.gitignore
new file mode 100644 (file)
index 0000000..b83d222
--- /dev/null
@@ -0,0 +1 @@
+/target/
diff --git a/appc-config/appc-config-audit/provider/pom.xml b/appc-config/appc-config-audit/provider/pom.xml
new file mode 100644 (file)
index 0000000..8ea4e11
--- /dev/null
@@ -0,0 +1,118 @@
+<?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>
+        <groupId>org.openecomp.appc</groupId>
+        <artifactId>appc-config-audit</artifactId>
+        <version>1.1.0-SNAPSHOT</version>
+    </parent>
+    <artifactId>appc-config-audit-provider</artifactId>
+    <packaging>bundle</packaging>
+    <name>Config Audit - Provider</name>
+    <url>http://maven.apache.org</url>
+
+    <dependencies>
+        <dependency>
+            <groupId>equinoxSDK381</groupId>
+            <artifactId>org.eclipse.osgi</artifactId>
+            <version>${equinox.osgi.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.openecomp.sdnc.core</groupId>
+            <artifactId>sli-provider</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>xmlunit</groupId>
+            <artifactId>xmlunit</artifactId>
+            <version>${xmlunit.version}</version>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-databind</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-annotations</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.fasterxml.jackson.core</groupId>
+            <artifactId>jackson-core</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>commons-io</groupId>
+            <artifactId>commons-io</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>com.att.eelf</groupId>
+            <artifactId>eelf-core</artifactId>
+        </dependency>
+
+        <dependency>
+            <groupId>junit</groupId>
+            <artifactId>junit</artifactId>
+            <scope>test</scope>
+        </dependency>
+
+    </dependencies>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-bundle-plugin</artifactId>
+                <version>${bundle.plugin.version}</version>
+                <extensions>true</extensions>
+                <configuration>
+                    <instructions>
+                        <Bundle-SymbolicName>org.openecomp.sdnc.config.audit</Bundle-SymbolicName>
+                        <Bundle-Activator>org.openecomp.sdnc.config.audit.SliAuditActivator</Bundle-Activator>
+                        <Export-Package>org.openecomp.sdnc.config.audit,org.openecomp.sdnc.config.audit.node</Export-Package>
+                        <Import-Package>*</Import-Package>
+                        <DynamicImport-Package>*</DynamicImport-Package>
+                    </instructions>
+                    <manifestLocation>${project.basedir}/src/main/resources/META-INF</manifestLocation>
+                </configuration>
+            </plugin>
+
+        </plugins>
+        <pluginManagement>
+            <plugins>
+                <!--This plugin's configuration is used to store Eclipse m2e settings
+                    only. It has no influence on the Maven build itself. -->
+                <plugin>
+                    <groupId>org.eclipse.m2e</groupId>
+                    <artifactId>lifecycle-mapping</artifactId>
+                    <version>1.0.0</version>
+                    <configuration>
+                        <lifecycleMappingMetadata>
+                            <pluginExecutions>
+                                <pluginExecution>
+                                    <pluginExecutionFilter>
+                                        <groupId>
+                                            com.brocade.developer
+                                        </groupId>
+                                        <artifactId>
+                                            providermodule-plugin
+                                        </artifactId>
+                                        <versionRange>
+                                            [1.2.0.100-SNAPSHOT,)
+                                        </versionRange>
+                                        <goals>
+                                            <goal>process</goal>
+                                        </goals>
+                                    </pluginExecutionFilter>
+                                    <action>
+                                        <ignore />
+                                    </action>
+                                </pluginExecution>
+                            </pluginExecutions>
+                        </lifecycleMappingMetadata>
+                    </configuration>
+                </plugin>
+            </plugins>
+        </pluginManagement>
+    </build>
+</project>
diff --git a/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/SliAuditActivator.java b/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/SliAuditActivator.java
new file mode 100644 (file)
index 0000000..f4cfe1b
--- /dev/null
@@ -0,0 +1,62 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdnc.config.audit;
+
+import java.util.LinkedList;
+import java.util.List;
+
+import org.openecomp.sdnc.config.audit.node.CompareNode;
+import org.osgi.framework.BundleActivator;
+import org.osgi.framework.BundleContext;
+import org.osgi.framework.ServiceRegistration;
+
+import com.att.eelf.configuration.EELFLogger;
+import com.att.eelf.configuration.EELFManager;
+import org.openecomp.sdnc.sli.ConfigurationException;
+
+public class SliAuditActivator implements BundleActivator{
+
+    private List<ServiceRegistration> registrations = new LinkedList<ServiceRegistration>();
+
+
+    private static final EELFLogger log = EELFManager.getInstance().getLogger(SliAuditActivator.class);
+
+    @Override
+    public void start(BundleContext ctx) throws Exception
+    {
+
+        CompareNode compareNodePlugin = new CompareNode();
+        log.info("Registering service "+ compareNodePlugin.getClass().getName());
+        registrations.add(ctx.registerService(compareNodePlugin.getClass().getName(), compareNodePlugin, null));
+
+    }
+    @Override
+    public void stop(BundleContext arg0) throws Exception
+    {
+        for (ServiceRegistration registration: registrations)
+        {
+            registration.unregister();
+            registration = null;
+        }
+
+    }
+
+}
diff --git a/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/SliAuditConstant.java b/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/SliAuditConstant.java
new file mode 100644 (file)
index 0000000..0bfaa1e
--- /dev/null
@@ -0,0 +1,64 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdnc.config.audit;
+
+public class SliAuditConstant {
+
+    public static String STRING_ENCODING = "utf-8";
+    public static String Y = "Y";
+    public static String N = "N";
+    public static String DATA_TYPE_TEXT = "TEXT";
+    public static String DATA_TYPE_JSON = "JSON";
+    public static String DATA_TYPE_XML = "XML";
+    public static String DATA_TYPE_SQL = "SQL";
+
+    public static String INPUT_PARAM_JSON_DATA = "jsonData";
+    public static String INPUT_PARAM_IS_ESCAPED = "isEscaped";
+    public static String INPUT_PARAM_BLOCK_KEYS = "blockKeys";
+    public static String INPUT_PARAM_LOG_DATA = "logData";
+    public static String INPUT_PARAM_CHECK_DATA = "checkData";
+    public static String INPUT_PARAM_ESCAPE_DATA = "escapeData";
+    public static String INPUT_PARAM_UNESCAPE_DATA = "unEscapeData";
+    public static String INPUT_PARAM_DATA_TYPE = "dataType";
+    public static String INPUT_PARAM_FILE_NAME = "fileName";
+
+    public static String INPUT_PARAM_TEMPLATE_DATA = "templateData";
+    public static String INPUT_PARAM_TEMPLATE_FILE = "templateFile";
+    public static String INPUT_PARAM_TEMPLATE_TYPE = "templateType";
+    public static String INPUT_PARAM_DO_PRETTY_OUTPUT = "doPrettyOutput";
+    public static String INPUT_PARAM_REQUEST_DATA = "requestData";
+    public static String INPUT_PARAM_RESPONSE_PRIFIX = "responsePrefix";
+
+
+    public static String OUTPUT_PARAM_MERGED_DATA = "mergedData";
+    public static String OUTPUT_PARAM_TRANSFORMED_DATA = "transformedData";
+    public static String OUTPUT_PARAM_FILE_DATA = "fileData";
+    public static String OUTPUT_PARAM_PARSED_ERROR = "parsedError";
+    public static String OUTPUT_PARAM_DATA_TYPE = "dataType";
+    public static String OUTPUT_PARAM_STATUS = "status";
+    public static String OUTPUT_PARAM_ERROR_MESSAGE = "error-message";
+    public static String OUTPUT_PARAM_ESCAPE_DATA = "escapeData";
+    public static String OUTPUT_PARAM_UNESCAPE_DATA = "unEscapeData";
+
+    public static String OUTPUT_STATUS_SUCCESS = "success";
+    public static String OUTPUT_STATUS_FAILURE = "failure";
+
+}
diff --git a/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareCliData.java b/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareCliData.java
new file mode 100644 (file)
index 0000000..969d126
--- /dev/null
@@ -0,0 +1,43 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdnc.config.audit.node;
+
+public class CompareCliData implements CompareDataInterface{
+
+    String payloadX;
+    String payloadY;    
+
+    public CompareCliData(String payloadX, String payloadY)
+    {
+        super();
+        this.payloadX = payloadX;
+        this.payloadY = payloadY;
+    }
+
+    @Override
+    public boolean compare() throws Exception
+    {
+            if(payloadX != null && payloadX.equals(payloadY))
+                return true;
+            else
+                return false;
+    }
+}
diff --git a/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareConstants.java b/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareConstants.java
new file mode 100644 (file)
index 0000000..42b18d5
--- /dev/null
@@ -0,0 +1,43 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdnc.config.audit.node;
+
+public class CompareConstants {
+
+
+    public static final String FORMAT_JSON = "RESTCONF";
+    public static final String FORMAT_XML = "XML";
+    public static final String FORMAT_CLI = "CLI";
+    public static final String NETCONF_XML = "NETCONF-XML";
+    public static final String RESTCONF_XML = "RESTCONF-XML";
+    
+
+    public static final String STATUS_FAILURE = "FAILURE";
+    public static final String RESPONSE_STATUS = "STATUS";
+    public static final String STATUS_SUCCESS = "SUCCESS";
+    
+    public static final String ERROR_CODE = "Error-code";
+    
+    public static final String ERROR_MESSAGE = "Error-Message";
+    public static final String ERROR_MESSAGE_DEATIL = "Compare Node Failed-Internal Error.See karaf log file";
+    
+    public static final String NO_MATCH_MESSAGE = "The configurations do not match";
+}
diff --git a/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareDataInterface.java b/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareDataInterface.java
new file mode 100644 (file)
index 0000000..95f154e
--- /dev/null
@@ -0,0 +1,27 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdnc.config.audit.node;
+
+
+public interface CompareDataInterface
+{
+    boolean compare() throws Exception;
+}
diff --git a/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareJsonData.java b/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareJsonData.java
new file mode 100644 (file)
index 0000000..422ac30
--- /dev/null
@@ -0,0 +1,82 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdnc.config.audit.node;
+
+import java.io.IOException;
+import java.util.Map;
+
+
+import com.att.eelf.configuration.EELFLogger;
+import com.att.eelf.configuration.EELFManager;
+import com.fasterxml.jackson.core.JsonParseException;
+import com.fasterxml.jackson.databind.JsonMappingException;
+import com.fasterxml.jackson.databind.ObjectMapper;
+
+
+public class CompareJsonData implements CompareDataInterface {
+
+    private static final EELFLogger log = EELFManager.getInstance().getLogger(CompareJsonData.class);
+
+    String payloadX;
+    String payloadY;
+
+    public CompareJsonData(String payloadX, String payloadY)
+    {
+        this.payloadX = payloadX;
+        this.payloadY = payloadY;
+    }
+
+    @Override
+    public boolean compare() throws Exception
+    {
+
+        ObjectMapper dataMapper = new ObjectMapper();
+        boolean match = false;
+        try
+        {
+            Map<String, Object> controlData = (Map<String, Object>)(dataMapper.readValue(payloadX, Map.class));
+            Map<String, Object>  testData = (Map<String, Object>)(dataMapper.readValue(payloadY, Map.class));
+
+            log.debug("Control Data :" + controlData);
+            log.debug("testData Data :" + testData);
+
+           if(controlData.equals(testData))
+               match=true;
+        }
+        catch(JsonParseException e)
+        {
+            throw new Exception(e.getMessage());
+        }
+        catch(JsonMappingException e)
+        {
+            throw new Exception(e.getMessage());
+        }
+        catch(IOException ioe)
+        {
+            throw new Exception(ioe.getMessage());
+        }
+
+        return match;
+    }
+
+
+
+}
diff --git a/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareNode.java b/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareNode.java
new file mode 100644 (file)
index 0000000..4ef5e26
--- /dev/null
@@ -0,0 +1,138 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdnc.config.audit.node;
+
+
+import java.util.HashMap;
+import java.util.Map;
+
+
+import com.att.eelf.configuration.EELFLogger;
+import com.att.eelf.configuration.EELFManager;
+import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.openecomp.sdnc.sli.SvcLogicException;
+import org.openecomp.sdnc.sli.SvcLogicJavaPlugin;
+
+public class CompareNode implements SvcLogicJavaPlugin
+{
+
+    private static final EELFLogger log = EELFManager.getInstance().getLogger(CompareNode.class);
+
+    public void compare( Map<String, String> inParams, SvcLogicContext ctx) throws SvcLogicException
+    {
+        log.debug("Starting Compare Node Analysis");
+
+        HashMap<String, String> status = new HashMap<String, String>();
+        Parameters params = new Parameters(inParams);
+        try
+        {
+            if(params.getCompareDataType() != null)
+            {
+                if(params.getPayloadX() !=null && params.getPayloadY() !=null)
+                {
+                    status = getCompareResults(params);
+                    log.debug("Compare Result : " + status);
+                }
+                else
+                {
+                    status.put(CompareConstants.RESPONSE_STATUS, CompareConstants.STATUS_FAILURE);
+                    status.put(CompareConstants.ERROR_CODE, "200");
+                    status.put(CompareConstants.ERROR_MESSAGE, "One of the Data Received by CompareNode is Empty");
+                }
+            }
+            else
+            {
+                status.put(CompareConstants.RESPONSE_STATUS, CompareConstants.STATUS_FAILURE);
+                status.put(CompareConstants.ERROR_CODE, "200");
+                status.put(CompareConstants.ERROR_MESSAGE, "Missing compareDataType value in input request: Expecting at least one of  CLI/RESTCONF/XML");
+            }
+
+        }
+        catch(Exception e)
+        {
+            status.put(CompareConstants.RESPONSE_STATUS, CompareConstants.STATUS_FAILURE);
+            status.put(CompareConstants.ERROR_CODE, "200");
+            status.put(CompareConstants.ERROR_MESSAGE, CompareConstants.ERROR_MESSAGE_DEATIL);
+            log.debug("Error in Comapre Node Execution " + e.getMessage());
+
+        }
+
+        createContextReposne(status, ctx, params.getRequestIdentifier());
+    }
+
+    private HashMap<String, String> getCompareResults(Parameters params) throws Exception
+    {
+        HashMap<String, String> resultMap = new HashMap<String, String>();
+        boolean cmpResult = false;
+        CompareDataInterface handler;
+
+
+
+        if(params.getCompareDataType().equalsIgnoreCase(CompareConstants.FORMAT_JSON))
+            handler =  new CompareJsonData(params.getPayloadX(), params.getPayloadY());
+        else if((params.getCompareDataType().equalsIgnoreCase(CompareConstants.FORMAT_XML))
+                || (params.getCompareDataType().equalsIgnoreCase(CompareConstants.NETCONF_XML))
+                        || (params.getCompareDataType().equalsIgnoreCase(CompareConstants.RESTCONF_XML)))
+            handler =  new CompareXmlData(params.getPayloadX(), params.getPayloadY());
+        else if (params.getCompareDataType().equalsIgnoreCase(CompareConstants.FORMAT_CLI))
+            handler =  new CompareCliData(params.getPayloadX(), params.getPayloadY());
+        else
+        {
+            throw new Exception("Format " + params.getCompareDataType() + " not supported");
+        }
+        try
+        {
+            log.debug("Received Format to compare : " + params.getCompareDataType());
+
+            cmpResult = handler.compare();
+            if(cmpResult)
+            {
+                resultMap.put(CompareConstants.RESPONSE_STATUS, CompareConstants.STATUS_SUCCESS);
+
+            }
+            else
+            {
+                resultMap.put(CompareConstants.RESPONSE_STATUS, CompareConstants.STATUS_FAILURE);
+                resultMap.put(CompareConstants.ERROR_CODE, "500");
+                resultMap.put(CompareConstants.ERROR_MESSAGE, CompareConstants.NO_MATCH_MESSAGE);
+            }
+        }
+        catch (Exception e)
+        {
+            throw e;
+        }
+
+    return resultMap;
+    }
+
+    private void createContextReposne(HashMap status, SvcLogicContext ctx, String requestIdentifier )
+    {
+        if(requestIdentifier == null)
+            requestIdentifier = "";
+        else
+            requestIdentifier = requestIdentifier + ".";
+
+        ctx.setAttribute(requestIdentifier.concat( CompareConstants.RESPONSE_STATUS), (String) status.get(CompareConstants.RESPONSE_STATUS));
+        ctx.setAttribute(requestIdentifier.concat(CompareConstants.ERROR_CODE), (String) status.get(CompareConstants.ERROR_CODE));
+        ctx.setAttribute(requestIdentifier.concat(CompareConstants.ERROR_MESSAGE), (String) status.get(CompareConstants.ERROR_MESSAGE));
+    }
+
+}
diff --git a/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareXmlData.java b/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/CompareXmlData.java
new file mode 100644 (file)
index 0000000..0083709
--- /dev/null
@@ -0,0 +1,105 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdnc.config.audit.node;
+
+
+import java.io.IOException;
+import java.io.StringReader;
+
+import javax.xml.parsers.DocumentBuilder;
+import javax.xml.parsers.DocumentBuilderFactory;
+import javax.xml.parsers.ParserConfigurationException;
+
+import org.custommonkey.xmlunit.Diff;
+import org.custommonkey.xmlunit.XMLUnit;
+import org.w3c.dom.Document;
+import org.xml.sax.InputSource;
+import org.xml.sax.SAXException;
+
+import com.att.eelf.configuration.EELFLogger;
+import com.att.eelf.configuration.EELFManager;
+
+
+public class CompareXmlData implements CompareDataInterface
+{
+    private static final EELFLogger log = EELFManager.getInstance().getLogger(CompareXmlData.class);
+
+
+    String controlXml;
+    String testXml;
+
+    Document doc;
+
+    public CompareXmlData(String controlXml, String testXml) {
+        super();
+        this.controlXml = controlXml;
+        this.testXml = testXml;
+    }
+
+    @Override
+    public boolean compare() throws Exception
+    {
+
+        log.debug("controlXml : " + controlXml);
+        log.debug("testXml : " + testXml);
+
+        doSetup();
+
+        try
+        {
+            Diff diff = new Diff(getCompareDoc(controlXml), getCompareDoc(testXml));
+            if(diff.similar())
+                return true;
+            else
+                return false;
+        }
+        catch(SAXException se)
+        {
+            se.printStackTrace();
+            throw new Exception(se.getMessage());
+        }
+        catch(Exception e)
+        {
+            e.printStackTrace();
+            throw new Exception(e.getMessage());
+        }
+    }
+
+    private void doSetup() throws ParserConfigurationException, SAXException, IOException
+    {
+
+        XMLUnit.setIgnoreAttributeOrder(true);
+        XMLUnit.setIgnoreComments(true);
+        XMLUnit.setIgnoreWhitespace(true);
+    }
+
+    public Document getCompareDoc(String inXml) throws ParserConfigurationException, SAXException, IOException
+    {
+        DocumentBuilderFactory dbFactory = DocumentBuilderFactory.newInstance();
+        DocumentBuilder dBuilder = dbFactory.newDocumentBuilder();
+        StringReader reader = new StringReader(inXml);
+        InputSource inputSource = new InputSource(reader);
+        Document doc = dBuilder.parse(inputSource);
+        doc.getDocumentElement().normalize();
+
+        return doc;
+    }
+}
diff --git a/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/Parameters.java b/appc-config/appc-config-audit/provider/src/main/java/org/openecomp/sdnc/config/audit/node/Parameters.java
new file mode 100644 (file)
index 0000000..e3358df
--- /dev/null
@@ -0,0 +1,102 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdnc.config.audit.node;
+
+
+import java.util.Map;
+
+public class Parameters
+{
+
+    String payloadX ;
+
+    public String getPayloadX() {
+        return payloadX;
+    }
+    public void setPayloadX(String payloadX) {
+        this.payloadX = payloadX;
+    }
+
+    String payloadXtype;
+
+    public String getPayloadXtype() {
+        return payloadXtype;
+    }
+    public void setPayloadXtype(String payloadXtype) {
+        this.payloadXtype = payloadXtype;
+    }
+
+    String payloadY ;
+
+    public String getPayloadY() {
+        return payloadY;
+    }
+    public void setPayloadY(String payloadY) {
+        this.payloadY = payloadY;
+    }
+
+    String payloadYtype;
+
+    public String getPayloadYtype() {
+        return payloadYtype;
+    }
+    public void setPayloadYtype(String payloadYtype) {
+        this.payloadYtype = payloadYtype;
+    }
+
+    String compareDataType;
+
+    public String getCompareDataType() {
+        return compareDataType;
+    }
+    public void setCompareDataType(String compareDataType) {
+        this.compareDataType = compareDataType;
+    }
+
+    String compareType;
+
+    public String getCompareType() {
+        return compareType;
+    }
+    public void setCompareType(String compareType) {
+        this.compareType = compareType;
+    }
+
+    String requestIdentifier;
+
+    public String getRequestIdentifier() {
+        return requestIdentifier;
+    }
+    public void setRequestIdentifier(String requestIdentifier) {
+        this.requestIdentifier = requestIdentifier;
+    }
+    public Parameters(Map<String, String> inParams)
+    {
+        this.compareType = inParams.get("compareType");
+        this.compareDataType = inParams.get("compareDataType");
+        this.payloadX= inParams.get("sourceData");
+        this.payloadY= inParams.get("targetData");
+        this.payloadXtype = inParams.get("sourceDataType");
+        this.payloadYtype = inParams.get("targetDataType");
+        this.requestIdentifier = inParams.get("requestIdentifier");
+
+    }
+}
diff --git a/appc-config/appc-config-audit/provider/src/main/resources/adaptor.properties b/appc-config/appc-config-audit/provider/src/main/resources/adaptor.properties
new file mode 100644 (file)
index 0000000..b6261a3
--- /dev/null
@@ -0,0 +1,25 @@
+###
+# ============LICENSE_START=======================================================
+# ONAP : APP-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# 
+#      http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+adaptorName=
+vSphere.url=
+vSphere.user=
+vSphere.passwd=
+org.xml.sax.driver=
diff --git a/appc-config/appc-config-audit/provider/src/test/java/org/openecomp/sdnc/config/audit/node/TestCompareNodeCli.java b/appc-config/appc-config-audit/provider/src/test/java/org/openecomp/sdnc/config/audit/node/TestCompareNodeCli.java
new file mode 100644 (file)
index 0000000..ad1112f
--- /dev/null
@@ -0,0 +1,100 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdnc.config.audit.node;
+
+import java.util.HashMap;
+
+import org.junit.Test;
+import org.openecomp.sdnc.config.audit.node.CompareNode;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.openecomp.sdnc.sli.SvcLogicException;
+
+public class TestCompareNodeCli
+{
+private static final Logger log = LoggerFactory.getLogger(TestCompareNodeCli.class);
+    
+
+//@Test
+    public void TestCompareCliForSamePayload()
+    {
+        SvcLogicContext ctx  = new SvcLogicContext();
+        HashMap<String, String> testMap = new HashMap<String, String>();        
+        CompareNode cmp  = new CompareNode();
+        try
+        {
+            testMap.put("compareDataType", "Cli");
+            testMap.put("sourceData", "This is a Text Configuration of Device");
+            testMap.put("targetData", "This is a Text Configuration of Device");            
+            cmp.compare(testMap, ctx);            
+            assert(ctx.getAttribute("STATUS").equals("SUCCESS"));            
+        }
+        catch (SvcLogicException e)
+        {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+        }        
+    }
+
+    //@Test
+    public void TestCompareCliFordifferentPayload()
+    {
+        SvcLogicContext ctx  = new SvcLogicContext();
+        HashMap<String, String> testMap = new HashMap<String, String>();        
+        CompareNode cmp  = new CompareNode();
+        try
+        {
+            testMap.put("compareDataType", "Cli");
+            testMap.put("sourceData", "This is a Text Negative test Configuration of Device");
+            testMap.put("targetData", "This is a Text Configuration of Device");            
+            cmp.compare(testMap, ctx);            
+            assert(ctx.getAttribute("STATUS").equals("FAILURE"));            
+        }
+        catch (SvcLogicException e)
+        {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+        }        
+    }
+    
+    //@Test
+    public void TestCompareForMissingInput()
+    {
+        SvcLogicContext ctx  = new SvcLogicContext();
+        HashMap<String, String> testMap = new HashMap<String, String>();        
+        CompareNode cmp  = new CompareNode();
+        try
+        {
+        //    testMap.put("compareDataType", "Cli"); Missing compareDataType from the input            
+            testMap.put("sourceData", "This is a Text Negative test Configuration of Device");
+            testMap.put("targetData.configuration-data", "This is a Text Configuration of Device");    
+            cmp.compare(testMap, ctx);            
+            assert(ctx.getAttribute("STATUS").equals("FAILURE"));            
+        }
+        catch (SvcLogicException e)
+        {
+            assert(ctx.getAttribute("STATUS").equals("FAILURE"));
+        }        
+    }
+    
+}
diff --git a/appc-config/appc-config-audit/provider/src/test/java/org/openecomp/sdnc/config/audit/node/TestCompareNodeJson.java b/appc-config/appc-config-audit/provider/src/test/java/org/openecomp/sdnc/config/audit/node/TestCompareNodeJson.java
new file mode 100644 (file)
index 0000000..cb1fd37
--- /dev/null
@@ -0,0 +1,80 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdnc.config.audit.node;
+
+import java.util.HashMap;
+
+import org.junit.Test;
+import org.openecomp.sdnc.config.audit.node.CompareNode;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.openecomp.sdnc.sli.SvcLogicException;
+
+public class TestCompareNodeJson
+{
+private static final Logger log = LoggerFactory.getLogger(TestCompareNodeJson.class);
+
+    //@Test
+    public void TestCompareJsonForSamePayload()
+    {
+        SvcLogicContext ctx  = new SvcLogicContext();
+        HashMap<String, String> testMap = new HashMap<String, String>();
+        CompareNode cmp  = new CompareNode();
+        try
+        {
+            String controlJson = "{\n\"input\": {\n   \"appc-request-header\": {\n       \"svc-request-id\": \"000000000\", \n \"svc-action\": \"prepare\"   \n }, \n\"request-information\": {\n \"request-id\": \"000000000\", \n\"request-action\": \"VsbgServiceActivateRequest\", \n\"request-sub-action\": \"PREPARE\",  \n \"source\": \"Version2\" \n} \n} \n}";
+            String testJson = "{\n\"input\": {\n  \"appc-request-header\": {\n \"svc-request-id\": \"000000000\", \n \"svc-action\": \"prepare\"   \n }, \n\"request-information\": {\n \"request-id\": \"000000000\", \n\"request-action\": \"VsbgServiceActivateRequest\", \n\"request-sub-action\": \"PREPARE\",  \n \"source\": \"Version2\" \n} \n} \n}";
+            testMap.put("compareDataType", "RestConf");
+            testMap.put("sourceData", controlJson);
+            testMap.put("targetData", testJson);
+            cmp.compare(testMap, ctx);
+            assert(ctx.getAttribute("STATUS").equals("SUCCESS"));
+        }
+        catch (SvcLogicException e)
+        {
+            e.printStackTrace();
+        }
+    }
+
+    //@Test
+    public void TestCompareJsonFordifferentPayload()
+    {
+        SvcLogicContext ctx  = new SvcLogicContext();
+        HashMap<String, String> testMap = new HashMap<String, String>();
+        CompareNode cmp  = new CompareNode();
+        try
+        {
+            String controlJson = "{\n\"input\": {\n   \"appc-request-header\": {\n       \"svc-request-id\": \"000000000\", \n \"svc-action\": \"prepare\"   \n }, \n\"request-information\": {\n \"request-id\": \"000000000\", \n\"request-action\": \"VsbgServiceActivateRequest\", \n\"request-sub-action\": \"PREPARE\",  \n \"source\": \"Version2\" \n} \n} \n}";
+            String testJson = "{\n\"input\": {\n  \"appc-request-header\": { \n \"svc-action\": \"prepare\"   \n }, \n\"request-information\": {\n \"request-id\": \"0000000000\", \n\"request-action\": \"VsbgServiceActivateRequest\", \n\"request-sub-action\": \"PREPARE\",  \n \"source\": \"Version2\" \n} \n} \n}";
+            testMap.put("compareDataType", "RestConf");
+            testMap.put("sourceData", controlJson);
+            testMap.put("targetData", testJson);
+            cmp.compare(testMap, ctx);
+            assert(ctx.getAttribute("STATUS").equals("FAILURE"));
+        }
+        catch (SvcLogicException e)
+        {
+            e.printStackTrace();
+        }
+    }
+}
diff --git a/appc-config/appc-config-audit/provider/src/test/java/org/openecomp/sdnc/config/audit/node/TestCompareNodeXml.java b/appc-config/appc-config-audit/provider/src/test/java/org/openecomp/sdnc/config/audit/node/TestCompareNodeXml.java
new file mode 100644 (file)
index 0000000..efd2343
--- /dev/null
@@ -0,0 +1,127 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
+
+package org.openecomp.sdnc.config.audit.node;
+
+import java.io.IOException;
+import java.util.HashMap;
+import java.util.Properties;
+
+import org.junit.Test;
+import org.openecomp.sdnc.config.audit.node.CompareNode;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.openecomp.sdnc.sli.SvcLogicException;
+
+
+public class TestCompareNodeXml
+{
+    private static final Logger log = LoggerFactory.getLogger(TestCompareNodeXml.class);
+
+    //@Test
+    public void TestCompareExtactXML()
+    {
+        log.debug("TestCompareNode.TestCompareExtactXML()");
+        SvcLogicContext ctx  = new SvcLogicContext();
+        HashMap<String, String> testMap = new HashMap<String, String>();
+        CompareNode cmp  = new CompareNode();
+        try
+        {
+            String s="<configuration  xmlns="
+                    + "\"http://xml.juniper.net/xnm/1.1/xnm\""
+                    + " junos:commit-seconds="
+                    +"\"1473957536\" "
+                    +"junos:commit-localtime="
+                    +"\"2016-09-15 16:38:56 UTC\" "
+                    + "junos:commit-user="
+                    +"\"root\""
+                    +"><name>Test</name></configuration>";
+
+            String t ="<configuration  xmlns="
+                    + "\"http://xml.juniper.net/xnm/1.1/xnm\""
+                    + " junos:commit-seconds="
+                    +"\"1473957536\" "
+                    +"junos:commit-localtime="
+                    +"\"2016-09-15 16:38:56 UTC\" "
+                    + "junos:commit-user="
+                    +"\"root\""
+                    +"><name>Test</name></configuration>";
+
+            System.out.println("s=" + s);
+
+            testMap.put("compareDataType", "RESTCONF-XML");
+            testMap.put("requestIdentifier", "123");
+            testMap.put("sourceData", s);
+            testMap.put("targetData", t);
+            cmp.compare(testMap, ctx);
+            assert(ctx.getAttribute("123." + "STATUS").equals("SUCCESS"));
+        }
+        catch (SvcLogicException e)
+        {
+            // TODO Auto-generated catch block
+            e.printStackTrace();
+        }
+    }
+    //@Test
+    public void TestCompareforAttributeOrder() throws IOException
+    {
+        log.debug("TestCompareNode.TestCompareforAttributeOrder()");
+        SvcLogicContext ctx  = new SvcLogicContext();
+        HashMap<String, String> testMap = new HashMap<String, String>();
+        CompareNode cmp  = new CompareNode();
+        testMap.put("compareDataType", "XML");
+        testMap.put("sourceData", "<SipIfTermination><id>2</id><udpPortInUse>true</udpPortInUse><udpPort>5060</udpPort><tcpPortInUse>true</tcpPortInUse><tcpPort>5060</tcpPort></SipIfTermination>");
+        testMap.put("targetData", "<SipIfTermination><udpPortInUse>true</udpPortInUse><udpPort>5060</udpPort><tcpPortInUse>true</tcpPortInUse><tcpPort>5060</tcpPort><id>2</id></SipIfTermination>");
+        try
+        {
+            cmp.compare(testMap, ctx);
+        }
+        catch (SvcLogicException e)
+        {
+            e.printStackTrace();
+        }
+        assert(ctx.getAttribute("STATUS").equals("SUCCESS"));
+    }
+
+    //@Test
+    public void TestCompareForComments()
+    {
+        log.debug("TestCompareNode.TestCompareForComments()");
+        SvcLogicContext ctx  = new SvcLogicContext();
+        HashMap<String, String> testMap = new HashMap<String, String>();
+        CompareNode cmp  = new CompareNode();
+
+        try
+        {
+            testMap.put("compareDataType", "XML");
+            testMap.put("sourceData", "<SipIfTermination><id>2</id><!--this is a commnect --></SipIfTermination>");
+            testMap.put("targetData", "<SipIfTermination><id>2</id></SipIfTermination>");
+            cmp.compare(testMap, ctx);
+            assert(ctx.getAttribute("STATUS").equals("SUCCESS"));
+        }
+        catch (SvcLogicException e)
+        {
+            e.printStackTrace();
+        }
+    }
+
+}
diff --git a/appc-config/appc-config-audit/provider/src/test/resources/convert/escape/config_msc.txt b/appc-config/appc-config-audit/provider/src/test/resources/convert/escape/config_msc.txt
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/appc-config/appc-config-audit/provider/src/test/resources/convert/escape/config_ssc.txt b/appc-config/appc-config-audit/provider/src/test/resources/convert/escape/config_ssc.txt
new file mode 100644 (file)
index 0000000..e69de29
diff --git a/appc-config/appc-config-audit/provider/src/test/resources/convert/escape/config_vdbe.xml b/appc-config/appc-config-audit/provider/src/test/resources/convert/escape/config_vdbe.xml
new file mode 100644 (file)
index 0000000..7877967
--- /dev/null
@@ -0,0 +1,19 @@
+<!--
+  ============LICENSE_START=======================================================
+  ONAP : APP-C
+  ================================================================================
+  Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+  ================================================================================
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+  
+       http://www.apache.org/licenses/LICENSE-2.0
+  
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  ============LICENSE_END=========================================================
+  -->
diff --git a/appc-config/appc-config-audit/provider/src/test/resources/convert/payload_cli_config.json b/appc-config/appc-config-audit/provider/src/test/resources/convert/payload_cli_config.json
new file mode 100644 (file)
index 0000000..a82eaf0
--- /dev/null
@@ -0,0 +1,19 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
diff --git a/appc-config/appc-config-audit/provider/src/test/resources/convert/payload_json_config.json b/appc-config/appc-config-audit/provider/src/test/resources/convert/payload_json_config.json
new file mode 100644 (file)
index 0000000..a82eaf0
--- /dev/null
@@ -0,0 +1,19 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
diff --git a/appc-config/appc-config-audit/provider/src/test/resources/convert/payload_parameters_config.json b/appc-config/appc-config-audit/provider/src/test/resources/convert/payload_parameters_config.json
new file mode 100644 (file)
index 0000000..a82eaf0
--- /dev/null
@@ -0,0 +1,19 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
diff --git a/appc-config/appc-config-audit/provider/src/test/resources/convert/payload_template_config.json b/appc-config/appc-config-audit/provider/src/test/resources/convert/payload_template_config.json
new file mode 100644 (file)
index 0000000..a82eaf0
--- /dev/null
@@ -0,0 +1,19 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
diff --git a/appc-config/appc-config-audit/provider/src/test/resources/convert/payload_xml_config.json b/appc-config/appc-config-audit/provider/src/test/resources/convert/payload_xml_config.json
new file mode 100644 (file)
index 0000000..a82eaf0
--- /dev/null
@@ -0,0 +1,19 @@
+/*-
+ * ============LICENSE_START=======================================================
+ * ONAP : APP-C
+ * ================================================================================
+ * Copyright (C) 2017 AT&T Intellectual Property.  All rights reserved.
+ * ================================================================================
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============LICENSE_END=========================================================
+ */
index 24060ce..3250f68 100644 (file)
 
     </dependencyManagement>
 
-       <modules>
-               <module>appc-config-params</module>
-                <module>appc-encryption-tool</module>
-                <module>appc-data-services</module>
-                <module>appc-flow-controller</module>
-                <module>appc-config-generator</module>
-                <module>appc-config-adaptor</module>
-       </modules>
+    <modules>
+        <module>appc-config-params</module>
+        <module>appc-encryption-tool</module>
+        <module>appc-data-services</module>
+        <module>appc-flow-controller</module>
+        <module>appc-config-generator</module>
+        <module>appc-config-adaptor</module>
+            <module>appc-config-audit</module>
+    </modules>
 
 </project>