Issue fixes for Restconf discovery node 69/69269/1
authorjanani b <janani.b@huawei.com>
Thu, 27 Sep 2018 09:56:39 +0000 (15:26 +0530)
committerjanani b <janani.b@huawei.com>
Thu, 27 Sep 2018 09:56:39 +0000 (15:26 +0530)
i) Adding constructor param
ii) execute dg param order fix
iii) Constants value fix.

Issue-ID: CCSDK-325

Change-Id: I5aaf4b66b3982e4a1d3736362be3a5e8d7ab6d00
Signed-off-by: janani b <janani.b@huawei.com>
restconf-client/provider/src/main/java/org/onap/ccsdk/sli/plugins/restconfdiscovery/EventProcessor.java
restconf-client/provider/src/main/java/org/onap/ccsdk/sli/plugins/restconfdiscovery/RestconfDiscoveryNode.java
restconf-client/provider/src/main/java/org/onap/ccsdk/sli/plugins/restconfdiscovery/SvcLogicGraphInfo.java
restconf-client/provider/src/main/resources/org/opendaylight/blueprint/restconf-client-blueprint.xml
restconf-client/provider/src/test/java/org/onap/ccsdk/sli/plugins/restconfdiscovery/TestRestconfDiscoveryNode.java

index aae8081..e46e47a 100644 (file)
@@ -28,17 +28,18 @@ import org.slf4j.LoggerFactory;
 import java.util.Map;
 
 import static org.onap.ccsdk.sli.plugins.prop.JsonParser.convertToProperties;
+import static org.slf4j.LoggerFactory.getLogger;
 
 /**
  * Processes the events from event queue and executes callback DG.
  */
 class EventProcessor implements Runnable {
-    private static final Logger log = LoggerFactory.getLogger(EventProcessor.class);
+
+    private static final Logger log = getLogger(EventProcessor.class);
     private RestconfDiscoveryNode node;
 
-    private static final String EVENT_SUBSCRIPTION_ID = "ietf-notification:notification" +
-            ".ietf-yang-push:push-change-update" +
-            ".subscription-id";
+    private static final String EVENT_SUBSCRIPTION_ID = "ietf-restconf:" +
+            "notification.ietf-yang-push:push-change-update.subscription-id";
 
     public EventProcessor(RestconfDiscoveryNode node) {
         this.node = node;
index f5366a5..111d628 100644 (file)
@@ -26,7 +26,6 @@ import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 import org.onap.ccsdk.sli.core.sli.SvcLogicException;
 import org.onap.ccsdk.sli.plugins.restconfapicall.RestconfApiCallNode;
 import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 
 import javax.ws.rs.client.Client;
 import javax.ws.rs.client.ClientBuilder;
@@ -37,12 +36,15 @@ import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
 import java.util.concurrent.LinkedBlockingQueue;
 
+import static org.slf4j.LoggerFactory.getLogger;
+
 /**
  * Representation of a plugin to subscribe for notification and then
  * to handle the received notifications.
  */
 public class RestconfDiscoveryNode implements SvcLogicDiscoveryPlugin {
-    private static final Logger log = LoggerFactory.getLogger(RestconfDiscoveryNode.class);
+
+    private static final Logger log = getLogger(RestconfDiscoveryNode.class);
 
     private ExecutorService executor = Executors.newCachedThreadPool();
     private Map<String, PersistentConnection> runnableInfo = new ConcurrentHashMap<>();
@@ -54,15 +56,19 @@ public class RestconfDiscoveryNode implements SvcLogicDiscoveryPlugin {
     private static final String SUBSCRIBER_ID = "subscriberId";
     private static final String RESPONSE_CODE = "response-code";
     private static final String RESPONSE_PREFIX = "responsePrefix";
-    private static final String OUTPUT_IDENTIFIER = "ietf-subscribed-notifications:output.identifier";
+    private static final String OUTPUT_IDENTIFIER = "ietf-subscribed-notif" +
+            "ications:establish-subscription.output.identifier";
     private static final String RESPONSE_CODE_200 = "200";
     private static final String SSE_URL = "sseConnectURL";
 
     /**
-     * Creates an instance of RestconfDiscoveryNode and
-     * starts processing of event.
+     * Creates an instance of RestconfDiscoveryNode and starts processing of
+     * event.
+     *
+     * @param r restconf api call node
      */
-    public RestconfDiscoveryNode() {
+    public RestconfDiscoveryNode(RestconfApiCallNode r) {
+        this.restconfApiCallNode = r;
         ExecutorService e = Executors.newFixedThreadPool(20);
         EventProcessor p = new EventProcessor(this);
         for (int i = 0; i < 20; ++i) {
index 725826b..1cc6261 100644 (file)
@@ -142,7 +142,7 @@ class SvcLogicGraphInfo {
 
         SvcLogicStore store = service.getStore();
         if (store != null) {
-            SvcLogicGraph subGraph = store.fetch(module, rpc, version, mode);
+            SvcLogicGraph subGraph = store.fetch(module, rpc, mode, version);
             if (subGraph != null) {
                 ctx.setAttribute("subGraph", subGraph.toString());
                 service.execute(subGraph, ctx);
index c8f2dc4..45c335b 100755 (executable)
@@ -32,7 +32,9 @@
         <argument ref="restapiCallNodeProvider"/>
     </bean>
 
-    <bean id="restconfDiscoveryNodeProvider" class="org.onap.ccsdk.sli.plugins.restconfdiscovery.RestconfDiscoveryNode" />
+    <bean id="restconfDiscoveryNodeProvider" class="org.onap.ccsdk.sli.plugins.restconfdiscovery.RestconfDiscoveryNode" >
+        <argument ref="restconfapiCallNodeProvider"/>
+    </bean>
 
     <service ref="restconfapiCallNodeProvider">
         <interfaces>
index db878f0..b2094ca 100644 (file)
 
 package org.onap.ccsdk.sli.plugins.restconfdiscovery;
 
-import java.net.URI;
-import java.util.HashMap;
-import java.util.Map;
-
 import org.glassfish.jersey.grizzly2.httpserver.GrizzlyHttpServerFactory;
 import org.glassfish.jersey.media.sse.SseFeature;
 import org.glassfish.jersey.server.ResourceConfig;
 import org.junit.Test;
 import org.onap.ccsdk.sli.core.sli.SvcLogicContext;
 import org.onap.ccsdk.sli.core.sli.SvcLogicException;
+import org.onap.ccsdk.sli.plugins.restapicall.RestapiCallNode;
+import org.onap.ccsdk.sli.plugins.restconfapicall.RestconfApiCallNode;
+
+import java.net.URI;
+import java.util.HashMap;
+import java.util.Map;
+
 import static org.hamcrest.MatcherAssert.assertThat;
 import static org.hamcrest.core.Is.is;
 
@@ -47,13 +50,15 @@ public class TestRestconfDiscoveryNode {
         ctx.setAttribute("prop.encoding-json", "encoding-json");
         ctx.setAttribute("restapi-result.response-code", "200");
         ctx.setAttribute("restapi-result.ietf-subscribed-notifications" +
-                                 ":output.identifier", "100");
+                                 ":establish-subscription.output.identifier",
+                         "100");
 
         Map<String, String> p = new HashMap<>();
         p.put("sseConnectURL", "http://localhost:8080/events");
         p.put("subscriberId", "networkId");
         p.put("responsePrefix", "restapi-result");
-        RestconfDiscoveryNode rdn = new RestconfDiscoveryNode();
+        RestconfDiscoveryNode rdn = new RestconfDiscoveryNode(
+                new RestconfApiCallNode(new RestapiCallNode()));
         rdn.establishPersistentConnection(p, ctx, "networkId");
         Thread.sleep(2000);
         rdn.deleteSubscription(p, ctx);
@@ -75,7 +80,8 @@ public class TestRestconfDiscoveryNode {
             throws SvcLogicException{
         SvcLogicContext ctx = new SvcLogicContext();
         Map<String, String> p = new HashMap<>();
-        RestconfDiscoveryNode rdn = new RestconfDiscoveryNode();
+        RestconfDiscoveryNode rdn = new RestconfDiscoveryNode(
+                new RestconfApiCallNode(new RestapiCallNode()));
         rdn.establishSubscription(p, ctx);
     }
 
@@ -84,7 +90,8 @@ public class TestRestconfDiscoveryNode {
         SvcLogicContext ctx = new SvcLogicContext();
         ctx.setAttribute("restapi-result.response-code", "200");
         ctx.setAttribute("response-code", "404");
-        RestconfDiscoveryNode rdn = new RestconfDiscoveryNode();
+        RestconfDiscoveryNode rdn = new RestconfDiscoveryNode(
+                new RestconfApiCallNode(new RestapiCallNode()));
         assertThat(rdn.getResponseCode("restapi-result", ctx),
                    is("200"));
         assertThat(rdn.getResponseCode(null, ctx),
@@ -95,10 +102,12 @@ public class TestRestconfDiscoveryNode {
     public void testOutputIdentifier() {
         SvcLogicContext ctx = new SvcLogicContext();
         ctx.setAttribute("restapi-result.ietf-subscribed-notifications:" +
-                                 "output.identifier", "89");
-        ctx.setAttribute("ietf-subscribed-notifications:output.identifier",
+                                 "establish-subscription.output.identifier",
                          "89");
-        RestconfDiscoveryNode rdn = new RestconfDiscoveryNode();
+        ctx.setAttribute("ietf-subscribed-notifications:establish-subscripti" +
+                                 "on.output.identifier", "89");
+        RestconfDiscoveryNode rdn = new RestconfDiscoveryNode(
+                new RestconfApiCallNode(new RestapiCallNode()));
         assertThat(rdn.getOutputIdentifier("restapi-result", ctx),
                    is("89"));
     }