Packages

class KeyEqualsFinder extends MonitorMatchFinder with StrictLogging

A simple match finder that checks for equivalent keys.

This class will work with byte arrays or any object that has a working equals implementation (for example, String).

This class will attempt to handle multiple occurences of the same key by storing the most recent reference topic offset that a key has been seen at and then ignoring any reference message that occur before that offset. This implementation is most efficient if your keys are Strings or if they are objects that have a working toString method. Byte arrays will have to be SHA-1 hashed and converted to a hex string internally for us with this finder.

This finder will periodically do garbage collection on its internal map of seen keys to avoid blowing the heap. The actual collection will occur outside of the main thread and remove keys whose last seen offset is less than 1000 less than the current start offset of the reference window.

Linear Supertypes
StrictLogging, MonitorMatchFinder, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. KeyEqualsFinder
  2. StrictLogging
  3. MonitorMatchFinder
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new KeyEqualsFinder()

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  6. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  7. def equals(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  8. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  9. def find(testMessage: MonitorObjectEnvelope, referenceWindow: Seq[MonitorObjectEnvelope]): MonitorMatchFindResult

    Looks for a reference message in the provided referenceWindow that should match the given testMessage.

    Looks for a reference message in the provided referenceWindow that should match the given testMessage.

    testMessage

    The message that came from the test topic

    referenceWindow

    The window of messages available for consideration from the reference topic

    returns

    A MonitorMatchFindResult based on whether or not a match was found.

    Definition Classes
    KeyEqualsFinderMonitorMatchFinder
  10. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. def hashCode(): Int
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  12. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  13. val logger: Logger
    Attributes
    protected
    Definition Classes
    StrictLogging
  14. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  15. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  16. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  17. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  18. def toString(): String
    Definition Classes
    AnyRef → Any
  19. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  20. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  21. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from StrictLogging

Inherited from MonitorMatchFinder

Inherited from AnyRef

Inherited from Any

Ungrouped