Merge "Add platform DGs to distribution"
diff --git a/opendaylight/pom.xml b/opendaylight/pom.xml
index c35546d..9de65fd 100644
--- a/opendaylight/pom.xml
+++ b/opendaylight/pom.xml
@@ -5,13 +5,13 @@
     <parent>
         <groupId>org.onap.ccsdk.distribution</groupId>
         <artifactId>distribution-root</artifactId>
-        <version>0.0.1-SNAPSHOT</version>
+        <version>0.1.0-SNAPSHOT</version>
     </parent>
 
     <modelVersion>4.0.0</modelVersion>
     <packaging>pom</packaging>
     <artifactId>distribution-opendaylight</artifactId>
-    <version>0.0.1-SNAPSHOT</version>
+    <version>0.1.0-SNAPSHOT</version>
 
     <name>Distribution - opendaylight</name>
     <description>Creates OpenDaylight container</description>
diff --git a/platform-logic/.gitignore b/platform-logic/.gitignore
new file mode 100644
index 0000000..1b8a6ba
--- /dev/null
+++ b/platform-logic/.gitignore
@@ -0,0 +1,12 @@
+org.eclipse.core.resources.prefs
+.classpath

+.project

+.settings

+.idea

+.externalToolBuilders

+maven-eclipse.xml

+*.class

+target/

+MANIFEST.MF

+.DS_STORE

+.metadata

diff --git a/platform-logic/asdc-api/pom.xml b/platform-logic/asdc-api/pom.xml
new file mode 100644
index 0000000..9457d34
--- /dev/null
+++ b/platform-logic/asdc-api/pom.xml
@@ -0,0 +1,57 @@
+<?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.onap.ccsdk.distribution</groupId>
+	  <artifactId>distribution-platform-logic</artifactId>
+		<version>0.1.0-SNAPSHOT</version>
+	</parent>
+
+	<modelVersion>4.0.0</modelVersion>
+	<packaging>pom</packaging>
+	<artifactId>platform-logic-asdcapi</artifactId>
+	<version>0.1.0-SNAPSHOT</version>
+
+	<name>Platform Logic : ASDC-API</name>
+	<description>Contains platform-level service logic for the ASDC-API</description>
+
+
+	<build>
+		<plugins>
+			<plugin>
+				<artifactId>maven-resources-plugin</artifactId>
+				<version>2.6</version>
+				<executions>
+					<execution>
+						<id>copy-version</id>
+						<goals>
+							<goal>copy-resources</goal>
+						</goals><!-- here the phase you need -->
+						<phase>validate</phase>
+						<configuration>
+							<outputDirectory>../target/graphs/asdcapi</outputDirectory>
+							<resources>
+								<resource>
+									<directory>src/main/xml</directory>
+									<includes>
+										<include>*.xml</include>
+									</includes>
+									<filtering>true</filtering>
+								</resource>
+								<resource>
+									<directory>src/main/resources</directory>
+									<includes>
+										<include>graph.versions</include>
+									</includes>
+									<filtering>true</filtering>
+								</resource>
+							</resources>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
+		</plugins>
+	</build>
+
+</project>
diff --git a/platform-logic/asdc-api/src/main/json/ASDC-API_vf-license-model-update.json b/platform-logic/asdc-api/src/main/json/ASDC-API_vf-license-model-update.json
new file mode 100644
index 0000000..de6d6a0
--- /dev/null
+++ b/platform-logic/asdc-api/src/main/json/ASDC-API_vf-license-model-update.json
@@ -0,0 +1,346 @@
+
+
+
+[
+    {
+        "id": "c7f3b902.c0fcc8",
+        "type": "dgstart",
+        "name": "DGSTART",
+        "outputs": 1,
+        "x": 148,
+        "y": 123,
+        "z": "b94f5cde.40937",
+        "wires": [
+            [
+                "72236e27.a51f78"
+            ]
+        ]
+    },
+    {
+        "id": "612aaed1.f30978",
+        "type": "comment",
+        "name": "ASDC update to VF license model",
+        "info": "",
+        "comments": "",
+        "x": 550,
+        "y": 45,
+        "z": "b94f5cde.40937",
+        "wires": []
+    },
+    {
+        "id": "72236e27.a51f78",
+        "type": "service-logic",
+        "name": "ASDC-API 1.0.0",
+        "module": "ASDC-API",
+        "version": "${project.version}",
+        "comments": "",
+        "xml": "<service-logic xmlns='http://www.att.com/sdnctl/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.att.com/sdnctl/svclogic ./svclogic.xsd' module='ASDC-API' version='${project.version}'>",
+        "outputs": 1,
+        "x": 340,
+        "y": 124,
+        "z": "b94f5cde.40937",
+        "wires": [
+            [
+                "e6c56f71.e6a96"
+            ]
+        ]
+    },
+    {
+        "id": "e6c56f71.e6a96",
+        "type": "method",
+        "name": "method vf-license-model-update",
+        "xml": "<method rpc='vf-license-model-update' mode='sync'>\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 588,
+        "y": 124,
+        "z": "b94f5cde.40937",
+        "wires": [
+            [
+                "90b82ce5.7ff2a"
+            ]
+        ]
+    },
+    {
+        "id": "90b82ce5.7ff2a",
+        "type": "block",
+        "name": "block",
+        "xml": "<block>\n",
+        "atomic": "false",
+        "comments": "",
+        "outputs": 1,
+        "x": 222,
+        "y": 230,
+        "z": "b94f5cde.40937",
+        "wires": [
+            [
+                "6a527c25.be62c4",
+                "b37c86cb.130b8",
+                "1c4b640e.56b174"
+            ]
+        ]
+    },
+    {
+        "id": "6a527c25.be62c4",
+        "type": "GenericXML",
+        "name": "record",
+        "xml": "<record  plugin=\"org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder\">\n<parameter name=\"file\" value=\"/opt/opendaylight/current/data/log/svclogic.log\"/>\n<parameter name=\"field1\" value=\"__TIMESTAMP__\"/>\n<parameter name=\"field2\" value=\"vf-license-model\"/>",
+        "comments": "",
+        "outputs": 1,
+        "x": 374,
+        "y": 230,
+        "z": "b94f5cde.40937",
+        "wires": [
+            []
+        ]
+    },
+    {
+        "id": "b37c86cb.130b8",
+        "type": "set",
+        "name": "set resource-plugin",
+        "xml": "<set>\n<parameter name='resource-plugin' value='com.att.sdnctl.sli.resource.gamma.GammaResource' />\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 410,
+        "y": 281,
+        "z": "b94f5cde.40937",
+        "wires": [
+            []
+        ]
+    },
+    {
+        "id": "1c4b640e.56b174",
+        "type": "switchNode",
+        "name": "switch: length of feature-group list > 0",
+        "xml": "<switch test='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group_length > 0`'>\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 459,
+        "y": 344,
+        "z": "b94f5cde.40937",
+        "wires": [
+            [
+                "1b40f4f1.7134f3"
+            ]
+        ]
+    },
+    {
+        "id": "1b40f4f1.7134f3",
+        "type": "outcomeTrue",
+        "name": "true",
+        "xml": "<outcome value='true'>\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 695,
+        "y": 343,
+        "z": "b94f5cde.40937",
+        "wires": [
+            [
+                "9b76ec90.614c08"
+            ]
+        ]
+    },
+    {
+        "id": "9b76ec90.614c08",
+        "type": "for",
+        "name": "for: feature groups",
+        "xml": "<for index='i' start='0' end='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group_length`' >\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 855,
+        "y": 343,
+        "z": "b94f5cde.40937",
+        "wires": [
+            [
+                "3dbfa83c.5d206"
+            ]
+        ]
+    },
+    {
+        "id": "44241b8a.fe4ddc",
+        "type": "save",
+        "name": "save VNF_MODEL_LICENSES",
+        "xml": "<save plugin='`$resource-plugin`' resource='vnf-model-licenses' key='att-part-number = $vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].att-part-number and license-assignment-group = $tmp-license-group' force='true'>\n<parameter name='att-part-number' value='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].att-part-number`' />\n<parameter name='license-assignment-group' value='`$tmp-license-group`'/>\n<parameter name='license-required' value='`$tmp-license-required`'/>\n<parameter name='entitlement-assignment-group' value='`$tmp-entitlement-group`'/>\n<parameter name='entitlement-required' value='`$tmp-entitlement-required`'/>\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 1254,
+        "y": 544,
+        "z": "b94f5cde.40937",
+        "wires": [
+            []
+        ]
+    },
+    {
+        "id": "90633ed7.848e18",
+        "type": "switchNode",
+        "name": "switch: length of license key groups == 0",
+        "xml": "<switch test='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].license-key-group-list.license-key-group_length == 0`'>\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 1275,
+        "y": 294,
+        "z": "b94f5cde.40937",
+        "wires": [
+            [
+                "a36e3c96.3c6238",
+                "fb2fe0dd.5e4d38"
+            ]
+        ]
+    },
+    {
+        "id": "a36e3c96.3c6238",
+        "type": "outcomeTrue",
+        "name": "true",
+        "xml": "<outcome value='true'>\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 1523,
+        "y": 293,
+        "z": "b94f5cde.40937",
+        "wires": [
+            [
+                "fc3c75a8.272ad"
+            ]
+        ]
+    },
+    {
+        "id": "fc3c75a8.272ad",
+        "type": "set",
+        "name": "set license required to 0",
+        "xml": "<set>\n<parameter name='tmp-license-required' value='0' />\n<parameter name='tmp-license-group' value='NONE' />\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 1737,
+        "y": 293,
+        "z": "b94f5cde.40937",
+        "wires": [
+            []
+        ]
+    },
+    {
+        "id": "fb2fe0dd.5e4d38",
+        "type": "outcomeFalse",
+        "name": "false",
+        "xml": "<outcome value='false'>\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 1521,
+        "y": 346,
+        "z": "b94f5cde.40937",
+        "wires": [
+            [
+                "2d606ecc.b12bba"
+            ]
+        ]
+    },
+    {
+        "id": "2d606ecc.b12bba",
+        "type": "set",
+        "name": "set license required to 1",
+        "xml": "<set>\n<parameter name='tmp-license-required' value='1' />\n<parameter name='tmp-license-group' value='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].license-key-group-list.license-key-group[0].license-key-group-uuid`' />\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 1732,
+        "y": 348,
+        "z": "b94f5cde.40937",
+        "wires": [
+            []
+        ]
+    },
+    {
+        "id": "64fd0671.15f188",
+        "type": "switchNode",
+        "name": "switch: length of entitlement pool == 0",
+        "xml": "<switch test='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].entitlement-pool-list.entitlement-pool_length == 0`'>\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 1277,
+        "y": 405,
+        "z": "b94f5cde.40937",
+        "wires": [
+            [
+                "7ebbe15a.bb3988",
+                "9213bc2a.81103"
+            ]
+        ]
+    },
+    {
+        "id": "7ebbe15a.bb3988",
+        "type": "outcomeTrue",
+        "name": "true",
+        "xml": "<outcome value='true'>\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 1525,
+        "y": 404,
+        "z": "b94f5cde.40937",
+        "wires": [
+            [
+                "eb5a3c7b.4c3dc"
+            ]
+        ]
+    },
+    {
+        "id": "eb5a3c7b.4c3dc",
+        "type": "set",
+        "name": "set entitlement required to 0",
+        "xml": "<set>\n<parameter name='tmp-entitlement-required' value='0' />\n<parameter name='tmp-entitlement-group' value='NONE' />\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 1739,
+        "y": 404,
+        "z": "b94f5cde.40937",
+        "wires": [
+            []
+        ]
+    },
+    {
+        "id": "9213bc2a.81103",
+        "type": "outcomeFalse",
+        "name": "false",
+        "xml": "<outcome value='false'>\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 1523,
+        "y": 457,
+        "z": "b94f5cde.40937",
+        "wires": [
+            [
+                "b64ce482.a1f508"
+            ]
+        ]
+    },
+    {
+        "id": "b64ce482.a1f508",
+        "type": "set",
+        "name": "set entitlement required to 1",
+        "xml": "<set>\n<parameter name='tmp-entitlement-required' value='1' />\n<parameter name='tmp-entitlement-group' value='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].entitlement-pool-list.entitlement-pool[0].entitlement-pool-uuid`' />\n",
+        "comments": "",
+        "outputs": 1,
+        "x": 1734,
+        "y": 459,
+        "z": "b94f5cde.40937",
+        "wires": [
+            []
+        ]
+    },
+    {
+        "id": "3dbfa83c.5d206",
+        "type": "block",
+        "name": "block",
+        "xml": "<block>\n",
+        "atomic": "false",
+        "comments": "",
+        "outputs": 1,
+        "x": 1022,
+        "y": 344,
+        "z": "b94f5cde.40937",
+        "wires": [
+            [
+                "90633ed7.848e18",
+                "64fd0671.15f188",
+                "44241b8a.fe4ddc"
+            ]
+        ]
+    }
+]
diff --git a/platform-logic/asdc-api/src/main/resources/graph.versions b/platform-logic/asdc-api/src/main/resources/graph.versions
new file mode 100644
index 0000000..4327161
--- /dev/null
+++ b/platform-logic/asdc-api/src/main/resources/graph.versions
@@ -0,0 +1 @@
+ASDC-API  vf-license-model-update          ${project.version}    sync
diff --git a/platform-logic/asdc-api/src/main/xml/ASDC-API_vf-license-model-update.xml b/platform-logic/asdc-api/src/main/xml/ASDC-API_vf-license-model-update.xml
new file mode 100644
index 0000000..c6d079c
--- /dev/null
+++ b/platform-logic/asdc-api/src/main/xml/ASDC-API_vf-license-model-update.xml
@@ -0,0 +1,78 @@
+<!--
+  ============LICENSE_START=======================================================
+  openECOMP : SDN-C
+  ================================================================================
+  Copyright (C) 2017 AT&T Intellectual Property. All rights
+  							reserved.
+  ================================================================================
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+       http://www.apache.org/licenses/LICENSE-2.0
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  ============LICENSE_END=========================================================
+  -->
+
+<service-logic xmlns="http://www.onap.org/sdnc/svclogic"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://www.onap.org/sdnc/svclogic ./svclogic.xsd" module='ASDC-API' version='${project.version}'>
+    <method rpc='vf-license-model-update' mode='sync'>
+        <block>
+            <record  plugin="org.onap.ccsdk.sli.core.sli.recording.Slf4jRecorder">
+                <parameter name="file" value="/opt/opendaylight/current/data/log/svclogic.log"/>
+                <parameter name="field1" value="__TIMESTAMP__"/>
+                <parameter name="field2" value="vf-license-model"/>
+            </record>
+            <set>
+                <parameter name='resource-plugin' value='org.onap.ccsdk.sli.adaptors.gamma.GammaResource' />
+            </set>
+            <switch test='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group_length > 0`'>
+                <outcome value='true'>
+                    <for index='i' start='0' end='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group_length`' >
+                        <block>
+                            <switch test='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].license-key-group-list.license-key-group_length == 0`'>
+                                <outcome value='true'>
+                                    <set>
+                                        <parameter name='tmp-license-required' value='0' />
+                                        <parameter name='tmp-license-group' value='NONE' />
+                                    </set>
+                                </outcome>
+                                <outcome value='false'>
+                                    <set>
+                                        <parameter name='tmp-license-required' value='1' />
+                                        <parameter name='tmp-license-group' value='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].license-key-group-list.license-key-group[0].license-key-group-uuid`' />
+                                    </set>
+                                </outcome>
+                            </switch>
+                            <switch test='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].entitlement-pool-list.entitlement-pool_length == 0`'>
+                                <outcome value='true'>
+                                    <set>
+                                        <parameter name='tmp-entitlement-required' value='0' />
+                                        <parameter name='tmp-entitlement-group' value='NONE' />
+                                    </set>
+                                </outcome>
+                                <outcome value='false'>
+                                    <set>
+                                        <parameter name='tmp-entitlement-required' value='1' />
+                                        <parameter name='tmp-entitlement-group' value='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].entitlement-pool-list.entitlement-pool[0].entitlement-pool-uuid`' />
+                                    </set>
+                                </outcome>
+                            </switch>
+                            <save plugin='`$resource-plugin`' resource='vnf-model-licenses' key='att-part-number = $vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].att-part-number and license-assignment-group = $tmp-license-group' force='true'>
+                                <parameter name='att-part-number' value='`$vf-license-model-update-input.vf-license-model.feature-group-list.feature-group[$i].att-part-number`' />
+                                <parameter name='license-assignment-group' value='`$tmp-license-group`'/>
+                                <parameter name='license-required' value='`$tmp-license-required`'/>
+                                <parameter name='entitlement-assignment-group' value='`$tmp-entitlement-group`'/>
+                                <parameter name='entitlement-required' value='`$tmp-entitlement-required`'/>
+                            </save>
+                        </block>
+                    </for>
+                </outcome>
+            </switch>
+        </block>
+    </method>
+</service-logic>
diff --git a/platform-logic/installer/pom.xml b/platform-logic/installer/pom.xml
new file mode 100644
index 0000000..f6b8578
--- /dev/null
+++ b/platform-logic/installer/pom.xml
@@ -0,0 +1,129 @@
+<?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.onap.ccsdk.distribution</groupId>
+        <artifactId>distribution-platform-logic</artifactId>
+        <version>0.1.0-SNAPSHOT</version>
+    </parent>
+
+    <modelVersion>4.0.0</modelVersion>
+    <packaging>pom</packaging>
+    <artifactId>platform-logic-installer</artifactId>
+    <version>0.1.0-SNAPSHOT</version>
+
+    <name>Platform Logic Installer</name>
+    <description>Contains platform-level service logic installer</description>
+
+
+
+    <build>
+        <plugins>
+            <plugin>
+                <artifactId>maven-resources-plugin</artifactId>
+                <version>2.6</version>
+                <executions>
+                    <execution>
+                        <id>copy-version</id>
+                        <goals>
+                            <goal>copy-resources</goal>
+                        </goals><!-- here the phase you need -->
+                        <phase>validate</phase>
+                        <configuration>
+                            <outputDirectory>target/resources</outputDirectory>
+                            <resources>
+                                <resource>
+                                    <directory>src/main/resources</directory>
+                                    <includes>
+                                        <include>*</include>
+                                    </includes>
+                                    <filtering>true</filtering>
+                                </resource>
+                            </resources>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+            <plugin>
+                <artifactId>maven-assembly-plugin</artifactId>
+                <version>2.6</version>
+                <executions>
+                    <execution>
+                        <id>create-zip</id>
+                        <goals>
+                            <goal>single</goal>
+                        </goals>
+                        <phase>package</phase>
+                        <configuration>
+                            <attach>true</attach>
+                            <descriptors>
+                                <descriptor>src/assembly/assemble_zip.xml</descriptor>
+                            </descriptors>
+                            <appendAssemblyId>false</appendAssemblyId>
+                        </configuration>
+                    </execution>
+
+                </executions>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-dependency-plugin</artifactId>
+                <executions>
+                    <execution>
+                        <id>copy-dependencies</id>
+                        <goals>
+                            <goal>copy-dependencies</goal>
+                        </goals>
+                        <phase>prepare-package</phase>
+                        <configuration>
+                            <transitive>false</transitive>
+                            <outputDirectory>${project.build.directory}/lib</outputDirectory>
+                            <overWriteReleases>false</overWriteReleases>
+                            <overWriteSnapshots>true</overWriteSnapshots>
+                            <overWriteIfNewer>true</overWriteIfNewer>
+                            <useRepositoryLayout>false</useRepositoryLayout>
+                            <addParentPoms>false</addParentPoms>
+                            <copyPom>false</copyPom>
+                            <scope>provided</scope>
+                        </configuration>
+                    </execution>
+                </executions>
+            </plugin>
+        </plugins>
+
+    </build>
+    <dependencies>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+            <version>${slf4j.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-simple</artifactId>
+            <version>1.7.5</version>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>org.onap.ccsdk.sli.core</groupId>
+            <artifactId>sli-common</artifactId>
+            <version>${sdnctl.sli.version}</version>
+        </dependency>
+        <dependency>
+            <groupId>org.antlr</groupId>
+            <artifactId>antlr4</artifactId>
+            <version>${antlr.version}</version>
+            <type>jar</type>
+            <scope>compile</scope>
+        </dependency>
+        <dependency>
+            <groupId>mysql</groupId>
+            <artifactId>mysql-connector-java</artifactId>
+            <version>${mysql.connector.version}</version>
+            <type>jar</type>
+            <scope>compile</scope>
+        </dependency>
+    </dependencies>
+
+</project>
diff --git a/platform-logic/installer/src/assembly/assemble_zip.xml b/platform-logic/installer/src/assembly/assemble_zip.xml
new file mode 100644
index 0000000..46a8b61
--- /dev/null
+++ b/platform-logic/installer/src/assembly/assemble_zip.xml
@@ -0,0 +1,71 @@
+<!--
+  ============LICENSE_START=======================================================
+  openECOMP : SDN-C
+  ================================================================================
+  Copyright (C) 2017 AT&T Intellectual Property. All rights
+  							reserved.
+  ================================================================================
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+  
+       http://www.apache.org/licenses/LICENSE-2.0
+  
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  ============LICENSE_END=========================================================
+  -->
+
+<!-- Defines how we build the .zip file which is our distribution. -->
+
+<assembly
+	xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
+	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+	xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">
+	<id>bin</id>
+	<formats>
+		<format>zip</format>
+	</formats>
+
+	<includeBaseDirectory>false</includeBaseDirectory>
+
+	<fileSets>
+		<fileSet>
+			<directory>../target/graphs</directory>
+			<outputDirectory>svclogic/graphs</outputDirectory>
+			<includes>
+				<include>**/*.xml</include>
+				<include>**/graph.versions</include>
+			</includes>
+		</fileSet>
+
+		<fileSet>
+			<directory>src/main/scripts</directory>
+			<outputDirectory>svclogic/bin</outputDirectory>
+			<includes>
+				<include>*.sh</include>
+			</includes>
+			<fileMode>0755</fileMode>
+		</fileSet>
+		<fileSet>
+			<directory>target/resources</directory>
+			<outputDirectory>svclogic/config</outputDirectory>
+			<includes>
+				<include>*</include>
+			</includes>
+		</fileSet>
+		<fileSet>
+			<directory>target/lib</directory>
+			<outputDirectory>svclogic/lib</outputDirectory>
+			<includes>
+				<include>*.jar</include>
+			</includes>
+		</fileSet>
+	</fileSets>
+
+
+
+</assembly>
diff --git a/platform-logic/installer/src/main/resources/svclogic.properties b/platform-logic/installer/src/main/resources/svclogic.properties
new file mode 100644
index 0000000..9ffc298
--- /dev/null
+++ b/platform-logic/installer/src/main/resources/svclogic.properties
@@ -0,0 +1,26 @@
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# 							reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+org.onap.ccsdk.sli.dbtype = jdbc
+org.onap.ccsdk.sli.jdbc.url = jdbc:mysql://sdnctldb01:3306/sdnctl
+org.onap.ccsdk.sli.jdbc.database = sdnctl
+org.onap.ccsdk.sli.jdbc.user = sdnctl
+org.onap.ccsdk.sli.jdbc.password = gamma
diff --git a/platform-logic/installer/src/main/scripts/install.sh b/platform-logic/installer/src/main/scripts/install.sh
new file mode 100644
index 0000000..2c32e93
--- /dev/null
+++ b/platform-logic/installer/src/main/scripts/install.sh
@@ -0,0 +1,54 @@
+#!/bin/bash
+
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# 							reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# 
+#      http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+BASEDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )/.." && pwd )"
+
+
+# Load directed graphs
+
+
+for graphlist in $(find $BASEDIR/graphs -name graph.versions -print)
+do
+  curdir=$(dirname $graphlist)
+
+  # Load files from directory containing graph.versions file
+  echo "Loading graphs from $curdir"
+  for file in $(ls $curdir/*.xml)
+  do
+    echo "Loading $file ..."
+    $BASEDIR/bin/svclogic.sh load $file $BASEDIR/config/svclogic.properties
+  done
+
+  # Activate directed graphs
+  while read module rpc version mode
+  do
+     echo "Activating $module $rpc $version $mode"
+     $BASEDIR/bin/svclogic.sh activate $module $rpc $version $mode $BASEDIR/config/svclogic.properties
+  done < $graphlist
+done
+
+
+
+
+
+
diff --git a/platform-logic/installer/src/main/scripts/setenv.sh b/platform-logic/installer/src/main/scripts/setenv.sh
new file mode 100644
index 0000000..c5e520f
--- /dev/null
+++ b/platform-logic/installer/src/main/scripts/setenv.sh
@@ -0,0 +1,45 @@
+#!/bin/bash
+
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# 							reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+SDNC_CONFIG_DIR=${SDNC_CONFIG_DIR:-/opt/sdnc/data/properties}
+
+AAIURI=$(grep org.onap.ccsdk.sli.aai.uri ${SDNC_CONFIG_DIR}/aaiclient.properties | grep -v '#' | cut -d'=' -f2)
+
+MYSQL_USER=$(grep org.onap.ccsdk.sli.jdbc.user ${SDNC_CONFIG_DIR}/dblib.properties | grep -v '#' | cut -d'=' -f2)
+MYSQL_PWD=$(grep org.onap.ccsdk.sli.jdbc.password ${SDNC_CONFIG_DIR}/dblib.properties | grep -v '#' | cut -d'=' -f2)
+MYSQL_DB=$(grep org.onap.ccsdk.sli.jdbc.database ${SDNC_CONFIG_DIR}/dblib.properties | grep -v '#' | cut -d'=' -f2)
+MYSQL_SERVER=$(grep org.onap.ccsdk.sli.jdbc.hosts ${SDNC_CONFIG_DIR}/dblib.properties | grep -v '#' | cut -d'=' -f2 | cut -d',' -f1)
+
+ODLUSER=$(grep controllerUser ${SDNC_CONFIG_DIR}/backup.properties | grep -v '#' | cut -d'=' -f2)
+ODLPWD=$(grep controllerPass ${SDNC_CONFIG_DIR}/backup.properties | grep -v '#' | cut -d'=' -f2)
+
+ODLHOST=$(grep odlNodes ${SDNC_CONFIG_DIR}/backup.properties | grep -v '#' | cut -d'=' -f2|cut -d',' -f1)
+ODLPORT=$(grep controllerPort ${SDNC_CONFIG_DIR}/backup.properties | grep -v '#' | cut -d'=' -f2)
+if [ $ODLPORT = 8443 ]
+then
+  ODLPROTO=https
+else
+  ODLPROTO=http
+fi
+
+unset HTTP_PROXY HTTPS_PROXY http_proxy https_proxy
diff --git a/platform-logic/installer/src/main/scripts/showActiveGraphs.sh b/platform-logic/installer/src/main/scripts/showActiveGraphs.sh
new file mode 100644
index 0000000..9b89e9c
--- /dev/null
+++ b/platform-logic/installer/src/main/scripts/showActiveGraphs.sh
@@ -0,0 +1,29 @@
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# 							reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+# 
+#      http://www.apache.org/licenses/LICENSE-2.0
+# 
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+MYSQL_USER=${MYSQL_USER:-sdnctl}
+MYSQL_PWD=${MYSQL_PWD:-gamma}
+MYSQL_DB=${MYSQL_DB:-sdnctl}
+MYSQL_HOST=${MYSQL_HOST:-dbhost}
+
+mysql --user=${MYSQL_USER} --password=${MYSQL_PWD} --host=${MYSQL_HOST} ${MYSQL_DB} <<-END
+SELECT module, rpc, version, mode from SVC_LOGIC where active='Y';
+END
diff --git a/platform-logic/installer/src/main/scripts/svclogic.sh b/platform-logic/installer/src/main/scripts/svclogic.sh
new file mode 100644
index 0000000..1d6dd2d
--- /dev/null
+++ b/platform-logic/installer/src/main/scripts/svclogic.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+
+###
+# ============LICENSE_START=======================================================
+# openECOMP : SDN-C
+# ================================================================================
+# Copyright (C) 2017 AT&T Intellectual Property. All rights
+# 							reserved.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#      http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+###
+
+BASEDIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )/.." && pwd )"
+JARDIR=${BASEDIR}/lib
+
+for jar in $JARDIR/*.jar
+do
+    CLASSPATH=$CLASSPATH:${jar}
+done
+
+java -cp ${CLASSPATH}:${MYSQL_JDBC_DRIVER} org.onap.ccsdk.sli.core.sli.SvcLogicParser $*
diff --git a/platform-logic/pom.xml b/platform-logic/pom.xml
new file mode 100644
index 0000000..3ce0b57
--- /dev/null
+++ b/platform-logic/pom.xml
@@ -0,0 +1,34 @@
+<?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.onap.ccsdk.distribution</groupId>
+	  <artifactId>distribution-root</artifactId>
+		<version>0.1.0-SNAPSHOT</version>
+	</parent>
+
+	<modelVersion>4.0.0</modelVersion>
+	<packaging>pom</packaging>
+	  <artifactId>distribution-platform-logic</artifactId>
+	<version>0.1.0-SNAPSHOT</version>
+
+	<name>Platform Logic </name>
+	<description>Contains platform-level service logic</description>
+
+	<properties>
+		<application.name>platform-logic</application.name>
+
+		<maven.build.timestamp.format>yyMMdd-HHmmss</maven.build.timestamp.format>
+		<build.number>${maven.build.timestamp}</build.number>
+	</properties>
+
+	<modules>
+		<module>asdc-api</module>
+		<module>sliapi</module>
+		<module>installer</module>
+	</modules>
+	<organization>
+		<name>openECOMP</name>
+	</organization>
+</project>
diff --git a/platform-logic/sliapi/pom.xml b/platform-logic/sliapi/pom.xml
new file mode 100644
index 0000000..ef047a8
--- /dev/null
+++ b/platform-logic/sliapi/pom.xml
@@ -0,0 +1,57 @@
+<?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.onap.ccsdk.distribution</groupId>
+	  <artifactId>distribution-platform-logic</artifactId>
+		<version>0.1.0-SNAPSHOT</version>
+	</parent>
+
+	<modelVersion>4.0.0</modelVersion>
+	<packaging>pom</packaging>
+	<artifactId>platform-logic-sliapi</artifactId>
+	<version>0.1.0-SNAPSHOT</version>
+
+	<name>Platform Logic : SLI-API</name>
+	<description>Contains platform-level service logic for the SLI-API</description>
+
+
+	<build>
+		<plugins>
+			<plugin>
+				<artifactId>maven-resources-plugin</artifactId>
+				<version>2.6</version>
+				<executions>
+					<execution>
+						<id>copy-version</id>
+						<goals>
+							<goal>copy-resources</goal>
+						</goals><!-- here the phase you need -->
+						<phase>validate</phase>
+						<configuration>
+							<outputDirectory>../target/graphs/sliapi</outputDirectory>
+							<resources>
+								<resource>
+									<directory>src/main/xml</directory>
+									<includes>
+										<include>*.xml</include>
+									</includes>
+									<filtering>true</filtering>
+								</resource>
+								<resource>
+									<directory>src/main/resources</directory>
+									<includes>
+										<include>graph.versions</include>
+									</includes>
+									<filtering>true</filtering>
+								</resource>
+							</resources>
+						</configuration>
+					</execution>
+				</executions>
+			</plugin>
+		</plugins>
+	</build>
+
+</project>
diff --git a/platform-logic/sliapi/src/main/json/sli_healthcheck.json b/platform-logic/sliapi/src/main/json/sli_healthcheck.json
new file mode 100644
index 0000000..e939467
--- /dev/null
+++ b/platform-logic/sliapi/src/main/json/sli_healthcheck.json
@@ -0,0 +1,4 @@
+
+
+
+[{"id":"dbe3f1ee.ed5bb8","type":"dgstart","name":"DGSTART","outputs":1,"x":130,"y":52,"z":"95339741.be0da","wires":[["e5677e2c.75636"]]},{"id":"e5677e2c.75636","type":"service-logic","name":"sli ${project.version}","module":"sli","version":"${project.version}","comments":"","xml":"<service-logic xmlns='http://www.att.com/sdnctl/svclogic' xmlns:xsi='http://www.w3.org/2001/XMLSchema-instance' xsi:schemaLocation='http://www.att.com/sdnctl/svclogic ./svclogic.xsd' module='sli' version='${project.version}'>","outputs":1,"x":169,"y":117,"z":"95339741.be0da","wires":[["2abd790.d32b188"]]},{"id":"2abd790.d32b188","type":"method","name":"method healthcheck","xml":"<method rpc='healthcheck' mode='sync'>\n","comments":"","outputs":1,"x":212,"y":184,"z":"95339741.be0da","wires":[["33013f8c.9c1dc8"]]},{"id":"33013f8c.9c1dc8","type":"set","name":"set return message","xml":"<set>\n<parameter name='error-code' value='200' />\n<parameter name='error-message' value='SDN-C is healthy'/>\n<parameter name='ack-final' value='Y'/>\n","comments":"","x":263,"y":264,"z":"95339741.be0da","wires":[]}]
diff --git a/platform-logic/sliapi/src/main/resources/graph.versions b/platform-logic/sliapi/src/main/resources/graph.versions
new file mode 100644
index 0000000..d0cdbdc
--- /dev/null
+++ b/platform-logic/sliapi/src/main/resources/graph.versions
@@ -0,0 +1 @@
+sli healthcheck ${project.version} sync
diff --git a/platform-logic/sliapi/src/main/xml/sli_healthcheck.xml b/platform-logic/sliapi/src/main/xml/sli_healthcheck.xml
new file mode 100644
index 0000000..c176767
--- /dev/null
+++ b/platform-logic/sliapi/src/main/xml/sli_healthcheck.xml
@@ -0,0 +1,27 @@
+<!--
+  ============LICENSE_START=======================================================
+  openECOMP : SDN-C
+  ================================================================================
+  Copyright (C) 2017 AT&T Intellectual Property. All rights
+  							reserved.
+  ================================================================================
+  Licensed under the Apache License, Version 2.0 (the "License");
+  you may not use this file except in compliance with the License.
+  You may obtain a copy of the License at
+       http://www.apache.org/licenses/LICENSE-2.0
+  Unless required by applicable law or agreed to in writing, software
+  distributed under the License is distributed on an "AS IS" BASIS,
+  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  See the License for the specific language governing permissions and
+  limitations under the License.
+  ============LICENSE_END=========================================================
+  -->
+
+<service-logic xmlns="http://www.openecomp.org/sdnc/svclogic"
+    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+    xsi:schemaLocation="http://www.openecomp.org/sdnc/svclogic ./svclogic.xsd" module='sli' version='${project.version}'><method rpc='healthcheck' mode='sync'>
+<set>
+<parameter name='error-code' value='200' />
+<parameter name='error-message' value='SDN-C is healthy'/>
+<parameter name='ack-final' value='Y'/>
+</set></method></service-logic>
diff --git a/pom.xml b/pom.xml
index 7ed792e..0b67762 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,32 +1,33 @@
 <?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">
+    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
 
-	<parent>
-		<groupId>org.onap.ccsdk.parent</groupId>
-		<artifactId>odlparent-boron-sr3</artifactId>
-		<version>0.0.1-SNAPSHOT</version>
-	</parent>
+    <parent>
+        <groupId>org.onap.ccsdk.parent</groupId>
+        <artifactId>odlparent-carbon-sr1</artifactId>
+        <version>0.0.1-SNAPSHOT</version>
+    </parent>
 
-	<modelVersion>4.0.0</modelVersion>
-	<packaging>pom</packaging>
-	<groupId>org.onap.ccsdk.distribution</groupId>
-	<artifactId>distribution-root</artifactId>
-	<version>0.0.1-SNAPSHOT</version>
+    <modelVersion>4.0.0</modelVersion>
+    <packaging>pom</packaging>
+    <groupId>org.onap.ccsdk.distribution</groupId>
+    <artifactId>distribution-root</artifactId>
+    <version>0.1.0-SNAPSHOT</version>
 
-	<name>Distribution</name>
-	<description>Creates distributuon bundles for CCSDK</description>
+    <name>Distribution</name>
+    <description>Creates distributuon bundles for CCSDK</description>
 
-	<properties>
-		<application.name>distribution</application.name>
+    <properties>
+        <application.name>distribution</application.name>
 
-		<maven.build.timestamp.format>yyMMdd-HHmmss</maven.build.timestamp.format>
-		<build.number>${maven.build.timestamp}</build.number>
-		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
-		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
-	</properties>
+        <maven.build.timestamp.format>yyMMdd-HHmmss</maven.build.timestamp.format>
+        <build.number>${maven.build.timestamp}</build.number>
+        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
+        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
+    </properties>
 
     <modules>
+        <module>platform-logic</module>
         <module>ubuntu</module>
         <module>opendaylight</module>
     </modules>
diff --git a/ubuntu/pom.xml b/ubuntu/pom.xml
index 504d673..f74058b 100644
--- a/ubuntu/pom.xml
+++ b/ubuntu/pom.xml
@@ -5,13 +5,13 @@
 	<parent>
 		<groupId>org.onap.ccsdk.distribution</groupId>
 		<artifactId>distribution-root</artifactId>
-		<version>0.0.1-SNAPSHOT</version>
+		<version>0.1.0-SNAPSHOT</version>
 	</parent>
 
 	<modelVersion>4.0.0</modelVersion>
 	<packaging>pom</packaging>
 	<artifactId>distribution-ubuntu</artifactId>
-	<version>0.0.1-SNAPSHOT</version>
+	<version>0.1.0-SNAPSHOT</version>
 
 	<name>Distribution - ubuntu</name>
 	<description>Creates base ubuntu Docker container</description>