diff --git a/appc-directed-graph/appc-dgraph/provider/pom.xml b/appc-directed-graph/appc-dgraph/provider/pom.xml
index 4681121..7caa338 100644
--- a/appc-directed-graph/appc-dgraph/provider/pom.xml
+++ b/appc-directed-graph/appc-dgraph/provider/pom.xml
@@ -20,7 +20,7 @@
             <version>2.5</version>
         </dependency>
         <dependency>
-            <groupId>org.openecomp.sdnc.core</groupId>
+            <groupId>org.onap.ccsdk.sli.core</groupId>
             <artifactId>sli-provider</artifactId>
             <version>${sdnctl.sli.version}</version>
         </dependency>
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestCheckConfigStatus.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestCheckConfigStatus.java
index 631001b..7bddbc5 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestCheckConfigStatus.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestCheckConfigStatus.java
@@ -33,7 +33,7 @@
 import com.att.sdnctl.dgtestlibrary.DGTestCase;
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 import com.att.eelf.configuration.EELFLogger;
 import com.att.eelf.configuration.EELFManager;
 
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestCommonConfig.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestCommonConfig.java
index 17ad0d6..a1fde20 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestCommonConfig.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestCommonConfig.java
@@ -33,7 +33,7 @@
 import com.att.sdnctl.dgtestlibrary.DGTestCase;
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 
 public class TestCommonConfig /* extends AbstractDGTestCase */ {
 
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestConfigurationDocumentRequest.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestConfigurationDocumentRequest.java
index 2f90ac9..277803c 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestConfigurationDocumentRequest.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestConfigurationDocumentRequest.java
@@ -30,7 +30,7 @@
 import com.att.sdnctl.dgtestlibrary.DGTestCase;
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 
 public class TestConfigurationDocumentRequest /* extends AbstractDGTestCase */ {
 
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestConfigure.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestConfigure.java
index c3928f6..e4c6c10 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestConfigure.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestConfigure.java
@@ -33,7 +33,7 @@
 import com.att.sdnctl.dgtestlibrary.DGTestCase;
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 import com.att.eelf.configuration.EELFLogger;
 import com.att.eelf.configuration.EELFManager;
 
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestDownloadCliConfig.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestDownloadCliConfig.java
index 9c03da2..6c4373a 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestDownloadCliConfig.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestDownloadCliConfig.java
@@ -33,7 +33,7 @@
 import com.att.sdnctl.dgtestlibrary.DGTestCase;
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 
 public class TestDownloadCliConfig /* extends AbstractDGTestCase */ {
 
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestDownloadIsbcConfig.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestDownloadIsbcConfig.java
index 407c76e..8a211bb 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestDownloadIsbcConfig.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestDownloadIsbcConfig.java
@@ -32,7 +32,7 @@
 import com.att.sdnctl.dgtestlibrary.DGTestCase;
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 import com.att.eelf.configuration.EELFLogger;
 import com.att.eelf.configuration.EELFManager;
 
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGenerateConfig.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGenerateConfig.java
index adcfb9f..fe50c9f 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGenerateConfig.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGenerateConfig.java
@@ -45,9 +45,9 @@
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 import org.apache.sling.testing.mock.osgi.MockOsgi;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
-import org.openecomp.sdnc.sli.provider.ExecuteNodeExecutor;
-import org.openecomp.sdnc.sli.provider.SvcLogicAdaptorFactory;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.provider.ExecuteNodeExecutor;
+import org.onap.ccsdk.sli.core.sli.provider.SvcLogicAdaptorFactory;
 
 
 public class TestGenerateConfig /* extends AbstractDGTestCase */ {
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGenerateTemplateConfig.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGenerateTemplateConfig.java
index 93bf554..4447966 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGenerateTemplateConfig.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGenerateTemplateConfig.java
@@ -37,7 +37,7 @@
 import com.att.sdnctl.dgtestlibrary.DGTestCase;
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 
 public class TestGenerateTemplateConfig /* extends AbstractDGTestCase */ {
 	private static final EELFLogger logger = EELFManager.getInstance().getLogger(TestGenerateTemplateConfig.class);
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetAaiInfo.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetAaiInfo.java
index 5dd9ec3..0597367 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetAaiInfo.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetAaiInfo.java
@@ -35,7 +35,7 @@
 import com.att.sdnctl.dgtestlibrary.DGTestCase;
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 
 
 public class TestGetAaiInfo /* extends AbstractDGTestCase */{
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetConfigParams.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetConfigParams.java
index 6926c32..61a409c 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetConfigParams.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetConfigParams.java
@@ -33,7 +33,7 @@
 import com.att.sdnctl.dgtestlibrary.DGTestCase;
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 
 
 public class TestGetConfigParams /* extends AbstractDGTestCase */ {
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetDeviceRunningConfig.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetDeviceRunningConfig.java
index 8a5d3d5..f7fafc0 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetDeviceRunningConfig.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetDeviceRunningConfig.java
@@ -32,7 +32,7 @@
 import com.att.sdnctl.dgtestlibrary.DGTestCase;
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 
 public class TestGetDeviceRunningConfig /* extends AbstractDGTestCase */ {
 	private static final EELFLogger logger = EELFManager.getInstance().getLogger(TestGetConfigParams.class);
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetVfModuleInfo.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetVfModuleInfo.java
index 3e2f34c..9619276 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetVfModuleInfo.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestGetVfModuleInfo.java
@@ -45,9 +45,9 @@
 import com.att.sdnctl.dgtestlibrary.DGTestCase;
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
-import org.openecomp.sdnc.sli.provider.ExecuteNodeExecutor;
-import org.openecomp.sdnc.sli.provider.SvcLogicAdaptorFactory;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.provider.ExecuteNodeExecutor;
+import org.onap.ccsdk.sli.core.sli.provider.SvcLogicAdaptorFactory;
 
 
 public class TestGetVfModuleInfo /* extends AbstractDGTestCase */ {
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestProcessParameterDefinition.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestProcessParameterDefinition.java
index 20d04fd..ba7574a 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestProcessParameterDefinition.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestProcessParameterDefinition.java
@@ -35,7 +35,7 @@
 import com.att.sdnctl.dgtestlibrary.DGTestCase;
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 
 
 public class TestProcessParameterDefinition /* extends AbstractDGTestCase */ {
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestPublishConfiguration.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestPublishConfiguration.java
index 357896e..6764aef 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestPublishConfiguration.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestPublishConfiguration.java
@@ -39,9 +39,9 @@
 
 import com.att.eelf.configuration.EELFLogger;
 import com.att.eelf.configuration.EELFManager;
-import org.openecomp.sdnc.sli.SvcLogicContext;
-import org.openecomp.sdnc.sli.provider.ExecuteNodeExecutor;
-import org.openecomp.sdnc.sli.provider.SvcLogicAdaptorFactory;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.provider.ExecuteNodeExecutor;
+import org.onap.ccsdk.sli.core.sli.provider.SvcLogicAdaptorFactory;
 
 
 public class TestPublishConfiguration  {
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestSaveRunningConfig.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestSaveRunningConfig.java
index d093811..67f97d9 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestSaveRunningConfig.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestSaveRunningConfig.java
@@ -45,9 +45,9 @@
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 import org.apache.sling.testing.mock.osgi.MockOsgi;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
-import org.openecomp.sdnc.sli.provider.ExecuteNodeExecutor;
-import org.openecomp.sdnc.sli.provider.SvcLogicAdaptorFactory;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.provider.ExecuteNodeExecutor;
+import org.onap.ccsdk.sli.core.sli.provider.SvcLogicAdaptorFactory;
 
 
 public class TestSaveRunningConfig /* extends AbstractDGTestCase */{
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestSetStatus.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestSetStatus.java
index 76ae203..2d0c401 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestSetStatus.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestSetStatus.java
@@ -45,9 +45,9 @@
 import com.att.sdnctl.dgtestlibrary.DGTestCase;
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
-import org.openecomp.sdnc.sli.provider.ExecuteNodeExecutor;
-import org.openecomp.sdnc.sli.provider.SvcLogicAdaptorFactory;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.provider.ExecuteNodeExecutor;
+import org.onap.ccsdk.sli.core.sli.provider.SvcLogicAdaptorFactory;
 
 
 public class TestSetStatus /* extends AbstractDGTestCase */ {
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestUpdateAaiInfo.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestUpdateAaiInfo.java
index c5fed94..b8b66b7 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestUpdateAaiInfo.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/TestUpdateAaiInfo.java
@@ -46,9 +46,9 @@
 import com.att.sdnctl.dgtestlibrary.DGTestCase;
 import com.att.sdnctl.dgtestlibrary.GraphKey;
 */
-import org.openecomp.sdnc.sli.SvcLogicContext;
-import org.openecomp.sdnc.sli.provider.ExecuteNodeExecutor;
-import org.openecomp.sdnc.sli.provider.SvcLogicAdaptorFactory;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.provider.ExecuteNodeExecutor;
+import org.onap.ccsdk.sli.core.sli.provider.SvcLogicAdaptorFactory;
 
 
 public class TestUpdateAaiInfo /* extends AbstractDGTestCase */ {
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/mock/instance/MockAaiResource.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/mock/instance/MockAaiResource.java
index 9a271fa..3e6822e 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/mock/instance/MockAaiResource.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/mock/instance/MockAaiResource.java
@@ -26,11 +26,11 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import org.openecomp.sdnc.sli.SvcLogicAdaptor;
-import org.openecomp.sdnc.sli.SvcLogicContext;
-import org.openecomp.sdnc.sli.SvcLogicException;
-import org.openecomp.sdnc.sli.SvcLogicResource;
-import org.openecomp.sdnc.sli.SvcLogicResource.QueryStatus;
+import org.onap.ccsdk.sli.core.sli.SvcLogicAdaptor;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.SvcLogicException;
+import org.onap.ccsdk.sli.core.sli.SvcLogicResource;
+import org.onap.ccsdk.sli.core.sli.SvcLogicResource.QueryStatus;
 import static org.junit.Assert.*;
 
 public class MockAaiResource implements SvcLogicResource {
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/mock/instance/MockConfigureNodeExecutor.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/mock/instance/MockConfigureNodeExecutor.java
index bcfd613..459f6a2 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/mock/instance/MockConfigureNodeExecutor.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/mock/instance/MockConfigureNodeExecutor.java
@@ -23,8 +23,8 @@
 
 import java.util.Map;
 
-import org.openecomp.sdnc.sli.SvcLogicAdaptor;
-import org.openecomp.sdnc.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.SvcLogicAdaptor;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 
 public class MockConfigureNodeExecutor implements SvcLogicAdaptor{
 
diff --git a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/mock/instance/MockSvcLogicJavaPlugin.java b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/mock/instance/MockSvcLogicJavaPlugin.java
index 9bf7e41..4995836 100644
--- a/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/mock/instance/MockSvcLogicJavaPlugin.java
+++ b/appc-directed-graph/appc-dgraph/provider/src/test/java/org/openecomp/appc/dg/mock/instance/MockSvcLogicJavaPlugin.java
@@ -28,9 +28,9 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import org.openecomp.sdnc.sli.SvcLogicContext;
-import org.openecomp.sdnc.sli.SvcLogicException;
-import org.openecomp.sdnc.sli.SvcLogicJavaPlugin;
+import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
+import org.onap.ccsdk.sli.core.sli.SvcLogicException;
+import org.onap.ccsdk.sli.core.sli.SvcLogicJavaPlugin;
 
 public class MockSvcLogicJavaPlugin implements SvcLogicJavaPlugin{
     private final static Logger logger = LoggerFactory.getLogger(MockSvcLogicJavaPlugin.class);
diff --git a/appc-directed-graph/dg-loader/provider/pom.xml b/appc-directed-graph/dg-loader/provider/pom.xml
index c074ca6..65be0dc 100644
--- a/appc-directed-graph/dg-loader/provider/pom.xml
+++ b/appc-directed-graph/dg-loader/provider/pom.xml
@@ -36,7 +36,7 @@
 
     <dependencies>
         <dependency>
-            <groupId>org.openecomp.sdnc.core</groupId>
+            <groupId>org.onap.ccsdk.sli.core</groupId>
             <artifactId>sli-provider</artifactId>
             <version>${sdnctl.sli.version}</version>
             <scope>compile</scope>
@@ -75,7 +75,7 @@
        <dependency>
 		<groupId>org.powermock</groupId>
                 <artifactId>powermock-api-mockito</artifactId>
-                <version>1.6.2</version>
+                <version>1.6.4</version>
                 <scope>test</scope>
         </dependency>
         <dependency>
diff --git a/appc-directed-graph/dg-loader/provider/src/main/java/org/openecomp/sdnc/dg/loader/DGXMLActivate.java b/appc-directed-graph/dg-loader/provider/src/main/java/org/openecomp/sdnc/dg/loader/DGXMLActivate.java
index ac3f639..6af4477 100644
--- a/appc-directed-graph/dg-loader/provider/src/main/java/org/openecomp/sdnc/dg/loader/DGXMLActivate.java
+++ b/appc-directed-graph/dg-loader/provider/src/main/java/org/openecomp/sdnc/dg/loader/DGXMLActivate.java
@@ -30,9 +30,9 @@
 
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.lang.StringUtils;
-import org.openecomp.sdnc.sli.SvcLogicGraph;
-import org.openecomp.sdnc.sli.SvcLogicStore;
-import org.openecomp.sdnc.sli.SvcLogicStoreFactory;
+import org.onap.ccsdk.sli.core.sli.SvcLogicGraph;
+import org.onap.ccsdk.sli.core.sli.SvcLogicStore;
+import org.onap.ccsdk.sli.core.sli.SvcLogicStoreFactory;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
diff --git a/appc-directed-graph/dg-loader/provider/src/main/java/org/openecomp/sdnc/dg/loader/DGXMLLoad.java b/appc-directed-graph/dg-loader/provider/src/main/java/org/openecomp/sdnc/dg/loader/DGXMLLoad.java
index 13e5e29..1b6116c 100644
--- a/appc-directed-graph/dg-loader/provider/src/main/java/org/openecomp/sdnc/dg/loader/DGXMLLoad.java
+++ b/appc-directed-graph/dg-loader/provider/src/main/java/org/openecomp/sdnc/dg/loader/DGXMLLoad.java
@@ -33,10 +33,10 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import org.openecomp.sdnc.sli.SvcLogicException;
-import org.openecomp.sdnc.sli.SvcLogicParser;
-import org.openecomp.sdnc.sli.SvcLogicStore;
-import org.openecomp.sdnc.sli.SvcLogicStoreFactory;
+import org.onap.ccsdk.sli.core.sli.SvcLogicException;
+import org.onap.ccsdk.sli.core.sli.SvcLogicParser;
+import org.onap.ccsdk.sli.core.sli.SvcLogicStore;
+import org.onap.ccsdk.sli.core.sli.SvcLogicStoreFactory;
 
 public class DGXMLLoad {
     private final static Logger logger = LoggerFactory.getLogger(DGXMLLoad.class);
diff --git a/appc-directed-graph/dg-loader/provider/src/main/java/org/openecomp/sdnc/dg/loader/DGXMLLoadNActivate.java b/appc-directed-graph/dg-loader/provider/src/main/java/org/openecomp/sdnc/dg/loader/DGXMLLoadNActivate.java
index ae7156c..d076216 100644
--- a/appc-directed-graph/dg-loader/provider/src/main/java/org/openecomp/sdnc/dg/loader/DGXMLLoadNActivate.java
+++ b/appc-directed-graph/dg-loader/provider/src/main/java/org/openecomp/sdnc/dg/loader/DGXMLLoadNActivate.java
@@ -33,11 +33,11 @@
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import org.openecomp.sdnc.sli.SvcLogicException;
-import org.openecomp.sdnc.sli.SvcLogicGraph;
-import org.openecomp.sdnc.sli.SvcLogicParser;
-import org.openecomp.sdnc.sli.SvcLogicStore;
-import org.openecomp.sdnc.sli.SvcLogicStoreFactory;
+import org.onap.ccsdk.sli.core.sli.SvcLogicException;
+import org.onap.ccsdk.sli.core.sli.SvcLogicGraph;
+import org.onap.ccsdk.sli.core.sli.SvcLogicParser;
+import org.onap.ccsdk.sli.core.sli.SvcLogicStore;
+import org.onap.ccsdk.sli.core.sli.SvcLogicStoreFactory;
 
 public class DGXMLLoadNActivate {
     private final static Logger logger = LoggerFactory.getLogger(DGXMLLoadNActivate.class);
diff --git a/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/DGLoaderTest.java b/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/DGLoaderTest.java
index fea884c..084929b 100644
--- a/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/DGLoaderTest.java
+++ b/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/DGLoaderTest.java
@@ -37,10 +37,10 @@
 import org.junit.Rule;
 import org.junit.Test;
 import org.mockito.Mockito;
-import org.openecomp.sdnc.sli.ConfigurationException;
-import org.openecomp.sdnc.sli.SvcLogicException;
-import org.openecomp.sdnc.sli.SvcLogicStore;
-import org.openecomp.sdnc.sli.SvcLogicStoreFactory;
+import org.onap.ccsdk.sli.core.sli.ConfigurationException;
+import org.onap.ccsdk.sli.core.sli.SvcLogicException;
+import org.onap.ccsdk.sli.core.sli.SvcLogicStore;
+import org.onap.ccsdk.sli.core.sli.SvcLogicStoreFactory;
 import org.osgi.framework.BundleContext;
 import org.powermock.reflect.Whitebox;
 import org.powermock.*;
diff --git a/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockDGXMLActivate.java b/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockDGXMLActivate.java
index 5143120..41f1d09 100644
--- a/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockDGXMLActivate.java
+++ b/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockDGXMLActivate.java
@@ -24,7 +24,7 @@
 
 package org.openecomp.sdnc.dg.loader;
 
-import org.openecomp.sdnc.sli.SvcLogicStore;
+import org.onap.ccsdk.sli.core.sli.SvcLogicStore;
 
 public class MockDGXMLActivate extends DGXMLActivate {
     private final static SvcLogicStore storeChild=MockSvcLogicFactory.getMockSvcLogicStore();;
diff --git a/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockDGXMLLoad.java b/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockDGXMLLoad.java
index 56cabbf..27336d3 100644
--- a/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockDGXMLLoad.java
+++ b/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockDGXMLLoad.java
@@ -25,7 +25,7 @@
 package org.openecomp.sdnc.dg.loader;
 
 import org.mockito.internal.util.reflection.Whitebox;
-import org.openecomp.sdnc.sli.SvcLogicStore;
+import org.onap.ccsdk.sli.core.sli.SvcLogicStore;
 
 public class MockDGXMLLoad extends DGXMLLoad{
 
diff --git a/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockDGXMLLoadNActivate.java b/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockDGXMLLoadNActivate.java
index 266f1cd..f60e6ab 100644
--- a/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockDGXMLLoadNActivate.java
+++ b/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockDGXMLLoadNActivate.java
@@ -24,7 +24,7 @@
 
 package org.openecomp.sdnc.dg.loader;
 
-import org.openecomp.sdnc.sli.SvcLogicStore;
+import org.onap.ccsdk.sli.core.sli.SvcLogicStore;
 
 public class MockDGXMLLoadNActivate extends DGXMLLoadNActivate {
     private final static SvcLogicStore storeChild=MockSvcLogicFactory.getMockSvcLogicStore();;
diff --git a/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockSvcLogicDblibStore.java b/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockSvcLogicDblibStore.java
index ab96ef7..fdfe0ab 100644
--- a/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockSvcLogicDblibStore.java
+++ b/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockSvcLogicDblibStore.java
@@ -26,10 +26,10 @@
 
 import java.util.Properties;
 
-import org.openecomp.sdnc.sli.SvcLogicDblibStore;
-import org.openecomp.sdnc.sli.SvcLogicException;
-import org.openecomp.sdnc.sli.SvcLogicGraph;
-import org.openecomp.sdnc.sli.SvcLogicStore;
+import org.onap.ccsdk.sli.core.sli.SvcLogicDblibStore;
+import org.onap.ccsdk.sli.core.sli.SvcLogicException;
+import org.onap.ccsdk.sli.core.sli.SvcLogicGraph;
+import org.onap.ccsdk.sli.core.sli.SvcLogicStore;
 
 public class MockSvcLogicDblibStore implements SvcLogicStore {
 
diff --git a/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockSvcLogicFactory.java b/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockSvcLogicFactory.java
index e38c64e..82f75a0 100644
--- a/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockSvcLogicFactory.java
+++ b/appc-directed-graph/dg-loader/provider/src/test/java/org/openecomp/sdnc/dg/loader/MockSvcLogicFactory.java
@@ -24,9 +24,9 @@
 
 package org.openecomp.sdnc.dg.loader;
 
-import org.openecomp.sdnc.sli.SvcLogicStore;
-import org.openecomp.sdnc.sli.SvcLogicStoreFactory;
-import org.openecomp.sdnc.sli.SvcLogicDblibStore;
+import org.onap.ccsdk.sli.core.sli.SvcLogicStore;
+import org.onap.ccsdk.sli.core.sli.SvcLogicStoreFactory;
+import org.onap.ccsdk.sli.core.sli.SvcLogicDblibStore;
 
 public class MockSvcLogicFactory extends SvcLogicStoreFactory {
     static SvcLogicStore getMockSvcLogicStore() {
diff --git a/appc-directed-graph/dg-loader/provider/src/test/resources/json/Appc_UniTest.json b/appc-directed-graph/dg-loader/provider/src/test/resources/json/Appc_UniTest.json
index 2a6e49b..b56c8f6 100644
--- a/appc-directed-graph/dg-loader/provider/src/test/resources/json/Appc_UniTest.json
+++ b/appc-directed-graph/dg-loader/provider/src/test/resources/json/Appc_UniTest.json
@@ -1 +1,64 @@
-[{"id":"1606180e.6254c","type":"dgstart","name":"DGSTART","outputs":1,"x":494.75,"y":149.75,"z":"7174441c.9fb7f4","wires":[["f650067e.2ad7e"]]},{"id":"f650067e.2ad7e","type":"service-logic","name":"Appc 4.0.0","module":"Appc","version":"4.0.0","comments":"","xml":"<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='Appc' version='4.0.0'>","outputs":1,"x":642.75,"y":151.75,"z":"7174441c.9fb7f4","wires":[["10b2117c.ee118f"]]},{"id":"e928ee64.3762c","type":"block","name":"block","xml":"<block>\n","atomic":"false","comments":"","outputs":1,"x":952.75,"y":145.75,"z":"7174441c.9fb7f4","wires":[["342ce050.4a2fe8"]]},{"id":"342ce050.4a2fe8","type":"returnSuccess","name":"return success","xml":"<return status='success'>\n\n","comments":"","x":1115.75,"y":146.75,"z":"7174441c.9fb7f4","wires":[]},{"id":"10b2117c.ee118f","type":"method","name":"unitTest","xml":"<method rpc='unitTestDG' mode='sync'>\n","comments":"","outputs":1,"x":815.75,"y":147.75,"z":"7174441c.9fb7f4","wires":[["e928ee64.3762c"]]}]
+[{
+  "id": "1606180e.6254c",
+  "type": "dgstart",
+  "name": "DGSTART",
+  "outputs": 1,
+  "x": 494.75,
+  "y": 149.75,
+  "z": "7174441c.9fb7f4",
+  "wires": [
+    ["f650067e.2ad7e"]
+  ]
+}, {
+  "id": "f650067e.2ad7e",
+  "type": "service-logic",
+  "name": "Appc 4.0.0",
+  "module": "Appc",
+  "version": "4.0.0",
+  "comments": "",
+  "xml": "<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='Appc' version='4.0.0'>",
+  "outputs": 1,
+  "x": 642.75,
+  "y": 151.75,
+  "z": "7174441c.9fb7f4",
+  "wires": [
+    ["10b2117c.ee118f"]
+  ]
+}, {
+  "id": "e928ee64.3762c",
+  "type": "block",
+  "name": "block",
+  "xml": "<block>\n",
+  "atomic": "false",
+  "comments": "",
+  "outputs": 1,
+  "x": 952.75,
+  "y": 145.75,
+  "z": "7174441c.9fb7f4",
+  "wires": [
+    ["342ce050.4a2fe8"]
+  ]
+}, {
+  "id": "342ce050.4a2fe8",
+  "type": "returnSuccess",
+  "name": "return success",
+  "xml": "<return status='success'>\n\n",
+  "comments": "",
+  "x": 1115.75,
+  "y": 146.75,
+  "z": "7174441c.9fb7f4",
+  "wires": []
+}, {
+  "id": "10b2117c.ee118f",
+  "type": "method",
+  "name": "unitTest",
+  "xml": "<method rpc='unitTestDG' mode='sync'>\n",
+  "comments": "",
+  "outputs": 1,
+  "x": 815.75,
+  "y": 147.75,
+  "z": "7174441c.9fb7f4",
+  "wires": [
+    ["e928ee64.3762c"]
+  ]
+}]
diff --git a/appc-directed-graph/dg-loader/provider/src/test/resources/xml/Appc_UniTest.xml b/appc-directed-graph/dg-loader/provider/src/test/resources/xml/Appc_UniTest.xml
index 6eca104..f3615da 100644
--- a/appc-directed-graph/dg-loader/provider/src/test/resources/xml/Appc_UniTest.xml
+++ b/appc-directed-graph/dg-loader/provider/src/test/resources/xml/Appc_UniTest.xml
@@ -1,4 +1,4 @@
-<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='Appc' version='4.0.0'><method rpc='unitTestDG' mode='sync'>
+<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='Appc' version='4.0.0'><method rpc='unitTestDG' mode='sync'>
 <block>
 <return status='success'>
 
