public synchronized String getDebugInfo() { StringBuilder builder = new StringBuilder(); builder.append("Hosts: ").append(StringUtils.join(hosts, ", ")).append("\n"); builder.append("Num connections per host: ").append(numConnections).append("\n"); builder.append("\n"); for (String host : hosts) { builder.append(host).append(": "); builder.append(keyedConnectionPool.getNumActive(host)).append(" active; "); builder.append(keyedConnectionPool.getNumIdle(host)).append(" idle.\n"); } builder.append("\n"); builder.append("Total: "); builder.append(this.getNumActive()).append(" active; "); builder.append(this.getNumIdle()).append(" idle.\n"); builder.append("\n"); builder.append("Queue: ").append(StringUtils.join(hostQueue.toArray(), ", ")); return builder.toString(); }
@Override public int getNumIdle() throws UnsupportedOperationException { return keyedConnectionPool.getNumIdle(); }