Class ApplicationMatcherSugar
- java.lang.Object
-
- org.refcodes.eventbus.ext.application.ApplicationMatcherSugar
-
public class ApplicationMatcherSugar extends Object
Declarative syntactic sugar which may be statically imported in order to allow declarative definitions for theApplicationMatcher
elements.
-
-
Constructor Summary
Constructors Constructor Description ApplicationMatcherSugar()
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <E extends ApplicationEvent,A>
ApplicationMatcheractionEqualWith(A aAction)
Factory method to create an "EQUAL WITH" matcher for the given action compared with the action stored in theEventMetaData
.static ApplicationMatcher
aliasEqualWith(String aAlias)
Factory method to create an "EQUAL WITH" matcher for the given name compared with the name stored in theEventMetaData
.static ApplicationMatcher
and(ApplicationMatcher... aEventMatchers)
Factory method to create an "AND" matcher for the given matchers.static ApplicationMatcher
catchAll()
Catches all events, no matching is done.static ApplicationMatcher
catchNone()
Catches no event, no matching is done.static ApplicationMatcher
channelEqualWith(String aChannel)
Factory method to create an "EQUAL WITH" matcher for the given channel compared with the channel stored in theEventMetaData
.static ApplicationMatcher
groupEqualWith(String aGroup)
Factory method to create an "EQUAL WITH" matcher for the given group compared with the group stored in theEventMetaData
.static ApplicationMatcher
isAssignableFrom(Class<?> aEventType)
Factory method to create an event matcher by event type.static ApplicationMatcher
or(ApplicationMatcher... aEventMatchers)
Factory method to create an "OR" matcher for the given matchers.static <E extends ApplicationEvent,PT>
ApplicationMatcherpublisherIsAssignableFrom(Class<? extends PT> aPublisherType)
Factory method to create an event matcher by event publisher type.static ApplicationMatcher
uidIdEqualWith(String aUid)
Factory method to create an "EQUAL WITH" matcher for the given UID compared with the UID stored in theEventMetaData
.
-
-
-
Method Detail
-
catchAll
public static ApplicationMatcher catchAll()
Catches all events, no matching is done.- Returns:
- The "catch-all"
ApplicationMatcher
.
-
catchNone
public static ApplicationMatcher catchNone()
Catches no event, no matching is done.- Returns:
- The "catch-none"
ApplicationMatcher
.
-
isAssignableFrom
public static ApplicationMatcher isAssignableFrom(Class<?> aEventType)
Factory method to create an event matcher by event type.- Parameters:
aEventType
- The event type to be matched by this matcher.- Returns:
- An event matcher by event type.
-
publisherIsAssignableFrom
public static <E extends ApplicationEvent,PT> ApplicationMatcher publisherIsAssignableFrom(Class<? extends PT> aPublisherType)
Factory method to create an event matcher by event publisher type.- Type Parameters:
E
- the element typePT
- The publisher descriptor type- Parameters:
aPublisherType
- The event publisher type to be matched by this matcher.- Returns:
- An event matcher by event type.
-
or
@SafeVarargs public static ApplicationMatcher or(ApplicationMatcher... aEventMatchers)
Factory method to create an "OR" matcher for the given matchers.- Parameters:
aEventMatchers
- The matchers to be combined by an "OR".- Returns:
- An "OR" matcher.
-
and
@SafeVarargs public static ApplicationMatcher and(ApplicationMatcher... aEventMatchers)
Factory method to create an "AND" matcher for the given matchers.- Parameters:
aEventMatchers
- The matchers to be combined by an "AND".- Returns:
- An "AND" matcher.
-
aliasEqualWith
public static ApplicationMatcher aliasEqualWith(String aAlias)
Factory method to create an "EQUAL WITH" matcher for the given name compared with the name stored in theEventMetaData
.- Parameters:
aAlias
- The name to be compared with aGenericMetaDataEvent
'sEventMetaData
's name property.- Returns:
- An "EQUAL WITH" matcher regarding the
GenericMetaDataEvent
's name property.
-
groupEqualWith
public static ApplicationMatcher groupEqualWith(String aGroup)
Factory method to create an "EQUAL WITH" matcher for the given group compared with the group stored in theEventMetaData
.- Parameters:
aGroup
- The group to be compared with aGenericMetaDataEvent
'sEventMetaData
's group property.- Returns:
- An "EQUAL WITH" matcher regarding the
GenericMetaDataEvent
's group property.
-
channelEqualWith
public static ApplicationMatcher channelEqualWith(String aChannel)
Factory method to create an "EQUAL WITH" matcher for the given channel compared with the channel stored in theEventMetaData
.- Parameters:
aChannel
- The channel to be compared with aGenericMetaDataEvent
'sEventMetaData
's channel property.- Returns:
- An "EQUAL WITH" matcher regarding the
GenericMetaDataEvent
's channel property.
-
uidIdEqualWith
public static ApplicationMatcher uidIdEqualWith(String aUid)
Factory method to create an "EQUAL WITH" matcher for the given UID compared with the UID stored in theEventMetaData
.- Parameters:
aUid
- The UID to be compared with aGenericMetaDataEvent
'sEventMetaData
's UID property.- Returns:
- An "EQUAL WITH" matcher regarding the
GenericMetaDataEvent
's UID property.
-
actionEqualWith
public static <E extends ApplicationEvent,A> ApplicationMatcher actionEqualWith(A aAction)
Factory method to create an "EQUAL WITH" matcher for the given action compared with the action stored in theEventMetaData
.- Type Parameters:
E
- the element typeA
- The type of the action stored in the event. CAUTION: The drawback of not using generic generic type declaration on a class level is no granted type safety, the advantage is the ease of use: Sub-classes can be used out of the box.- Parameters:
aAction
- The action to be compared with aGenericMetaDataEvent
'sEventMetaData
's action property.- Returns:
- An "EQUAL WITH" matcher regarding the
GenericActionEvent
's action property.
-
-