RESTCONF fixes for dynmaic config integration testing

Change-Id: Iebfa1dbbe3fb2f9127cdf1d9a7a4ad80aa71e3be
diff --git a/apps/restconf/restconfmgr/src/main/java/org/onosproject/restconf/restconfmanager/RestconfManager.java b/apps/restconf/restconfmgr/src/main/java/org/onosproject/restconf/restconfmanager/RestconfManager.java
index 6397cba..73044fb 100644
--- a/apps/restconf/restconfmgr/src/main/java/org/onosproject/restconf/restconfmanager/RestconfManager.java
+++ b/apps/restconf/restconfmgr/src/main/java/org/onosproject/restconf/restconfmanager/RestconfManager.java
@@ -25,8 +25,14 @@
 import org.apache.felix.scr.annotations.ReferenceCardinality;
 import org.apache.felix.scr.annotations.Service;
 import org.glassfish.jersey.server.ChunkedOutput;
-import org.onlab.osgi.DefaultServiceDirectory;
-import org.onosproject.event.ListenerTracker;
+import org.onosproject.config.DynamicConfigService;
+import org.onosproject.config.FailedException;
+import org.onosproject.config.Filter;
+import org.onosproject.restconf.api.RestconfException;
+import org.onosproject.restconf.api.RestconfService;
+import org.onosproject.yang.model.DataNode;
+import org.onosproject.yang.model.ResourceData;
+import org.onosproject.yang.model.ResourceId;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -39,20 +45,12 @@
 import java.util.concurrent.Executors;
 import java.util.concurrent.LinkedBlockingQueue;
 import java.util.concurrent.ThreadPoolExecutor;
+
 import static java.util.concurrent.TimeUnit.SECONDS;
 import static javax.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR;
-
-import org.onosproject.config.FailedException;
-import org.onosproject.config.DynamicConfigService;
-import org.onosproject.config.Filter;
-import org.onosproject.restconf.api.RestconfException;
-import org.onosproject.restconf.api.RestconfService;
-import org.onosproject.yang.model.ResourceData;
-import org.onosproject.yang.model.ResourceId;
-import org.onosproject.yang.model.DataNode;
-import static org.onosproject.restconf.utils.RestconfUtils.convertUriToRid;
-import static org.onosproject.restconf.utils.RestconfUtils.convertJsonToDataNode;
 import static org.onosproject.restconf.utils.RestconfUtils.convertDataNodeToJson;
+import static org.onosproject.restconf.utils.RestconfUtils.convertJsonToDataNode;
+import static org.onosproject.restconf.utils.RestconfUtils.convertUriToRid;
 
 /*
  * ONOS RESTCONF application. The RESTCONF Manager
@@ -87,11 +85,7 @@
     private final Logger log = LoggerFactory.getLogger(getClass());
 
     @Reference(cardinality = ReferenceCardinality.MANDATORY_UNARY)
-
-    private static final DynamicConfigService  DYNAMIC_CONFIG_SERVICE =
-            DefaultServiceDirectory.getService(DynamicConfigService.class);
-
-    private ListenerTracker listeners;
+    protected DynamicConfigService dynamicConfigService;
 
     private ConcurrentMap<String, BlockingQueue<ObjectNode>> eventQueueList =
             new ConcurrentHashMap<>();
@@ -122,7 +116,7 @@
         Filter filter = new Filter();
         DataNode dataNode;
         try {
-            dataNode = DYNAMIC_CONFIG_SERVICE.readNode(rid, filter);
+            dataNode = dynamicConfigService.readNode(rid, filter);
         } catch (FailedException e) {
             log.error("ERROR: DynamicConfigService: ", e);
             throw new RestconfException("ERROR: DynamicConfigService",
@@ -144,7 +138,7 @@
         }
         DataNode dataNode = dataNodeList.get(0);
         try {
-            DYNAMIC_CONFIG_SERVICE.createNode(rid, dataNode);
+            dynamicConfigService.createNode(rid, dataNode);
         } catch (FailedException e) {
             log.error("ERROR: DynamicConfigService: ", e);
             throw new RestconfException("ERROR: DynamicConfigService",
@@ -163,7 +157,7 @@
             throws RestconfException {
         ResourceId rid = convertUriToRid(uri);
         try {
-            DYNAMIC_CONFIG_SERVICE.deleteNode(rid);
+            dynamicConfigService.deleteNode(rid);
         } catch (FailedException e) {
             log.error("ERROR: DynamicConfigService: ", e);
             throw new RestconfException("ERROR: DynamicConfigService",
diff --git a/apps/restconf/utils/src/main/java/org/onosproject/restconf/utils/RestconfUtils.java b/apps/restconf/utils/src/main/java/org/onosproject/restconf/utils/RestconfUtils.java
index 2150e1d..203dcbb 100644
--- a/apps/restconf/utils/src/main/java/org/onosproject/restconf/utils/RestconfUtils.java
+++ b/apps/restconf/utils/src/main/java/org/onosproject/restconf/utils/RestconfUtils.java
@@ -20,21 +20,22 @@
 import com.fasterxml.jackson.databind.node.ObjectNode;
 import org.apache.commons.io.IOUtils;
 import org.onlab.osgi.DefaultServiceDirectory;
-import java.io.IOException;
-import java.io.InputStream;
-
-import org.onosproject.restconf.utils.exceptions.RestconfUtilsException;
 import org.onosproject.restconf.api.RestconfException;
-import org.onosproject.yang.runtime.CompositeStream;
-import org.onosproject.yang.runtime.CompositeData;
-import org.onosproject.yang.runtime.YangRuntimeService;
-import org.onosproject.yang.runtime.DefaultCompositeStream;
-import org.onosproject.yang.runtime.DefaultCompositeData;
-import org.onosproject.yang.runtime.DefaultResourceData;
-import org.onosproject.yang.runtime.RuntimeContext;
+import org.onosproject.restconf.utils.exceptions.RestconfUtilsException;
+import org.onosproject.yang.model.DataNode;
 import org.onosproject.yang.model.ResourceData;
 import org.onosproject.yang.model.ResourceId;
-import org.onosproject.yang.model.DataNode;
+import org.onosproject.yang.runtime.CompositeData;
+import org.onosproject.yang.runtime.CompositeStream;
+import org.onosproject.yang.runtime.DefaultCompositeData;
+import org.onosproject.yang.runtime.DefaultCompositeStream;
+import org.onosproject.yang.runtime.DefaultResourceData;
+import org.onosproject.yang.runtime.DefaultRuntimeContext;
+import org.onosproject.yang.runtime.RuntimeContext;
+import org.onosproject.yang.runtime.YangRuntimeService;
+
+import java.io.IOException;
+import java.io.InputStream;
 
 import static javax.ws.rs.core.Response.Status.INTERNAL_SERVER_ERROR;
 
@@ -59,7 +60,7 @@
     /**
      * Converts an input stream to JSON objectNode.
      *
-     * @param  inputStream the InputStream from Resource Data
+     * @param inputStream the InputStream from Resource Data
      * @return JSON representation of the data resource
      */
     public static ObjectNode convertInputStreamToObjectNode(InputStream inputStream) {
@@ -76,7 +77,7 @@
     /**
      * Convert ObjectNode to InputStream.
      *
-     * @param  rootNode JSON representation of the data resource
+     * @param rootNode JSON representation of the data resource
      * @return the InputStream from Resource Data
      */
     public static InputStream convertObjectNodeToInputStream(ObjectNode rootNode) {
@@ -93,7 +94,7 @@
     /**
      * Convert URI to ResourceId.
      *
-     * @param  uri URI of the data resource
+     * @param uri URI of the data resource
      * @return resource identifier
      */
     public static ResourceId convertUriToRid(String uri) {
@@ -104,13 +105,13 @@
     /**
      * Convert URI and ObjectNode to ResourceData.
      *
-     * @param  uri URI of the data resource
-     * @param  rootNode JSON representation of the data resource
+     * @param uri      URI of the data resource
+     * @param rootNode JSON representation of the data resource
      * @return represents type of node in data store
      */
     public static ResourceData convertJsonToDataNode(String uri,
-                                                    ObjectNode rootNode) {
-        RuntimeContext.Builder runtimeContextBuilder = null;
+                                                     ObjectNode rootNode) {
+        RuntimeContext.Builder runtimeContextBuilder = new DefaultRuntimeContext.Builder();
         runtimeContextBuilder.setDataFormat(JSON_FORMAT);
         RuntimeContext context = runtimeContextBuilder.build();
         InputStream jsonData = null;
@@ -127,12 +128,12 @@
     /**
      * Convert Resource Id and Data Node to Json ObjectNode.
      *
-     * @param  rid resource identifier
-     * @param  dataNode represents type of node in data store
+     * @param rid      resource identifier
+     * @param dataNode represents type of node in data store
      * @return JSON representation of the data resource
      */
     public static ObjectNode convertDataNodeToJson(ResourceId rid, DataNode dataNode) {
-        RuntimeContext.Builder runtimeContextBuilder = null;
+        RuntimeContext.Builder runtimeContextBuilder = DefaultRuntimeContext.builder();
         runtimeContextBuilder.setDataFormat(JSON_FORMAT);
         RuntimeContext context = runtimeContextBuilder.build();
         DefaultResourceData.Builder resourceDataBuilder = DefaultResourceData.builder();