public int getCreatedInstances(String url, String userName) { final String dbPooledName = OIOUtils.getUnixFileName(userName + "@" + url); lock(); try { final OReentrantResourcePool<String, DB> pool = pools.get(dbPooledName); if (pool == null) return 0; return pool.getCreatedInstances(); } finally { unlock(); } }
public int getMaxConnections(final String url, final String userName) { final String dbPooledName = OIOUtils.getUnixFileName(userName + "@" + url); final OReentrantResourcePool<String, DB> pool; lock(); try { pool = pools.get(dbPooledName); } finally { unlock(); } if (pool == null) return maxSize; return pool.getMaxResources(); }
public int getAvailableConnections(final String url, final String userName) { final String dbPooledName = OIOUtils.getUnixFileName(userName + "@" + url); final OReentrantResourcePool<String, DB> pool; lock(); try { pool = pools.get(dbPooledName); } finally { unlock(); } if (pool == null) return 0; return pool.getAvailableResources(); }
public int getConnectionsInCurrentThread(final String url, final String userName) { final String dbPooledName = OIOUtils.getUnixFileName(userName + "@" + url); final OReentrantResourcePool<String, DB> pool; lock(); try { pool = pools.get(dbPooledName); } finally { unlock(); } if (pool == null) return 0; return pool.getConnectionsInCurrentThread(url); }
public DB acquire(final String iURL, final String iUserName, final String iUserPassword, final Map<String, Object> iOptionalParams) throws OLockException { final String dbPooledName = OIOUtils.getUnixFileName(iUserName + "@" + iURL); OReentrantResourcePool<String, DB> pool; lock(); try { pool = pools.get(dbPooledName); if (pool == null) // CREATE A NEW ONE pool = new OReentrantResourcePool<String, DB>(maxSize, this); // PUT IN THE POOL MAP ONLY IF AUTHENTICATION SUCCEED pools.put(dbPooledName, pool); } finally { unlock(); } final DB db = pool.getResource(iURL, timeout, iUserName, iUserPassword, iOptionalParams); return db; }