public boolean add(E e, long leasetime) { times.put(e, getExpirationTime(leasetime)); boolean ret = entries.add(e); //if(ret) checkStale(); return ret; }
/** * Update the timestamp of e. * @param entry The entry. */ public void touch(E e, long leasetime) { times.put(e, getExpirationTime(leasetime)); // Does only reorder when element is added again :-( // http://stackoverflow.com/questions/6952660/java-priority-queue-reordering-when-editing-elements entries.remove(e); entries.add(e); checkStale(); }