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


Submit a bug or feature

Copyright © 2009, 2010, Oracle Corporation and/or its affiliates. All Rights Reserved. Use is subject to license terms.

Generated on 4-June-2010 04:34