@Override public boolean remove(Object o) { boolean removed = super.remove(o); if (removed) { if (maxTotalConnectionsEnabled) freeChannels.release(); if (maxConnectionsPerHostEnabled) { Object partitionKey = channelId2PartitionKey.remove(Channel.class.cast(o).getId()); if (partitionKey != null) { Semaphore freeChannelsForHost = freeChannelsPerHost.get(partitionKey); if (freeChannelsForHost != null) freeChannelsForHost.release(); } } } return removed; } };
openChannels = new CleanupChannelGroup("asyncHttpClient") { @Override public boolean remove(Object o) { freeChannels = new Semaphore(config.getMaxConnections()); } else { openChannels = new CleanupChannelGroup("asyncHttpClient"); freeChannels = null;
openChannels = new CleanupChannelGroup("asyncHttpClient") { @Override public boolean remove(Object o) { freeChannels = new Semaphore(config.getMaxConnections()); } else { openChannels = new CleanupChannelGroup("asyncHttpClient"); freeChannels = null;
@Override public boolean remove(Object o) { boolean removed = super.remove(o); if (removed) { freeChannels.release(); if (maxConnectionsPerHostEnabled) { String poolKey = channelId2KeyPool.remove(Channel.class.cast(o).getId()); if (poolKey != null) { Semaphore freeChannelsForHost = freeChannelsPerHost.get(poolKey); if (freeChannelsForHost != null) freeChannelsForHost.release(); } } } return removed; } };