java.lang.Object
io.fluxzero.sdk.tracking.handling.HandleDocumentFilter
- All Implemented Interfaces:
io.fluxzero.common.handling.MessageFilter<DeserializingMessage>
public class HandleDocumentFilter
extends Object
implements io.fluxzero.common.handling.MessageFilter<DeserializingMessage>
A
MessageFilter that routes DeserializingMessage instances to methods annotated with
HandleDocument, based on the message's topic.
This filter checks if the target handler method is annotated with @HandleDocument, and if so,
whether the resolved topic from the annotation matches the topic of the incoming message. If both conditions are met,
the message will be considered eligible for handling by the method.
The resolved topic is derived using ClientUtils.getTopic(HandleDocument, Executable),
which supports dynamic resolution based on annotation configuration and handler context.
Annotation lookups are memoized for performance.
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionbooleantest(DeserializingMessage message, Executable executable, Class<? extends Annotation> handlerAnnotation) Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface io.fluxzero.common.handling.MessageFilter
and, getLeastSpecificAllowedClass
-
Constructor Details
-
HandleDocumentFilter
public HandleDocumentFilter()
-
-
Method Details
-
test
public boolean test(DeserializingMessage message, Executable executable, Class<? extends Annotation> handlerAnnotation) - Specified by:
testin interfaceio.fluxzero.common.handling.MessageFilter<DeserializingMessage>
-