public void unregister(PeerNATInitiator initiator) { List to_cancel; synchronized (initiators) { LinkedList requests = (LinkedList) initiators.remove(initiator); if (requests == null) { Debug.out("initiator not present"); return; } else { to_cancel = requests; } } Iterator it = to_cancel.iterator(); while (it.hasNext()) { PeerNATTraversal traversal = (PeerNATTraversal) it.next(); traversal.cancel(); } }