Class CountingCircuitStats

java.lang.Object
dev.failsafe.internal.CountingCircuitStats
All Implemented Interfaces:
CircuitStats

class CountingCircuitStats extends Object implements CircuitStats
A CircuitStats implementation that counts execution results using a BitSet.
  • Field Details

    • bitSet

      final BitSet bitSet
    • size

      private final int size
    • currentIndex

      volatile int currentIndex
      Index to write next entry to
    • occupiedBits

      private volatile int occupiedBits
    • successes

      private volatile int successes
    • failures

      private volatile int failures
  • Constructor Details

    • CountingCircuitStats

      public CountingCircuitStats(int size, CircuitStats oldStats)
  • Method Details

    • copyStats

      void copyStats(CircuitStats oldStats)
      Copies the most recent stats from the oldStats into this in order from oldest to newest.
    • recordSuccess

      public void recordSuccess()
      Specified by:
      recordSuccess in interface CircuitStats
    • recordFailure

      public void recordFailure()
      Specified by:
      recordFailure in interface CircuitStats
    • getExecutionCount

      public int getExecutionCount()
      Specified by:
      getExecutionCount in interface CircuitStats
    • getFailureCount

      public int getFailureCount()
      Specified by:
      getFailureCount in interface CircuitStats
    • getFailureRate

      public int getFailureRate()
      Specified by:
      getFailureRate in interface CircuitStats
    • getSuccessCount

      public int getSuccessCount()
      Specified by:
      getSuccessCount in interface CircuitStats
    • getSuccessRate

      public int getSuccessRate()
      Specified by:
      getSuccessRate in interface CircuitStats
    • reset

      public void reset()
      Specified by:
      reset in interface CircuitStats
    • setNext

      int setNext(boolean value)
      Sets the value of the next bit in the bitset, returning the previous value, else -1 if no previous value was set for the bit.
      Parameters:
      value - true if positive/success, false if negative/failure
    • toString

      public String toString()
      Returns an array representation of the BitSet entries.
      Overrides:
      toString in class Object
    • indexAfter

      private int indexAfter(int index)
      Returns the index after the index.