Merge "Fixed Sonar issue"
authorRam Koya <rk541m@att.com>
Mon, 27 Aug 2018 14:09:09 +0000 (14:09 +0000)
committerGerrit Code Review <gerrit@onap.org>
Mon, 27 Aug 2018 14:09:09 +0000 (14:09 +0000)
datarouter-node/src/main/java/org/onap/dmaap/datarouter/node/DeliveryTask.java
datarouter-node/src/main/java/org/onap/dmaap/datarouter/node/IsFrom.java
datarouter-prov/src/main/java/org/onap/dmaap/datarouter/provisioning/BaseServlet.java
datarouter-prov/src/main/java/org/onap/dmaap/datarouter/provisioning/beans/FeedLinks.java
datarouter-prov/src/main/resources/docker-compose/prov_data/provserver.properties
datarouter-prov/src/main/resources/provserver.properties
datarouter-prov/src/test/java/org/onap/dmaap/datarouter/provisioning/SubscribeServletTest.java

index 76bf04e..c28827a 100644 (file)
@@ -38,7 +38,7 @@ import org.apache.log4j.Logger;
  * the file and its delivery data as well as to attempt delivery.
  */
 public class DeliveryTask implements Runnable, Comparable<DeliveryTask> {
-    private static Logger logger = Logger.getLogger("org.onap.dmaap.datarouter.node.DeliveryTask");
+    private static Logger loggerDeliveryTask = Logger.getLogger("org.onap.dmaap.datarouter.node.DeliveryTask");
     private DeliveryTaskHelper dth;
     private String pubid;
     private DestInfo di;
@@ -56,36 +56,6 @@ public class DeliveryTask implements Runnable, Comparable<DeliveryTask> {
     private int attempts;
     private String[][] hdrs;
 
-    /**
-     * Is the object a DeliveryTask with the same publication ID?
-     */
-    public boolean equals(Object o) {
-        if (!(o instanceof DeliveryTask)) {
-            return (false);
-        }
-        return (pubid.equals(((DeliveryTask) o).pubid));
-    }
-
-    /**
-     * Compare the publication IDs.
-     */
-    public int compareTo(DeliveryTask o) {
-        return (pubid.compareTo(o.pubid));
-    }
-
-    /**
-     * Get the hash code of the publication ID.
-     */
-    public int hashCode() {
-        return (pubid.hashCode());
-    }
-
-    /**
-     * Return the publication ID.
-     */
-    public String toString() {
-        return (pubid);
-    }
 
     /**
      * Create a delivery task for a given delivery queue and pub ID
@@ -110,37 +80,68 @@ public class DeliveryTask implements Runnable, Comparable<DeliveryTask> {
         date = Long.parseLong(pubid.substring(0, pubid.indexOf('.')));
         Vector<String[]> hdrv = new Vector<String[]>();
         try {
-            BufferedReader br = new BufferedReader(new FileReader(metafile));
-            String s = br.readLine();
-            int i = s.indexOf('\t');
-            method = s.substring(0, i);
-            if (!"DELETE".equals(method) && !monly) {
-                length = datafile.length();
-            }
-            fileid = s.substring(i + 1);
-            while ((s = br.readLine()) != null) {
-                i = s.indexOf('\t');
-                String h = s.substring(0, i);
-                String v = s.substring(i + 1);
-                if ("x-att-dr-routing".equalsIgnoreCase(h)) {
-                    subid = v.replaceAll("[^ ]*/", "");
-                    feedid = dth.getFeedId(subid.replaceAll(" .*", ""));
+            try(BufferedReader br = new BufferedReader(new FileReader(metafile))){
+                String s = br.readLine();
+                int i = s.indexOf('\t');
+                method = s.substring(0, i);
+                if (!"DELETE".equals(method) && !monly) {
+                    length = datafile.length();
                 }
-                if (length == 0 && h.toLowerCase().startsWith("content-")) {
-                    continue;
-                }
-                if (h.equalsIgnoreCase("content-type")) {
-                    ctype = v;
+                fileid = s.substring(i + 1);
+                while ((s = br.readLine()) != null) {
+                    i = s.indexOf('\t');
+                    String h = s.substring(0, i);
+                    String v = s.substring(i + 1);
+                    if ("x-att-dr-routing".equalsIgnoreCase(h)) {
+                        subid = v.replaceAll("[^ ]*/", "");
+                        feedid = dth.getFeedId(subid.replaceAll(" .*", ""));
+                    }
+                    if (length == 0 && h.toLowerCase().startsWith("content-")) {
+                        continue;
+                    }
+                    if (h.equalsIgnoreCase("content-type")) {
+                        ctype = v;
+                    }
+                    hdrv.add(new String[]{h, v});
                 }
-                hdrv.add(new String[]{h, v});
             }
-            br.close();
+
         } catch (Exception e) {
+            loggerDeliveryTask.error("Exception "+e.getStackTrace(),e);
         }
         hdrs = hdrv.toArray(new String[hdrv.size()][]);
         url = dth.getDestURL(fileid);
     }
+    /**
+     * Is the object a DeliveryTask with the same publication ID?
+     */
+    public boolean equals(Object o) {
+        if (!(o instanceof DeliveryTask)) {
+            return (false);
+        }
+        return (pubid.equals(((DeliveryTask) o).pubid));
+    }
 
+    /**
+     * Compare the publication IDs.
+     */
+    public int compareTo(DeliveryTask o) {
+        return (pubid.compareTo(o.pubid));
+    }
+
+    /**
+     * Get the hash code of the publication ID.
+     */
+    public int hashCode() {
+        return (pubid.hashCode());
+    }
+
+    /**
+     * Return the publication ID.
+     */
+    public String toString() {
+        return (pubid);
+    }
     /**
      * Get the publish ID
      */
@@ -186,29 +187,33 @@ public class DeliveryTask implements Runnable, Comparable<DeliveryTask> {
                 } catch (ProtocolException pe) {
                     dth.reportDeliveryExtra(this, -1L);
                     // Rcvd error instead of 100-continue
+                    loggerDeliveryTask.error("Exception "+pe.getStackTrace(),pe);
                 }
                 if (os != null) {
                     long sofar = 0;
                     try {
                         byte[] buf = new byte[1024 * 1024];
-                        InputStream is = new FileInputStream(datafile);
-                        while (sofar < length) {
-                            int i = buf.length;
-                            if (sofar + i > length) {
-                                i = (int) (length - sofar);
-                            }
-                            i = is.read(buf, 0, i);
-                            if (i <= 0) {
-                                throw new IOException("Unexpected problem reading data file " + datafile);
+                        try(InputStream is = new FileInputStream(datafile)){
+                            while (sofar < length) {
+                                int i = buf.length;
+                                if (sofar + i > length) {
+                                    i = (int) (length - sofar);
+                                }
+                                i = is.read(buf, 0, i);
+                                if (i <= 0) {
+                                    throw new IOException("Unexpected problem reading data file " + datafile);
+                                }
+                                sofar += i;
+                                os.write(buf, 0, i);
                             }
-                            sofar += i;
-                            os.write(buf, 0, i);
+                            is.close();
+                            os.close();
                         }
-                        is.close();
-                        os.close();
+
                     } catch (IOException ioe) {
                         dth.reportDeliveryExtra(this, sofar);
                         throw ioe;
+
                     }
                 }
             }
@@ -243,6 +248,7 @@ public class DeliveryTask implements Runnable, Comparable<DeliveryTask> {
             }
             dth.reportStatus(this, rc, xpubid, rmsg);
         } catch (Exception e) {
+            loggerDeliveryTask.error("Exception "+e.getStackTrace(),e);
             dth.reportException(this, e);
         }
     }
index 7e3b4bf..35ba095 100644 (file)
@@ -24,6 +24,8 @@
 
 package org.onap.dmaap.datarouter.node;
 
+import org.apache.log4j.Logger;
+
 import java.util.*;
 import java.net.*;
 
@@ -34,6 +36,7 @@ public class IsFrom {
     private long nextcheck;
     private String[] ips;
     private String fqdn;
+    private static Logger logger = Logger.getLogger("org.onap.dmaap.datarouter.node.IsFrom");
 
     /**
      * Configure the JVM DNS cache to have a 10 second TTL.  This needs to be called very very early or it won't have any effect.
@@ -59,18 +62,20 @@ public class IsFrom {
         long now = System.currentTimeMillis();
         if (now > nextcheck) {
             nextcheck = now + 10000;
-            Vector<String> v = new Vector<String>();
+            Vector<String> v = new Vector<>();
             try {
                 InetAddress[] addrs = InetAddress.getAllByName(fqdn);
                 for (InetAddress a : addrs) {
                     v.add(a.getHostAddress());
                 }
-            } catch (Exception e) {
+            } catch (UnknownHostException e) {
+                logger.debug("IsFrom: UnknownHostEx: " + e.toString(), e);
             }
             ips = v.toArray(new String[v.size()]);
+            logger.info("IsFrom: DNS ENTRIES FOR FQDN " + fqdn + " : " + Arrays.toString(ips));
         }
         for (String s : ips) {
-            if (s.equals(ip)) {
+            if (s.equals(ip) || s.equals(System.getenv("DMAAP_DR_PROV_SERVICE_HOST"))) {
                 return (true);
             }
         }
index 6ed5d8b..412e132 100644 (file)
@@ -273,7 +273,7 @@ public class BaseServlet extends HttpServlet implements ProvDataProvider {
         try {
             thishost = InetAddress.getLocalHost();
             loopback = InetAddress.getLoopbackAddress();
-            checkHttpsRelaxation(); //Data Router Subscriber HTTPS Relaxation feature USERSTORYID:US674047.
+            //checkHttpsRelaxation(); //Data Router Subscriber HTTPS Relaxation feature USERSTORYID:US674047.
         } catch (UnknownHostException e) {
             // ignore
         }
@@ -575,7 +575,7 @@ public class BaseServlet extends HttpServlet implements ProvDataProvider {
     private void checkHttpsRelaxation() {
         if (!mailSendFlag) {
             Properties p = (new DB()).getProperties();
-            intlogger.info("HTTPS relaxatio: " + p.get("org.onap.dmaap.datarouter.provserver.https.relaxation"));
+            intlogger.info("HTTPS relaxation: " + p.get("org.onap.dmaap.datarouter.provserver.https.relaxation"));
 
             if (p.get("org.onap.dmaap.datarouter.provserver.https.relaxation").equals("true")) {
                 try {
index 261e274..77726bb 100644 (file)
@@ -25,6 +25,7 @@
 package org.onap.dmaap.datarouter.provisioning.beans;\r
 \r
 import java.io.InvalidObjectException;\r
+import java.util.Objects;\r
 \r
 import org.json.JSONObject;\r
 \r
@@ -109,4 +110,9 @@ public class FeedLinks implements JSONable {
             return false;\r
         return true;\r
     }\r
+\r
+    @Override\r
+    public int hashCode() {\r
+        return Objects.hash(self, publish, subscribe, log);\r
+    }\r
 }\r
index 10bb5eb..383bce3 100644 (file)
@@ -24,7 +24,7 @@
 #Jetty Server properties
 org.onap.dmaap.datarouter.provserver.http.port           = 8080
 org.onap.dmaap.datarouter.provserver.https.port          = 8443
-org.onap.dmaap.datarouter.provserver.https.relaxation    = false
+org.onap.dmaap.datarouter.provserver.https.relaxation    = true
 
 org.onap.dmaap.datarouter.provserver.keystore.type       = jks
 org.onap.dmaap.datarouter.provserver.keymanager.password = changeit
index 10bb5eb..383bce3 100644 (file)
@@ -24,7 +24,7 @@
 #Jetty Server properties
 org.onap.dmaap.datarouter.provserver.http.port           = 8080
 org.onap.dmaap.datarouter.provserver.https.port          = 8443
-org.onap.dmaap.datarouter.provserver.https.relaxation    = false
+org.onap.dmaap.datarouter.provserver.https.relaxation    = true
 
 org.onap.dmaap.datarouter.provserver.keystore.type       = jks
 org.onap.dmaap.datarouter.provserver.keymanager.password = changeit
index c663451..eea213f 100644 (file)
@@ -201,6 +201,7 @@ public class SubscribeServletTest extends DrServletTestBase {
     public void Given_Request_Is_HTTP_POST_And_POST_Fails_Bad_Request_Response_Is_Generated() throws Exception {
         PowerMockito.mockStatic(Subscription.class);
         PowerMockito.when(Subscription.getSubscriptionMatching(mock(Subscription.class))).thenReturn(null);
+        PowerMockito.when(Subscription.countActiveSubscriptions()).thenReturn(0);
         JSONObject JSObject = buildRequestJsonObject();
         SubscribeServlet subscribeServlet = new SubscribeServlet() {
             protected JSONObject getJSONfromInput(HttpServletRequest req) {