javax.enterprise.inject
Annotation Type New


@Target(value={FIELD,PARAMETER,METHOD,TYPE})
@Retention(value=RUNTIME)
@Documented
@Qualifier
public @interface New

The built-in qualifier type.

The @New qualifier allows the application to obtain a new instance of a bean which is not bound to the declared scope, but has had dependency injection performed.

 @Produces @ConversationScoped 
 @Special Order getSpecialOrder(@New(Order.class) Order order) {
    ...
    return order;
 }
 

When the @New qualifier is specified at an injection point and no value member is explicitly specified, the container defaults the value to the declared type of the injection point. So the following injection point has qualifier @New(Order.class):

 @Produces @ConversationScoped 
 @Special Order getSpecialOrder(@New Order order) { ... }
 

Author:
Gavin King, Pete Muir

Optional Element Summary
 java.lang.Class<?> value
          Specifies the bean class of the new instance.
 

value

public abstract java.lang.Class<?> value

Specifies the bean class of the new instance. The class must be the bean class of an enabled or disabled bean. The bean class need not be deployed in a bean archive.

Defaults to the declared type of the injection point if not specified.

Returns:
the bean class of the new instance
Default:
javax.enterprise.inject.New.class


Copyright © 2008-2009 Seam Framework. All Rights Reserved.