Class ControlRate.Throttle

java.lang.Object
java.util.concurrent.locks.ReentrantLock
org.apache.nifi.processors.standard.ControlRate.Throttle
All Implemented Interfaces:
Serializable, Lock
Enclosing class:
ControlRate

private static class ControlRate.Throttle extends ReentrantLock
  • Field Details

    • maxRate

      private final AtomicLong maxRate
    • timePeriodMillis

      private final long timePeriodMillis
    • timedBuffer

      private final TimedBuffer<TimestampedLong> timedBuffer
    • logger

      private final org.apache.nifi.logging.ComponentLog logger
    • currentTimeSupplier

      private final LongSupplier currentTimeSupplier
    • penalizationPeriod

      private volatile long penalizationPeriod
    • penalizationExpired

      private volatile long penalizationExpired
    • lastUpdateTime

      private volatile long lastUpdateTime
  • Constructor Details

    • Throttle

      private Throttle(int timePeriod, TimeUnit unit, org.apache.nifi.logging.ComponentLog logger, LongSupplier currentTimeSupplier)
  • Method Details

    • setMaxRate

      public void setMaxRate(long maxRate)
    • lastUpdateTime

      public long lastUpdateTime()
    • tryAdd

      public boolean tryAdd(long value)