Package io.quarkus.arc
Interface InjectableBean<T>
- Type Parameters:
T
-
- All Superinterfaces:
jakarta.enterprise.inject.spi.Bean<T>
,jakarta.enterprise.inject.spi.BeanAttributes<T>
,jakarta.enterprise.context.spi.Contextual<T>
,InjectableReferenceProvider<T>
- All Known Subinterfaces:
InjectableDecorator<T>
,InjectableInterceptor<T>
- All Known Implementing Classes:
BeanManagerBean
,BuiltInBean
,EventBean
,InitializedInterceptor
,InjectionPointBean
,InstanceBean
public interface InjectableBean<T>
extends jakarta.enterprise.inject.spi.Bean<T>, InjectableReferenceProvider<T>
Quarkus representation of an injectable bean.
This interface extends the standard CDI
Bean
interface.- Author:
- Martin Kouba
-
Nested Class Summary
-
Method Summary
Modifier and TypeMethodDescriptiondefault void
default Integer
default InjectableBean<?>
The identifier is generated by the container and is unique for a specific deployment.default Class<?>
The return value depends on thegetKind()
.default Set<jakarta.enterprise.inject.spi.InjectionPoint>
By default, this method always returns an empty set, because obtaining the set of injection points of a bean at application runtime is rarely useful.default InjectableBean.Kind
getKind()
default String
getName()
default int
A bean may have a priority assigned.default Set<Annotation>
default Class<? extends Annotation>
getScope()
default Set<Class<? extends Annotation>>
getTypes()
default boolean
default boolean
default boolean
Suppressed beans cannot be obtained by programmatic lookup viaInstance
.Methods inherited from interface jakarta.enterprise.inject.spi.Bean
getBeanClass
Methods inherited from interface jakarta.enterprise.context.spi.Contextual
create
Methods inherited from interface io.quarkus.arc.InjectableReferenceProvider
get
-
Method Details
-
getIdentifier
String getIdentifier()The identifier is generated by the container and is unique for a specific deployment.- Returns:
- the identifier for this bean
-
getKind
- Returns:
- the kind of the bean
- See Also:
-
getScope
- Specified by:
getScope
in interfacejakarta.enterprise.inject.spi.BeanAttributes<T>
- Returns:
- the scope
-
getTypes
- Specified by:
getTypes
in interfacejakarta.enterprise.inject.spi.BeanAttributes<T>
- Returns:
- the set of bean types
-
getQualifiers
- Specified by:
getQualifiers
in interfacejakarta.enterprise.inject.spi.BeanAttributes<T>
- Returns:
- the set of qualifiers
-
destroy
default void destroy(T instance, jakarta.enterprise.context.spi.CreationalContext<T> creationalContext) - Specified by:
destroy
in interfacejakarta.enterprise.context.spi.Contextual<T>
-
getDeclaringBean
- Returns:
- the declaring bean if the bean is a producer method/field, or
null
-
getName
- Specified by:
getName
in interfacejakarta.enterprise.inject.spi.BeanAttributes<T>
-
getStereotypes
- Specified by:
getStereotypes
in interfacejakarta.enterprise.inject.spi.BeanAttributes<T>
-
getInjectionPoints
By default, this method always returns an empty set, because obtaining the set of injection points of a bean at application runtime is rarely useful.In the strict mode, this method works as described by the CDI specification. Feedback on usefulness of this method is welcome!
- Specified by:
getInjectionPoints
in interfacejakarta.enterprise.inject.spi.Bean<T>
-
isAlternative
default boolean isAlternative()- Specified by:
isAlternative
in interfacejakarta.enterprise.inject.spi.BeanAttributes<T>
-
getAlternativePriority
- Returns:
- the priority if the bean is an alternative, or
null
-
isDefaultBean
default boolean isDefaultBean()- Returns:
- whether or not the bean is a default bean
-
isSuppressed
default boolean isSuppressed()Suppressed beans cannot be obtained by programmatic lookup viaInstance
.- Returns:
true
if the bean should be suppressed
-
getPriority
default int getPriority()A bean may have a priority assigned.Class-based beans can specify the priority declaratively via
Priority
. If no priority annotation is used then a bean has the priority of value 0.This priority is used to sort the resolved beans when performing programmatic lookup via
Instance
or when injecting a list of beans by means of theAll
qualifier.- Returns:
- the priority
- See Also:
-
Priority
-
getImplementationClass
The return value depends on thegetKind()
.- For managed beans, interceptors, decorators and built-in beans, the bean class is returned.
- For a producer method, the class of the return type is returned.
- For a producer field, the class of the field is returned.
- For a synthetic bean, the implementation class defined by the registrar is returned.
- Returns:
- the implementation class, or null in case of a producer of a primitive type or an array
- See Also:
-