code: public void cleanReferenceCache() {
          final long now = currentDateSupplier.get().getTime();
          final Iterator<HardReference> it = hardReferences.iterator();
          while (it.hasNext()) {
              if (it.next().keeptSince.getTime() + REFERENCE_KEEPING_TIME <= now) {
                  it.remove();
              }
          }
      }
docs: Checks and cleans cached references that have timed out.