Class MapEventKeeper

java.lang.Object
com.apple.foundationdb.MapEventKeeper
All Implemented Interfaces:
EventKeeper

public class MapEventKeeper extends Object implements EventKeeper
A simple map-based EventKeeper. This class is thread-safe(per the EventKeeper spec). It holds all counters in memory;
  • Constructor Details

    • MapEventKeeper

      public MapEventKeeper()
  • Method Details

    • count

      public void count(EventKeeper.Event event, long amt)
      Description copied from interface: EventKeeper
      Count the number of events which occurred.
      Specified by:
      count in interface EventKeeper
      Parameters:
      event - the event which occurred
      amt - the number of times that even occurred
    • timeNanos

      public void timeNanos(EventKeeper.Event event, long nanos)
      Description copied from interface: EventKeeper
      Count the time taken to perform an event, in nanoseconds. Note that event.isTimeEvent() should return true here.
      Specified by:
      timeNanos in interface EventKeeper
      Parameters:
      event - the event which was timed (the event should be a time event).
      nanos - the amount of time taken (in nanoseconds)
    • getCount

      public long getCount(EventKeeper.Event event)
      Description copied from interface: EventKeeper
      Get the number of events which occurred since this timer was created. If the event was never recorded, then this returns 0.
      Specified by:
      getCount in interface EventKeeper
      Parameters:
      event - the event to get the count for
      Returns:
      the number of times the event was triggered. If the event has never been triggered, then this returns 0
    • getTimeNanos

      public long getTimeNanos(EventKeeper.Event event)
      Description copied from interface: EventKeeper
      Get the amount of time taken by this event, in nanoseconds.
      Specified by:
      getTimeNanos in interface EventKeeper
      Parameters:
      event - the event to get the time for
      Returns:
      the total time measured for this event, in nanoseconds. If the event was never recorded, return 0 instead.