Package net.engio.mbassy.dispatch
Class FilteredMessageDispatcher
- java.lang.Object
-
- net.engio.mbassy.subscription.AbstractSubscriptionContextAware
-
- net.engio.mbassy.dispatch.DelegatingMessageDispatcher
-
- net.engio.mbassy.dispatch.FilteredMessageDispatcher
-
- All Implemented Interfaces:
IMessageDispatcher
,ISubscriptionContextAware
public final class FilteredMessageDispatcher extends DelegatingMessageDispatcher
A dispatcher that implements message filtering based on the filter configuration of the associated message handler. It will delegate message delivery to another message dispatcher after having performed the filtering logic.
-
-
Field Summary
Fields Modifier and Type Field Description private IMessageFilter[]
filter
-
Constructor Summary
Constructors Constructor Description FilteredMessageDispatcher(IMessageDispatcher dispatcher)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
dispatch(MessagePublication publication, java.lang.Object message, java.lang.Iterable listeners)
Delivers the given message to the given set of listeners.private boolean
passesFilter(java.lang.Object message)
-
Methods inherited from class net.engio.mbassy.dispatch.DelegatingMessageDispatcher
getDelegate, getInvocation
-
Methods inherited from class net.engio.mbassy.subscription.AbstractSubscriptionContextAware
getContext
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface net.engio.mbassy.subscription.ISubscriptionContextAware
getContext
-
-
-
-
Field Detail
-
filter
private final IMessageFilter[] filter
-
-
Constructor Detail
-
FilteredMessageDispatcher
public FilteredMessageDispatcher(IMessageDispatcher dispatcher)
-
-
Method Detail
-
passesFilter
private boolean passesFilter(java.lang.Object message)
-
dispatch
public void dispatch(MessagePublication publication, java.lang.Object message, java.lang.Iterable listeners)
Description copied from interface:IMessageDispatcher
Delivers the given message to the given set of listeners. Delivery may be delayed, aborted or restricted in various ways, depending on the configuration of the dispatcher- Parameters:
publication
- The message publication that initiated the dispatchmessage
- The message that should be delivered to the listenerslisteners
- The listeners that should receive the message
-
-