public void free(ConnectionPool connectionPool){ if (connectionPool == null) return; if(!connectionPool.isClosed() ){ connectionPool.close(); } ConnectionPoolManager.getInstance().free( connectionPool ); } /**
/** * Creates the real OracleConnection. Logs in to the Oracle Database and * creates the OracleConnection object. * * @param user The user name. * @param pass The password * * @return The real OracleConnection object. * * @throws SQLException If an error occurs connecting to the DB. */ public ConnectionPool getConnectionPool(String user, String pass) throws SQLException { String poolKey = dbUrl + user + pass; OracleConnectionPoolDataSource poolDataSource = (OracleConnectionPoolDataSource) dataSources .get(poolKey); if (poolDataSource == null) { poolDataSource = new OracleConnectionPoolDataSource(); poolDataSource.setURL(dbUrl); poolDataSource.setUser(user); poolDataSource.setPassword(pass); dataSources.put(poolKey, poolDataSource); } ConnectionPoolManager manager = ConnectionPoolManager.getInstance(); ConnectionPool connectionPool = manager.getConnectionPool(poolDataSource); return connectionPool; }
public ConnectionPool getConnectionPool(String user, String pass) throws SQLException { org.postgresql.jdbc2.optional.ConnectionPool poolDataSource = null; String dbUrl = connPath; String poolKey = dbUrl + user + pass; LOGGER.fine("looking up pool key " + poolKey); Object poolDS = dataSources.get(poolKey); poolDataSource = (org.postgresql.jdbc2.optional.ConnectionPool)poolDS; LOGGER.fine("pool is " + poolDataSource); if (poolDataSource == null) { poolDataSource = new org.postgresql.jdbc2.optional.ConnectionPool(); //source.setDataSourceName("Geotools Postgis"); poolDataSource.setServerName(host); poolDataSource.setDatabaseName(dbName); poolDataSource.setPortNumber(port); poolDataSource.setUser(user); poolDataSource.setPassword(pass); //source.setMaxConnections(10); //the source looks like this defaults to false, but we have //assumed true (as that's how it was before pooling) poolDataSource.setDefaultAutoCommit(true); dataSources.put(poolKey, poolDataSource); } ConnectionPoolManager manager = ConnectionPoolManager.getInstance(); ConnectionPool connectionPool = manager.getConnectionPool(poolDataSource); return connectionPool; }