More unit test coverage and code cleanup
[dmaap/datarouter.git] / datarouter-prov / src / main / java / org / onap / dmaap / datarouter / provisioning / beans / NetworkRoute.java
index 6ac0544..fa3d4e0 100644 (file)
@@ -24,6 +24,8 @@
 \r
 package org.onap.dmaap.datarouter.provisioning.beans;\r
 \r
+import com.att.eelf.configuration.EELFLogger;\r
+import com.att.eelf.configuration.EELFManager;\r
 import java.sql.Connection;\r
 import java.sql.PreparedStatement;\r
 import java.sql.ResultSet;\r
@@ -32,9 +34,6 @@ import java.sql.Statement;
 import java.util.Objects;\r
 import java.util.SortedSet;\r
 import java.util.TreeSet;\r
-\r
-import com.att.eelf.configuration.EELFLogger;\r
-import com.att.eelf.configuration.EELFManager;\r
 import org.json.JSONObject;\r
 import org.onap.dmaap.datarouter.provisioning.utils.DB;\r
 \r
@@ -52,6 +51,30 @@ public class NetworkRoute extends NodeClass implements Comparable<NetworkRoute>
     private final int tonode;\r
     private final int vianode;\r
 \r
+    public NetworkRoute(String fromnode, String tonode) {\r
+        this.fromnode = lookupNodeName(fromnode);\r
+        this.tonode = lookupNodeName(tonode);\r
+        this.vianode = -1;\r
+    }\r
+\r
+    public NetworkRoute(String fromnode, String tonode, String vianode) {\r
+        this.fromnode = lookupNodeName(fromnode);\r
+        this.tonode = lookupNodeName(tonode);\r
+        this.vianode = lookupNodeName(vianode);\r
+    }\r
+\r
+    public NetworkRoute(JSONObject jo) {\r
+        this.fromnode = lookupNodeName(jo.getString("from"));\r
+        this.tonode = lookupNodeName(jo.getString("to"));\r
+        this.vianode = lookupNodeName(jo.getString("via"));\r
+    }\r
+\r
+    private NetworkRoute(int fromnode, int tonode, int vianode) {\r
+        this.fromnode = fromnode;\r
+        this.tonode = tonode;\r
+        this.vianode = vianode;\r
+    }\r
+\r
     /**\r
      * Get a set of all Network Routes in the DB.  The set is sorted according to the natural sorting order of the\r
      * routes (based on the from and to node names in each route).\r
@@ -66,43 +89,24 @@ public class NetworkRoute extends NodeClass implements Comparable<NetworkRoute>
             Connection conn = db.getConnection();\r
             try (Statement stmt = conn.createStatement()) {\r
                 try (ResultSet rs = stmt.executeQuery("select FROMNODE, TONODE, VIANODE from NETWORK_ROUTES")) {\r
-                    while (rs.next()) {\r
-                        int fromnode = rs.getInt("FROMNODE");\r
-                        int tonode = rs.getInt("TONODE");\r
-                        int vianode = rs.getInt("VIANODE");\r
-                        set.add(new NetworkRoute(fromnode, tonode, vianode));\r
-                    }\r
+                    addNetworkRouteToSet(set, rs);\r
                 }\r
+            } finally {\r
+                db.release(conn);\r
             }\r
-            db.release(conn);\r
         } catch (SQLException e) {\r
             intlogger.error(SQLEXCEPTION + e.getMessage(), e);\r
         }\r
         return set;\r
     }\r
 \r
-    public NetworkRoute(String fromnode, String tonode) {\r
-        this.fromnode = lookupNodeName(fromnode);\r
-        this.tonode = lookupNodeName(tonode);\r
-        this.vianode = -1;\r
-    }\r
-\r
-    public NetworkRoute(String fromnode, String tonode, String vianode) {\r
-        this.fromnode = lookupNodeName(fromnode);\r
-        this.tonode = lookupNodeName(tonode);\r
-        this.vianode = lookupNodeName(vianode);\r
-    }\r
-\r
-    public NetworkRoute(JSONObject jo) {\r
-        this.fromnode = lookupNodeName(jo.getString("from"));\r
-        this.tonode = lookupNodeName(jo.getString("to"));\r
-        this.vianode = lookupNodeName(jo.getString("via"));\r
-    }\r
-\r
-    public NetworkRoute(int fromnode, int tonode, int vianode) {\r
-        this.fromnode = fromnode;\r
-        this.tonode = tonode;\r
-        this.vianode = vianode;\r
+    private static void addNetworkRouteToSet(SortedSet<NetworkRoute> set, ResultSet rs) throws SQLException {\r
+        while (rs.next()) {\r
+            int fromnode = rs.getInt("FROMNODE");\r
+            int tonode = rs.getInt("TONODE");\r
+            int vianode = rs.getInt("VIANODE");\r
+            set.add(new NetworkRoute(fromnode, tonode, vianode));\r
+        }\r
     }\r
 \r
     public int getFromnode() {\r
@@ -113,27 +117,21 @@ public class NetworkRoute extends NodeClass implements Comparable<NetworkRoute>
         return tonode;\r
     }\r
 \r
+    public int getVianode() {\r
+        return vianode;\r
+    }\r
+\r
     @Override\r
     public boolean doDelete(Connection c) {\r
         boolean rv = true;\r
-        PreparedStatement ps = null;\r
-        try {\r
-            String sql = "delete from NETWORK_ROUTES where FROMNODE = ? AND TONODE = ?";\r
-            ps = c.prepareStatement(sql);\r
+        String sql = "delete from NETWORK_ROUTES where FROMNODE = ? AND TONODE = ?";\r
+        try (PreparedStatement ps = c.prepareStatement(sql)) {\r
             ps.setInt(1, fromnode);\r
             ps.setInt(2, tonode);\r
             ps.execute();\r
         } catch (SQLException e) {\r
             rv = false;\r
             intlogger.warn("PROV0007 doDelete: " + e.getMessage(), e);\r
-        } finally {\r
-            try {\r
-                if (ps != null) {\r
-                    ps.close();\r
-                }\r
-            } catch (SQLException e) {\r
-                intlogger.error(SQLEXCEPTION + e.getMessage(), e);\r
-            }\r
         }\r
         return rv;\r
     }\r
@@ -141,28 +139,17 @@ public class NetworkRoute extends NodeClass implements Comparable<NetworkRoute>
     @Override\r
     public boolean doInsert(Connection c) {\r
         boolean rv = false;\r
+        String sql = "insert into NETWORK_ROUTES (FROMNODE, TONODE, VIANODE) values (?, ?, ?)";\r
         if (this.vianode >= 0) {\r
-            PreparedStatement ps = null;\r
-            try {\r
+            try (PreparedStatement ps = c.prepareStatement(sql)) {\r
                 // Create the NETWORK_ROUTES row\r
-                String sql = "insert into NETWORK_ROUTES (FROMNODE, TONODE, VIANODE) values (?, ?, ?)";\r
-                ps = c.prepareStatement(sql);\r
                 ps.setInt(1, this.fromnode);\r
                 ps.setInt(2, this.tonode);\r
                 ps.setInt(3, this.vianode);\r
                 ps.execute();\r
-                ps.close();\r
                 rv = true;\r
             } catch (SQLException e) {\r
                 intlogger.warn("PROV0005 doInsert: " + e.getMessage(), e);\r
-            } finally {\r
-                try {\r
-                    if (ps != null) {\r
-                        ps.close();\r
-                    }\r
-                } catch (SQLException e) {\r
-                    intlogger.error(SQLEXCEPTION + e.getMessage(), e);\r
-                }\r
             }\r
         }\r
         return rv;\r
@@ -171,10 +158,8 @@ public class NetworkRoute extends NodeClass implements Comparable<NetworkRoute>
     @Override\r
     public boolean doUpdate(Connection c) {\r
         boolean rv = true;\r
-        PreparedStatement ps = null;\r
-        try {\r
-            String sql = "update NETWORK_ROUTES set VIANODE = ? where FROMNODE = ? and TONODE = ?";\r
-            ps = c.prepareStatement(sql);\r
+        String sql = "update NETWORK_ROUTES set VIANODE = ? where FROMNODE = ? and TONODE = ?";\r
+        try (PreparedStatement ps = c.prepareStatement(sql)) {\r
             ps.setInt(1, vianode);\r
             ps.setInt(2, fromnode);\r
             ps.setInt(3, tonode);\r
@@ -182,14 +167,6 @@ public class NetworkRoute extends NodeClass implements Comparable<NetworkRoute>
         } catch (SQLException e) {\r
             rv = false;\r
             intlogger.warn("PROV0006 doUpdate: " + e.getMessage(), e);\r
-        } finally {\r
-            try {\r
-                if (ps != null) {\r
-                    ps.close();\r
-                }\r
-            } catch (SQLException e) {\r
-                intlogger.error(SQLEXCEPTION + e.getMessage(), e);\r
-            }\r
         }\r
         return rv;\r
     }\r