Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
  * JBoss, Home of Professional Open Source
  * Copyright 2008, Red Hat Middleware LLC, 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
 
    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