producerCreditManager = new ClientProducerCreditManagerImpl(this, producerWindowSize);
credits = build(address); needInit = true; addToUnReferencedCache(address, credits);
private void addToUnReferencedCache(final SimpleString address, final ClientProducerCredits credits) { unReferencedCredits.put(address, credits); if (unReferencedCredits.size() > MAX_UNREFERENCED_CREDITS_CACHE_SIZE) { // Remove the oldest entry Iterator<Map.Entry<SimpleString, ClientProducerCredits>> iter = unReferencedCredits.entrySet().iterator(); Map.Entry<SimpleString, ClientProducerCredits> oldest = iter.next(); iter.remove(); removeEntry(oldest.getKey(), oldest.getValue()); } }
@Override public synchronized void returnCredits(final SimpleString address) { ClientProducerCredits credits = producerCredits.get(address); if (credits != null && credits.decrementRefCount() == 0) { addToUnReferencedCache(address, credits); } }
@Override public synchronized void returnCredits(final SimpleString address) { ClientProducerCredits credits = producerCredits.get(address); if (credits != null && credits.decrementRefCount() == 0) { addToUnReferencedCache(address, credits); } }
credits = build(address); needInit = true; addToUnReferencedCache(address, credits);
private void addToUnReferencedCache(final SimpleString address, final ClientProducerCredits credits) { unReferencedCredits.put(address, credits); if (unReferencedCredits.size() > MAX_UNREFERENCED_CREDITS_CACHE_SIZE) { // Remove the oldest entry Iterator<Map.Entry<SimpleString, ClientProducerCredits>> iter = unReferencedCredits.entrySet().iterator(); Map.Entry<SimpleString, ClientProducerCredits> oldest = iter.next(); iter.remove(); removeEntry(oldest.getKey(), oldest.getValue()); } }
@Override public synchronized void returnCredits(final SimpleString address) { ClientProducerCredits credits = producerCredits.get(address); if (credits != null && credits.decrementRefCount() == 0) { addToUnReferencedCache(address, credits); } }
producerCreditManager = new ClientProducerCreditManagerImpl(this, producerWindowSize);
credits = build(address); needInit = true; addToUnReferencedCache(address, credits);
private void addToUnReferencedCache(final SimpleString address, final ClientProducerCredits credits) { unReferencedCredits.put(address, credits); if (unReferencedCredits.size() > MAX_UNREFERENCED_CREDITS_CACHE_SIZE) { // Remove the oldest entry Iterator<Map.Entry<SimpleString, ClientProducerCredits>> iter = unReferencedCredits.entrySet().iterator(); Map.Entry<SimpleString, ClientProducerCredits> oldest = iter.next(); iter.remove(); removeEntry(oldest.getKey(), oldest.getValue()); } }
@Override public synchronized void returnCredits(final SimpleString address) { ClientProducerCredits credits = producerCredits.get(address); if (credits != null && credits.decrementRefCount() == 0) { addToUnReferencedCache(address, credits); } }
producerCreditManager = new ClientProducerCreditManagerImpl(this, producerWindowSize);
credits = build(address); needInit = true; addToUnReferencedCache(address, credits);
private void addToUnReferencedCache(final SimpleString address, final ClientProducerCredits credits) { unReferencedCredits.put(address, credits); if (unReferencedCredits.size() > MAX_UNREFERENCED_CREDITS_CACHE_SIZE) { // Remove the oldest entry Iterator<Map.Entry<SimpleString, ClientProducerCredits>> iter = unReferencedCredits.entrySet().iterator(); Map.Entry<SimpleString, ClientProducerCredits> oldest = iter.next(); iter.remove(); removeEntry(oldest.getKey(), oldest.getValue()); } }
@Override public synchronized void returnCredits(final SimpleString address) { ClientProducerCredits credits = producerCredits.get(address); if (credits != null && credits.decrementRefCount() == 0) { addToUnReferencedCache(address, credits); } }
producerCreditManager = new ClientProducerCreditManagerImpl(this, producerWindowSize);
credits = build(address); needInit = true; addToUnReferencedCache(address, credits);
private void addToUnReferencedCache(final SimpleString address, final ClientProducerCredits credits) { unReferencedCredits.put(address, credits); if (unReferencedCredits.size() > MAX_UNREFERENCED_CREDITS_CACHE_SIZE) { // Remove the oldest entry Iterator<Map.Entry<SimpleString, ClientProducerCredits>> iter = unReferencedCredits.entrySet().iterator(); Map.Entry<SimpleString, ClientProducerCredits> oldest = iter.next(); iter.remove(); removeEntry(oldest.getKey(), oldest.getValue()); } }
@Override public synchronized void returnCredits(final SimpleString address) { ClientProducerCredits credits = producerCredits.get(address); if (credits != null && credits.decrementRefCount() == 0) { addToUnReferencedCache(address, credits); } }