public static DataSource getDS(KPIGenProperties p) throws SQLException, IOException {
   if ("DB2".equalsIgnoreCase(p.get("DB"))) {
     DB2SimpleDataSource ds = new DB2SimpleDataSource();
     ds.setDriverType(4);
     ds.setLoginTimeout(5); // sec
     ds.setServerName(p.get("ServerName"));
     ds.setPortNumber(Integer.parseInt(p.get("PortNumber")));
     ds.setDatabaseName(p.get("DatabaseName"));
     ds.setUser(p.get("User"));
     ds.setPassword(p.get("Password"));
     return ds;
   } else {
     OracleDataSource ds = new OracleDataSource();
     ds.setDriverType("thin");
     ds.setServerName(p.get("ServerName"));
     ds.setPortNumber(Integer.parseInt(p.get("PortNumber")));
     ds.setDatabaseName(p.get("DatabaseName"));
     ds.setUser(p.get("User"));
     ds.setPassword(p.get("Password"));
     return ds;
   }
 }