public class ObserverNotifier extends Object
| Modifier and Type | Field and Description |
|---|---|
protected CurrentEventMetadata |
currentEventMetadata |
| Modifier | Constructor and Description |
|---|---|
protected |
ObserverNotifier(TypeSafeObserverResolver resolver,
ServiceRegistry services,
boolean strict) |
| Modifier and Type | Method and Description |
|---|---|
protected Resolvable |
buildEventResolvable(Type eventType,
Annotation... qualifiers) |
protected Resolvable |
buildEventResolvable(Type eventType,
Set<Annotation> qualifiers) |
void |
clear()
Clears cached observer method resolutions and event type checks.
|
void |
fireEvent(Object event,
EventMetadata metadata,
Annotation... qualifiers)
Delivers the given event object to observer methods resolved based on the runtime type of the event object and given event qualifiers.
|
void |
fireEvent(Object event,
Resolvable resolvable)
Delivers the given event object to observer methods resolved based on the given resolvable.
|
void |
fireEvent(Type eventType,
Object event,
Annotation... qualifiers)
Delivers the given event object to observer methods resolved based on the given event type and qualifiers.
|
void |
fireEvent(Type eventType,
Object event,
EventMetadata metadata,
Annotation... qualifiers) |
protected void |
checkEventObjectType(Object event) |
void |
checkEventObjectType(Type eventType)
If strict checks are enabled this method performs event type checks on the given type.
|
void |
checkEventSubtype(Type subtype) |
<T> void |
notify(ResolvedObservers<T> observers,
T event,
EventMetadata metadata)
Delivers the given event object to given observer methods.
|
protected <T> void |
notifySyncObservers(List<ObserverMethod<? super T>> observers,
T event,
EventMetadata metadata) |
protected <T> void |
notifyTransactionObservers(List<ObserverMethod<? super T>> observers,
T event,
EventMetadata metadata) |
static ObserverNotifier |
of(String contextId,
TypeSafeObserverResolver resolver,
ServiceRegistry services,
boolean strict) |
<T> ResolvedObservers<T> |
resolveObserverMethods(Resolvable resolvable)
Resolves observer methods using the given resolvable.
|
<T> ResolvedObservers<T> |
resolveObserverMethods(Type eventType,
Annotation... qualifiers)
Resolves observer methods based on the given event type and qualifiers.
|
<T> ResolvedObservers<T> |
resolveObserverMethods(Type eventType,
Set<Annotation> qualifiers)
Resolves observer methods based on the given event type and qualifiers.
|
protected final CurrentEventMetadata currentEventMetadata
protected ObserverNotifier(TypeSafeObserverResolver resolver, ServiceRegistry services, boolean strict)
public static ObserverNotifier of(String contextId, TypeSafeObserverResolver resolver, ServiceRegistry services, boolean strict)
resolver - services - strict - indicates whether event type should be performed or notpublic <T> ResolvedObservers<T> resolveObserverMethods(Type eventType, Annotation... qualifiers)
event - the event objectqualifiers - given event qualifierspublic <T> ResolvedObservers<T> resolveObserverMethods(Type eventType, Set<Annotation> qualifiers)
event - the event objectqualifiers - given event qualifierspublic <T> ResolvedObservers<T> resolveObserverMethods(Resolvable resolvable)
resolvable - the given resolvablepublic void fireEvent(Object event, EventMetadata metadata, Annotation... qualifiers)
event - the event objectmetadata - event metadataqualifiers - event qualifierspublic void fireEvent(Type eventType, Object event, Annotation... qualifiers)
eventType - the given event typeevent - the given event objectqualifiers - event qualifierspublic void fireEvent(Type eventType, Object event, EventMetadata metadata, Annotation... qualifiers)
public void fireEvent(Object event, Resolvable resolvable)
event - the given event objectresolvable - protected Resolvable buildEventResolvable(Type eventType, Set<Annotation> qualifiers)
protected Resolvable buildEventResolvable(Type eventType, Annotation... qualifiers)
public void clear()
protected void checkEventObjectType(Object event)
public void checkEventObjectType(Type eventType)
eventType - the given event typeIllegalArgumentException - if the strict mode is enabled and the event type contains a type variable, wildcard or is
assignable to a container lifecycle event typepublic void checkEventSubtype(Type subtype)
subtype - IllegalArgumentException - if the strict mode is enabled and the subtype contains a type variableEvent.select(javax.enterprise.util.TypeLiteral, Annotation...)public <T> void notify(ResolvedObservers<T> observers, T event, EventMetadata metadata)
observers - the given observer methodsevent - the given event objectmetadata - event metadataprotected <T> void notifySyncObservers(List<ObserverMethod<? super T>> observers, T event, EventMetadata metadata)
protected <T> void notifyTransactionObservers(List<ObserverMethod<? super T>> observers, T event, EventMetadata metadata)
Copyright © 2016. All Rights Reserved.