code: public void removeAll(Object object) {
  		for (Entry<Integer, List<EventQueueEntry>> e : queue.entrySet()) {
  			List<EventQueueEntry> entries = e.getValue();
  			
  			List<EventQueueEntry> toRemove = new LinkedList<>();
  			synchronized (entries) {
  				for (EventQueueEntry entry : entries) {
  					if (entry.getObject() == object) {
  						toRemove.add(entry);
  					}
  				}
  				
  				entries.removeAll(toRemove);
  				
  				// TODO: can we safely remove `entries` if it's empty here?
  			}
  		}
  		
  		log.debug(
  				"Removed {} from notification queue for {}",
  				object, eventType);
  	}
docs: Removes all handler methods in the given object from notifications by
  this queue.
  @param object the object to deregister