public synchronized void registerEvent()

in achievements-server/src/main/java/org/jetbrains/buildserver/achievements/impl/UserEventsImpl.java [23:43]


  public synchronized void registerEvent(@NotNull String eventName) {
    ArrayList<Long> eventLog = myEventLog.get(eventName);
    if (eventLog == null) {
      eventLog = new ArrayList<Long>();
      myEventLog.put(eventName, eventLog);
    }

    long mostRecentEvent = myTimeService.now();
    long oldestEvent = mostRecentEvent - Dates.ONE_DAY;
    eventLog.add(mostRecentEvent);

    Iterator<Long> it = eventLog.iterator();
    while (it.hasNext()) {
      if (it.next() > oldestEvent) continue;
      it.remove();
    }

    eventLog.trimToSize();

    LOG.debug("New event registered: " + eventName + ", num events: " + eventLog.size());
  }