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.
- Alphabetic
- By Inheritance
- KeyEqualsFinder
- StrictLogging
- MonitorMatchFinder
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new KeyEqualsFinder()
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
find(testMessage: MonitorObjectEnvelope, referenceWindow: Seq[MonitorObjectEnvelope]): MonitorMatchFindResult
Looks for a reference message in the provided
referenceWindowthat should match the giventestMessage.Looks for a reference message in the provided
referenceWindowthat should match the giventestMessage.- 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
- KeyEqualsFinder → MonitorMatchFinder
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
val
logger: Logger
- Attributes
- protected
- Definition Classes
- StrictLogging
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )