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 &.064;Any qualifier may
be used, allowing the application to specify qualifiers dynamically:
@Inject @Any Event<LoggedInEvent> loggedInEvent;
For an injected Event:
<T> the type of the event objectFires an event with the specified qualifiers and notifies observers.
event the event objectjava.lang.IllegalArgumentException if the runtime type of the event object contains a type variableObtains a child Event for the given additional required qualifiers.
qualifiers the additional specified qualifiersjava.lang.IllegalArgumentException if passed two instances of the
same qualifier type, or an instance of an annotation that is not
a qualifier typeObtains a child Event for the given required type and additional required qualifiers.
<U> the specified typesubtype a java.lang.Class representing the specified typequalifiers the additional specified qualifiersjava.lang.IllegalArgumentException if passed two instances of the
same qualifier type, or an instance of an annotation that is not
a qualifier typeObtains a child Event for the given required type and additional required qualifiers.
<U> the specified typesubtype a javax.enterprise.util.TypeLiteral representing the specified typequalifiers the additional specified qualifiersjava.lang.IllegalArgumentException if passed two instances of the
same qualifier type, or an instance of an annotation that is not
a qualifier type