Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * JBoss, Home of Professional Open Source
   * Copyright 2010, Red Hat, Inc., and individual contributors
   * by the @authors tag. See the copyright.txt in the distribution for a
   * full listing of individual contributors.
   *
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
  * http://www.apache.org/licenses/LICENSE-2.0
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,  
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 
 package javax.enterprise.event;
 
 

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:

  • the specified type is the type parameter specified at the injection point, and
  • the specified qualifiers are the qualifiers specified at the injection point.

Parameters:
<T> the type of the event object
Author(s):
Gavin King
Pete Muir
David Allen
 
 
 public interface Event<T> {

    

Fires an event with the specified qualifiers and notifies observers.

Parameters:
event the event object
Throws:
java.lang.IllegalArgumentException if the runtime type of the event object contains a type variable
ObserverException if a notified observer throws a checked exception, it will be wrapped and rethrown as an (unchecked) ObserverException
 
     public void fire(T event);

    

Obtains a child Event for the given additional required qualifiers.

Parameters:
qualifiers the additional specified qualifiers
Returns:
the child Event
Throws:
java.lang.IllegalArgumentException if passed two instances of the same qualifier type, or an instance of an annotation that is not a qualifier type
    public Event<T> select(Annotation... qualifiers);

    

Obtains a child Event for the given required type and additional required qualifiers.

Parameters:
<U> the specified type
subtype a java.lang.Class representing the specified type
qualifiers the additional specified qualifiers
Returns:
the child Event
Throws:
java.lang.IllegalArgumentException if passed two instances of the same qualifier type, or an instance of an annotation that is not a qualifier type
    public <U extends T> Event<U> select(Class<U> subtypeAnnotation... qualifiers);

    

Obtains a child Event for the given required type and additional required qualifiers.

Parameters:
<U> the specified type
subtype a javax.enterprise.util.TypeLiteral representing the specified type
qualifiers the additional specified qualifiers
Returns:
the child Event
Throws:
java.lang.IllegalArgumentException if passed two instances of the same qualifier type, or an instance of an annotation that is not a qualifier type
    public <U extends T> Event<U> select(TypeLiteral<U> subtypeAnnotation... qualifiers);
New to GrepCode? Check out our FAQ X