Interface SyntheticBeanCreator<T>
-
- Type Parameters:
T
- the bean class of the synthetic bean
public interface SyntheticBeanCreator<T>
Creation function for a synthetic bean defined bySyntheticBeanBuilder
. CDI container will create an instance of the creation function every time when it needs to obtain an instance of the synthetic bean. Implementations must bepublic
classes with apublic
zero-parameter constructor; they must not be beans.- Since:
- 4.0
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description T
create(Instance<Object> lookup, Parameters params)
Creates an instance of the synthetic bean.
-
-
-
Method Detail
-
create
T create(Instance<Object> lookup, Parameters params)
Creates an instance of the synthetic bean. May only returnnull
if the synthetic bean is@Dependent
.The
Instance
parameter may be used to simulate producer method parameter injection. However,@Dependent
bean instances obtained from theInstance
during execution remain managed until the synthetic bean instance is destroyed. Therefore, implementations are encouraged to destroy unneeded@Dependent
bean instances obtained from theInstance
.If the synthetic bean is
@Dependent
, theInjectionPoint
to which it is injected may be looked up from theInstance
parameter.The parameter map contains the same values that were passed to the
SyntheticBeanBuilder
that defined the synthetic bean.- Parameters:
lookup
- anInstance
that can be used to lookup other beans, nevernull
params
- the parameter map, nevernull
- Returns:
- an instance of the bean, may only be
null
if the synthetic bean is@Dependent
-
-