private synchronized void generateNacksForPendingAcks(String cause) { for (Entry<Listener, SortedMap<Long, PendingConfirm>> entry : this.pendingConfirms.entrySet()) { Listener listener = entry.getKey(); for (Entry<Long, PendingConfirm> confirmEntry : entry.getValue().entrySet()) { confirmEntry.getValue().setCause(cause); if (this.logger.isDebugEnabled()) { this.logger.debug(this.toString() + " PC:Nack:(close):" + confirmEntry.getKey()); } processAck(confirmEntry.getKey(), false, false, false); } listener.revoke(this); } if (this.logger.isDebugEnabled()) { this.logger.debug("PendingConfirms cleared"); } this.pendingConfirms.clear(); this.listenerForSeq.clear(); this.listeners.clear(); }
private synchronized void generateNacksForPendingAcks(String cause) { for (Entry<Listener, SortedMap<Long, PendingConfirm>> entry : this.pendingConfirms.entrySet()) { Listener listener = entry.getKey(); for (Entry<Long, PendingConfirm> confirmEntry : entry.getValue().entrySet()) { confirmEntry.getValue().setCause(cause); if (this.logger.isDebugEnabled()) { this.logger.debug(this.toString() + " PC:Nack:(close):" + confirmEntry.getKey()); } processAck(confirmEntry.getKey(), false, false, false); } listener.revoke(this); } if (this.logger.isDebugEnabled()) { this.logger.debug("PendingConfirms cleared"); } this.pendingConfirms.clear(); this.listenerForSeq.clear(); this.listeners.clear(); }