import java.sql.ResultSet;\r
import java.sql.SQLException;\r
import java.sql.Statement;\r
-import java.util.ArrayList;\r
-import java.util.Collection;\r
-import java.util.HashMap;\r
-import java.util.Map;\r
+import java.util.*;\r
\r
import org.apache.log4j.Logger;\r
import org.json.JSONObject;\r
import org.onap.dmaap.datarouter.provisioning.utils.DB;\r
\r
/**\r
- * Methods to provide access to Provisioning parameters in the DB.\r
- * This class also provides constants of the standard parameters used by the Data Router.\r
+ * Methods to provide access to Provisioning parameters in the DB. This class also provides constants of the standard\r
+ * parameters used by the Data Router.\r
*\r
* @author Robert Eby\r
* @version $Id: Parameters.java,v 1.11 2014/03/12 19:45:41 eby Exp $\r
*/\r
public class Parameters extends Syncable {\r
+\r
public static final String PROV_REQUIRE_SECURE = "PROV_REQUIRE_SECURE";\r
public static final String PROV_REQUIRE_CERT = "PROV_REQUIRE_CERT";\r
public static final String PROV_AUTH_ADDRESSES = "PROV_AUTH_ADDRESSES";\r
DB db = new DB();\r
@SuppressWarnings("resource")\r
Connection conn = db.getConnection();\r
- Statement stmt = conn.createStatement();\r
- String sql = "select * from PARAMETERS";\r
- ResultSet rs = stmt.executeQuery(sql);\r
- while (rs.next()) {\r
- Parameters p = new Parameters(rs);\r
- coll.add(p);\r
+ try (Statement stmt = conn.createStatement()) {\r
+ String sql = "select * from PARAMETERS";\r
+ try (ResultSet rs = stmt.executeQuery(sql)) {\r
+ while (rs.next()) {\r
+ Parameters p = new Parameters(rs);\r
+ coll.add(p);\r
+ }\r
+ }\r
}\r
- rs.close();\r
- stmt.close();\r
db.release(conn);\r
} catch (SQLException e) {\r
- e.printStackTrace();\r
+ intlogger.error("SQLException " + e.getMessage());\r
}\r
return coll;\r
}\r
DB db = new DB();\r
@SuppressWarnings("resource")\r
Connection conn = db.getConnection();\r
- Statement stmt = conn.createStatement();\r
- String sql = "select KEYNAME, VALUE from PARAMETERS where KEYNAME = '" + k + "'";\r
- ResultSet rs = stmt.executeQuery(sql);\r
- if (rs.next()) {\r
- v = new Parameters(rs);\r
+ try (PreparedStatement stmt = conn\r
+ .prepareStatement("select KEYNAME, VALUE from PARAMETERS where KEYNAME = ?")) {\r
+ stmt.setString(1, k);\r
+ try (ResultSet rs = stmt.executeQuery()) {\r
+ if (rs.next()) {\r
+ v = new Parameters(rs);\r
+ }\r
+ }\r
}\r
- rs.close();\r
- stmt.close();\r
db.release(conn);\r
} catch (SQLException e) {\r
- e.printStackTrace();\r
+ intlogger.error("SQLException " + e.getMessage());\r
}\r
return v;\r
}\r
} catch (SQLException e) {\r
rv = false;\r
intlogger.warn("PROV0005 doInsert: " + e.getMessage());\r
- e.printStackTrace();\r
} finally {\r
try {\r
- ps.close();\r
+ if (ps != null) {\r
+ ps.close();\r
+ }\r
} catch (SQLException e) {\r
- e.printStackTrace();\r
+ intlogger.error("SQLException " + e.getMessage());\r
}\r
}\r
return rv;\r
} catch (SQLException e) {\r
rv = false;\r
intlogger.warn("PROV0006 doUpdate: " + e.getMessage());\r
- e.printStackTrace();\r
} finally {\r
try {\r
- ps.close();\r
+ if (ps != null) {\r
+ ps.close();\r
+ }\r
} catch (SQLException e) {\r
- e.printStackTrace();\r
+ intlogger.error("SQLException " + e.getMessage());\r
}\r
}\r
return rv;\r
} catch (SQLException e) {\r
rv = false;\r
intlogger.warn("PROV0007 doDelete: " + e.getMessage());\r
- e.printStackTrace();\r
} finally {\r
try {\r
- ps.close();\r
+ if (ps != null) {\r
+ ps.close();\r
+ }\r
} catch (SQLException e) {\r
- e.printStackTrace();\r
+ intlogger.error("SQLException " + e.getMessage());\r
}\r
}\r
return rv;\r
\r
@Override\r
public boolean equals(Object obj) {\r
- if (!(obj instanceof Parameters))\r
+ if (!(obj instanceof Parameters)) {\r
return false;\r
+ }\r
Parameters of = (Parameters) obj;\r
- if (!keyname.equals(of.keyname))\r
+ if (!keyname.equals(of.keyname)) {\r
return false;\r
- if (!value.equals(of.value))\r
+ }\r
+ if (!value.equals(of.value)) {\r
return false;\r
+ }\r
return true;\r
}\r
\r
+ @Override\r
+ public int hashCode() {\r
+ return Objects.hash(keyname, value);\r
+ }\r
+\r
@Override\r
public String toString() {\r
return "PARAM: keyname=" + keyname + ", value=" + value;\r