Class DefaultInvocationGate

  • All Implemented Interfaces:
    InvocationGate

    public class DefaultInvocationGate
    extends java.lang.Object
    implements InvocationGate
    This class serves as a gateway for invocations of a "costly" operation on a critical execution path.
    • Constructor Detail

      • DefaultInvocationGate

        public DefaultInvocationGate()
      • DefaultInvocationGate

        public DefaultInvocationGate​(long minDelayThreshold,
                                     long maxDelayThreshold,
                                     long currentTime)
    • Method Detail

      • isTooSoon

        public final boolean isTooSoon​(long currentTime)
        Description copied from interface: InvocationGate
        The caller of this method can decide to skip further work if the returned value is true. Implementations should be able to give a reasonable answer even if current time date is unavailable.
        Specified by:
        isTooSoon in interface InvocationGate
        Returns:
        if true, caller should skip further work
      • getInvocationCounter

        public long getInvocationCounter()