Enum Class DisabledStatsCounter

java.lang.Object
java.lang.Enum<DisabledStatsCounter>
com.github.benmanes.caffeine.cache.stats.DisabledStatsCounter
All Implemented Interfaces:
StatsCounter, Serializable, Comparable<DisabledStatsCounter>, Constable

enum DisabledStatsCounter extends Enum<DisabledStatsCounter> implements StatsCounter
A StatsCounter implementation that does not record any cache events.
  • Enum Constant Details

  • Constructor Details

    • DisabledStatsCounter

      private DisabledStatsCounter()
  • Method Details

    • values

      public static DisabledStatsCounter[] values()
      Returns an array containing the constants of this enum class, in the order they are declared.
      Returns:
      an array containing the constants of this enum class, in the order they are declared
    • valueOf

      public static DisabledStatsCounter valueOf(String name)
      Returns the enum constant of this class with the specified name. The string must match exactly an identifier used to declare an enum constant in this class. (Extraneous whitespace characters are not permitted.)
      Parameters:
      name - the name of the enum constant to be returned.
      Returns:
      the enum constant with the specified name
      Throws:
      IllegalArgumentException - if this enum class has no constant with the specified name
      NullPointerException - if the argument is null
    • recordHits

      public void recordHits(int count)
      Description copied from interface: StatsCounter
      Records cache hits. This should be called when a cache request returns a cached value.
      Specified by:
      recordHits in interface StatsCounter
      Parameters:
      count - the number of hits to record
    • recordMisses

      public void recordMisses(int count)
      Description copied from interface: StatsCounter
      Records cache misses. This should be called when a cache request returns a value that was not found in the cache. This method should be called by the loading thread, as well as by threads blocking on the load. Multiple concurrent calls to Cache lookup methods with the same key on an absent value should result in a single call to either recordLoadSuccess or recordLoadFailure and multiple calls to this method, despite all being served by the results of a single load operation.
      Specified by:
      recordMisses in interface StatsCounter
      Parameters:
      count - the number of misses to record
    • recordLoadSuccess

      public void recordLoadSuccess(long loadTime)
      Description copied from interface: StatsCounter
      Records the successful load of a new entry. This method should be called when a cache request causes an entry to be loaded (such as by Cache.get(K, java.util.function.Function<? super K, ? extends V>) or Map.computeIfAbsent(K, java.util.function.Function<? super K, ? extends V>)) and the loading completes successfully. In contrast to StatsCounter.recordMisses(int), this method should only be called by the loading thread.
      Specified by:
      recordLoadSuccess in interface StatsCounter
      Parameters:
      loadTime - the number of nanoseconds the cache spent computing or retrieving the new value
    • recordLoadFailure

      public void recordLoadFailure(long loadTime)
      Description copied from interface: StatsCounter
      Records the failed load of a new entry. This method should be called when a cache request causes an entry to be loaded (such as by Cache.get(K, java.util.function.Function<? super K, ? extends V>) or Map.computeIfAbsent(K, java.util.function.Function<? super K, ? extends V>)), but an exception is thrown while loading the entry or the loading function returns null. In contrast to StatsCounter.recordMisses(int), this method should only be called by the loading thread.
      Specified by:
      recordLoadFailure in interface StatsCounter
      Parameters:
      loadTime - the number of nanoseconds the cache spent computing or retrieving the new value prior to discovering the value doesn't exist or an exception being thrown
    • recordEviction

      public void recordEviction()
      Description copied from interface: StatsCounter
      Records the eviction of an entry from the cache. This should only been called when an entry is evicted due to the cache's eviction strategy, and not as a result of manual invalidations.
      Specified by:
      recordEviction in interface StatsCounter
    • snapshot

      public CacheStats snapshot()
      Description copied from interface: StatsCounter
      Returns a snapshot of this counter's values. Note that this may be an inconsistent view, as it may be interleaved with update operations.

      Note: the values of the metrics are undefined in case of overflow (though it is guaranteed not to throw an exception). If you require specific handling, we recommend implementing your own stats collector.

      Specified by:
      snapshot in interface StatsCounter
      Returns:
      a snapshot of this counter's values
    • toString

      public String toString()
      Overrides:
      toString in class Enum<DisabledStatsCounter>