Merge "DatabaseClass.java: Fixed sonar issues"
authorRam Koya <rk541m@att.com>
Thu, 13 Sep 2018 15:06:41 +0000 (15:06 +0000)
committerGerrit Code Review <gerrit@onap.org>
Thu, 13 Sep 2018 15:06:41 +0000 (15:06 +0000)
src/main/java/org/onap/dmaap/dbcapi/database/DBFieldHandler.java
src/main/java/org/onap/dmaap/dbcapi/database/LoadSchema.java
src/main/java/org/onap/dmaap/dbcapi/database/TableHandler.java
src/main/java/org/onap/dmaap/dbcapi/model/DR_Sub.java
src/main/java/org/onap/dmaap/dbcapi/model/DcaeLocation.java
src/main/java/org/onap/dmaap/dbcapi/resources/TopicResource.java

index 072c548..59d610c 100644 (file)
@@ -24,7 +24,6 @@ import java.lang.reflect.*;
 import java.sql.*;
 import java.util.*;
 
-import org.apache.log4j.Logger;
 
 import com.att.eelf.configuration.EELFLogger;
 import com.att.eelf.configuration.EELFManager;
@@ -33,7 +32,40 @@ import org.onap.dmaap.dbcapi.logging.DmaapbcLogMessageEnum;
 
 
 public class DBFieldHandler    {
-       static final EELFLogger errorLogger = EELFManager.getInstance().getErrorLogger();
+       static final EELFLogger errorLogger = EELFManager.getInstance().getErrorLogger();       
+
+       public DBFieldHandler(Class<?> c, String fieldname, int fieldnum) throws Exception {
+               this(c, fieldname, fieldnum, null);
+       }
+       public DBFieldHandler(Class<?> c, String fieldname, int fieldnum, SqlOp op) throws Exception {
+               this.fieldnum = fieldnum;
+               StringBuilder sb = new StringBuilder();
+               for (String s: fieldname.split("_")) {  
+                       sb.append(s.substring(0, 1).toUpperCase()).append(s.substring(1));
+               }
+               String camelcase = sb.toString();
+               try {
+                       objget = c.getMethod("is" + camelcase);
+               } catch (Exception e) {
+                       errorLogger.error("Error", e);
+                       objget = c.getMethod("get" + camelcase);
+               }
+               objset = c.getMethod("set" + camelcase, objget.getReturnType());
+               sqlop = op;
+               if (sqlop != null) {
+                       return;
+               }
+               Class<?> x = objget.getReturnType();
+               if (x.isEnum()) {
+                       sqlop = new EnumSql(x);
+                       return;
+               }
+               sqlop = sqltypes.get(x.getName());
+               if (sqlop != null) {
+                       return;
+               }
+               errorLogger.error(DmaapbcLogMessageEnum.DB_NO_FIELD_HANDLER,  c.getName(),  fieldname,  Integer.toString(fieldnum),  x.getName());
+       }
        
        public static interface SqlOp   {
                public Object get(ResultSet rs, int index) throws Exception;
@@ -121,7 +153,7 @@ public class DBFieldHandler {
         }
         private static Map<String, SqlOp> sqltypes;
         static {
-                sqltypes = new HashMap<String, SqlOp>();
+                sqltypes = new HashMap<>();
                sqltypes.put("[Ljava.lang.String;", new AofString());
                sqltypes.put("java.util.Date", new SqlDate());
                 try {
@@ -134,6 +166,7 @@ public class DBFieldHandler {
                         new SqlType("Short");
                         new SqlType("String");
                 } catch (Exception e) {
+                       errorLogger.error("Error", e);
                        errorLogger.error(DmaapbcLogMessageEnum.DB_ACCESS_INIT_ERROR,  e.getMessage() );
                 }
         }
@@ -156,37 +189,6 @@ public class DBFieldHandler        {
        public void fromSQL(ResultSet r, Object o) throws Exception {
                objset.invoke(o, sqlop.get(r, fieldnum));
        }
-       public DBFieldHandler(Class<?> c, String fieldname, int fieldnum) throws Exception {
-               this(c, fieldname, fieldnum, null);
-       }
-       public DBFieldHandler(Class<?> c, String fieldname, int fieldnum, SqlOp op) throws Exception {
-               this.fieldnum = fieldnum;
-               StringBuffer sb = new StringBuffer();
-               for (String s: fieldname.split("_")) {
-                       sb.append(s.substring(0, 1).toUpperCase()).append(s.substring(1));
-               }
-               String camelcase = sb.toString();
-               try {
-                       objget = c.getMethod("is" + camelcase);
-               } catch (Exception e) {
-                       objget = c.getMethod("get" + camelcase);
-               }
-               objset = c.getMethod("set" + camelcase, objget.getReturnType());
-               sqlop = op;
-               if (sqlop != null) {
-                       return;
-               }
-               Class<?> x = objget.getReturnType();
-               if (x.isEnum()) {
-                       sqlop = new EnumSql(x);
-                       return;
-               }
-               sqlop = sqltypes.get(x.getName());
-               if (sqlop != null) {
-                       return;
-               }
-               errorLogger.error(DmaapbcLogMessageEnum.DB_NO_FIELD_HANDLER,  c.getName(),  fieldname,  Integer.toString(fieldnum),  x.getName());
-       }
        public static String fesc(String s) {
                if (s == null) {
                        return(s);
index 2c52b0d..1f1b078 100644 (file)
@@ -23,20 +23,12 @@ package org.onap.dmaap.dbcapi.database;
 import java.io.*;
 import java.sql.*;
 
-import org.apache.log4j.Logger;
-
 import com.att.eelf.configuration.EELFLogger;
 import com.att.eelf.configuration.EELFManager;
-
-import org.onap.dmaap.dbcapi.logging.DmaapbcLogMessageEnum;
+;
 
 public class LoadSchema        {
        private static final EELFLogger logger = EELFManager.getInstance().getLogger(LoadSchema.class);
-       private static final EELFLogger appLogger = EELFManager.getInstance().getApplicationLogger();
-       private static final EELFLogger auditLogger = EELFManager.getInstance().getAuditLogger();
-       private static final EELFLogger debugLogger = EELFManager.getInstance().getDebugLogger();
-       private static final EELFLogger errorLogger = EELFManager.getInstance().getErrorLogger();
-       private static final EELFLogger metricsLogger = EELFManager.getInstance().getMetricsLogger();
        
        static int getVer(Statement s) throws SQLException {
                ResultSet rs = null;
@@ -66,6 +58,7 @@ public class LoadSchema       {
                                stmt.execute(cmd);
                                logger.info("SCHEMA: " + cmd);
                        } catch (SQLException sqle) {
+                               logger.error("Error", sqle);
                                        throw sqle;
                        }
                        
@@ -74,7 +67,9 @@ public class LoadSchema       {
                        int newver = -1;
                        try {
                                newver = getVer(stmt);
-                       } catch (Exception e) {}
+                       } catch (Exception e) {
+                               logger.error("Error", e);
+                       }
                        logger.info("Database schema currently at version " + newver++);
                        
 
@@ -126,8 +121,20 @@ public class LoadSchema    {
                } catch (IOException ioe) {
                        throw new SQLException(ioe);
                } finally {
-                       if (stmt != null) { try { stmt.close(); } catch (Exception e) {}}
-                       if (c != null) { try { c.close(); } catch (Exception e) {}}
+                       if (stmt != null) { 
+                               try { 
+                                       stmt.close(); 
+                               } catch (Exception e) {
+                                       logger.error("Error", e);
+                               }
+                       }
+                       if (c != null) { 
+                               try { 
+                                       c.close(); 
+                                       } catch (Exception e) {
+                                               logger.error("Error", e);
+                                       }
+                               }
                }
        }
        public static void main(String[] args) throws Exception {
index c83b6be..fc68aa2 100644 (file)
@@ -40,22 +40,10 @@ class TableHandler<C>       {
        protected String        initstmt;
        protected Class<C>      cls;
        protected DBFieldHandler[] fields;
-       private static Map<String, Map<String, DBFieldHandler.SqlOp>> exceptions = new HashMap<String, Map<String, DBFieldHandler.SqlOp>>();
-       public static void setSpecialCase(String dbtabname, String dbfldname, DBFieldHandler.SqlOp handler) {
-               Map<String, DBFieldHandler.SqlOp> m = exceptions.get(dbtabname);
-               if (m == null) {
-                       m = new HashMap<String, DBFieldHandler.SqlOp>();
-                       exceptions.put(dbtabname, m);
-               }
-               m.put(dbfldname, handler);
-       }
-       public static DBFieldHandler.SqlOp getSpecialCase(String dbtabname, String dbfldname) {
-               Map<String, DBFieldHandler.SqlOp> m = exceptions.get(dbtabname);
-               if (m != null) {
-                       return(m.get(dbfldname));
-               }
-               return(null);
-       }
+       private static Map<String, Map<String, DBFieldHandler.SqlOp>> exceptions = new HashMap<>();
+       private String select = "SELECT ";
+       private String from = " FROM ";
+       
        protected TableHandler(Class<C> cls, String tabname, String keyname) throws Exception {
                this(ConnectionFactory.getDefaultInstance(), cls, tabname, keyname);
        }
@@ -71,14 +59,31 @@ class TableHandler<C>       {
                        }
                }
        }
+       
+       public static void setSpecialCase(String dbtabname, String dbfldname, DBFieldHandler.SqlOp handler) {
+               Map<String, DBFieldHandler.SqlOp> m = exceptions.get(dbtabname);
+               if (m == null) {
+                       m = new HashMap<>();
+                       exceptions.put(dbtabname, m);
+               }
+               m.put(dbfldname, handler);
+       }
+       public static DBFieldHandler.SqlOp getSpecialCase(String dbtabname, String dbfldname) {
+               Map<String, DBFieldHandler.SqlOp> m = exceptions.get(dbtabname);
+               if (m != null) {
+                       return(m.get(dbfldname));
+               }
+               return(null);
+       }
+       
        private void setup(DatabaseMetaData dmd, Class<C> cls, String tabname, String keyname) throws Exception {
                this.cls = cls;
-               Vector<DBFieldHandler> h = new Vector<DBFieldHandler>();
+               Vector<DBFieldHandler> h = new Vector<>();
                String qualifiedTableName = String.format( "%s.%s", cf.getSchema(), tabname );
                ResultSet rs = dmd.getColumns("", cf.getSchema(), tabname, null);
-               StringBuffer sb1 = new StringBuffer();
-               StringBuffer sb2 = new StringBuffer();
-               StringBuffer sb3 = new StringBuffer();
+               StringBuilder sb1 = new StringBuilder();
+               StringBuilder sb2 = new StringBuilder();
+               StringBuilder sb3 = new StringBuilder();
                int     count = 0;
                while (rs.next()) {
                        if (!rs.getString(3).equals(tabname)) {
@@ -109,13 +114,13 @@ class TableHandler<C>     {
                        h.add(new DBFieldHandler(cls, keyname, count, getSpecialCase(tabname, keyname)));
                        delstmt = "DELETE FROM " + qualifiedTableName + " WHERE " + keyname + " = ?";
                        insorreplstmt = "INSERT INTO " + qualifiedTableName + " (" + clist + ", " + keyname + ") VALUES (" + qlist + ", ?) ON CONFLICT(" + keyname + ") DO UPDATE SET (" + clist + ") = (" + elist + ")";
-                       getstmt = "SELECT " + clist + ", " + keyname + " FROM " + qualifiedTableName + " WHERE " + keyname + " = ?";
-                       liststmt = "SELECT " + clist + ", " + keyname + " FROM " + qualifiedTableName;
+                       getstmt = select + clist + ", " + keyname + from + qualifiedTableName + " WHERE " + keyname + " = ?";
+                       liststmt = select + clist + ", " + keyname + from + qualifiedTableName;
                } else {
                        delstmt = "DELETE FROM " + qualifiedTableName;
                        initstmt = "INSERT INTO " + qualifiedTableName + " (" + clist + ") VALUES (" + qlist + ")";
                        insorreplstmt = "UPDATE " + qualifiedTableName + " SET (" + clist + ") = (" + qlist + ")";
-                       getstmt = "SELECT " + clist + ", " + keyname + " FROM " + qualifiedTableName;
+                       getstmt = select + clist + ", " + keyname + from + qualifiedTableName;
                }
                fields = h.toArray(new DBFieldHandler[h.size()]);
        }
index 5a768c5..e089881 100644 (file)
@@ -42,32 +42,6 @@ public class DR_Sub extends DmaapObject {
        private boolean use100;
        private boolean suspended;
        private String owner;
-       
-       public String getOwner() {
-               return owner;
-       }
-
-       public void setOwner(String owner) {
-               this.owner = owner;
-       }
-
-       public boolean isSuspended() {
-               return suspended;
-       }
-
-       public void setSuspended(boolean suspended) {
-               this.suspended = suspended;
-       }
-
-
-
-       public boolean isUse100() {
-               return use100;
-       }
-
-       public void setUse100(boolean use100) {
-               this.use100 = use100;
-       }
 
        public DR_Sub() {
 
@@ -125,6 +99,32 @@ public class DR_Sub extends DmaapObject {
 
                logger.info( "new DR_Sub returning");
        }
+       
+       public String getOwner() {
+               return owner;
+       }
+
+       public void setOwner(String owner) {
+               this.owner = owner;
+       }
+
+       public boolean isSuspended() {
+               return suspended;
+       }
+
+       public void setSuspended(boolean suspended) {
+               this.suspended = suspended;
+       }
+
+
+
+       public boolean isUse100() {
+               return use100;
+       }
+
+       public void setUse100(boolean use100) {
+               this.use100 = use100;
+       }
 
        public String getDcaeLocationName() {
                return dcaeLocationName;
index 8248ef1..b4b5e2e 100644 (file)
@@ -26,7 +26,7 @@ import org.apache.log4j.Logger;
 
 @XmlRootElement
 public class DcaeLocation extends DmaapObject {
-       static final Logger logger = Logger.getLogger(MR_Cluster.class);
+       static final Logger errorLogger = Logger.getLogger(MR_Cluster.class);
        private String clli;
        private String dcaeLayer;
        private String dcaeLocationName;
index 95f9d33..cab48ca 100644 (file)
@@ -96,7 +96,7 @@ public class TopicResource extends BaseLoggingClass {
        public Response  addTopic( 
                        Topic topic
                        ) {
-               logger.info( "addTopic request: " + String.valueOf(topic) );
+               logger.info( "addTopic request: " + topic );
                ApiService check = new ApiService();
 
                try {
@@ -104,10 +104,10 @@ public class TopicResource extends BaseLoggingClass {
                        check.required( "topicDescription", topic.getTopicDescription(), "" );
                        check.required( "owner", topic.getOwner(), "" );
                } catch( RequiredFieldException rfe ) {
+                       logger.error("Error", rfe);
                        return check.error();
                }
                
-               //String repReq = topic.getReplicationRequest();
                ReplicationType t = topic.getReplicationCase();
                if ( t == null || t == ReplicationType.REPLICATION_NOT_SPECIFIED ) {
                        topic.setReplicationCase( mr_topicService.reviewTopic(topic));
@@ -163,6 +163,7 @@ public class TopicResource extends BaseLoggingClass {
                try {
                        check.required( "fqtn", id, "" );
                } catch( RequiredFieldException rfe ) {
+                       logger.error("Error", rfe);
                        return check.error();
                }
                
@@ -192,6 +193,7 @@ public class TopicResource extends BaseLoggingClass {
                try {
                        check.required( "topicName", id, "^\\S+$" );  //no white space allowed in topicName
                } catch( RequiredFieldException rfe ) {
+                       logger.error("Error", rfe);
                        return check.error();
                }
                Topic mrc =  mr_topicService.getTopic( id, check.getErr() );