Package javax.enterprise.event
Interface Event<T>
- Type Parameters:
T- the type of the event object
public interface Event<T>
Allows the application to fire events of a particular type.
Beans fire events via an instance of the Event interface, which may be injected:
@Inject @Any Event<LoggedInEvent> loggedInEvent;
The fire() method accepts an event object:
public void login() {
...
loggedInEvent.fire( new LoggedInEvent(user) );
}
Any combination of qualifiers may be specified at the injection point:
@Inject @Admin Event<LoggedInEvent> adminLoggedInEvent;
Or, the @Any qualifier may be used, allowing the application to specify qualifiers
dynamically:
@Inject @Any Event<LoggedInEvent> loggedInEvent;
For an injected Event:
- the specified type is the type parameter specified at the injection point, and
- the specified qualifiers are the qualifiers specified at the injection point.
-
Method Summary
Modifier and TypeMethodDescriptionvoidFires an event with the specified qualifiers and notifies observers.select(Annotation... qualifiers) Obtains a child Event for the given additional required qualifiers.select(Class<U> subtype, Annotation... qualifiers) Obtains a child Event for the given required type and additional required qualifiers.select(TypeLiteral<U> subtype, Annotation... qualifiers) Obtains a child Event for the given required type and additional required qualifiers.
-
Method Details
-
fire
Fires an event with the specified qualifiers and notifies observers.
- Parameters:
event- the event object- Throws:
IllegalArgumentException- if the runtime type of the event object contains a type variableObserverException- if a notified observer throws a checked exception, it will be wrapped and rethrown as an (unchecked)ObserverException
-
select
Obtains a child Event for the given additional required qualifiers.
- Parameters:
qualifiers- the additional specified qualifiers- Returns:
- the child Event
- Throws:
IllegalArgumentException- if passed two instances of the same qualifier type, or an instance of an annotation that is not a qualifier type
-
select
Obtains a child Event for the given required type and additional required qualifiers.
- Type Parameters:
U- the specified type- Parameters:
subtype- aClassrepresenting the specified typequalifiers- the additional specified qualifiers- Returns:
- the child Event
- Throws:
IllegalArgumentException- if passed two instances of the same qualifier type, or an instance of an annotation that is not a qualifier type
-
select
Obtains a child Event for the given required type and additional required qualifiers.
- Type Parameters:
U- the specified type- Parameters:
subtype- aTypeLiteralrepresenting the specified typequalifiers- the additional specified qualifiers- Returns:
- the child Event
- Throws:
IllegalArgumentException- if passed two instances of the same qualifier type, or an instance of an annotation that is not a qualifier type
-