T
- The bean definition typepublic interface DelegatingBeanDefinition<T> extends BeanDefinition<T>
BeanDefinition
with another that delegates and potentially decorates the
BeanDefinition
instance.NAMED_ATTRIBUTE
CLASS_NAME_SUFFIX, EMPTY_METADATA, VALUE_MEMBER
EMPTY
Modifier and Type | Method and Description |
---|---|
default <R> Optional<ExecutableMethod<T,R>> |
findMethod(String name,
Class<?>... argumentTypes)
Finds a single
ExecutableMethod for the given name and argument types. |
default <R> Stream<ExecutableMethod<T,R>> |
findPossibleMethods(String name)
Finds possible methods for the given method name.
|
default AnnotationMetadata |
getAnnotationMetadata()
Supplies the metadata.
|
default Class<T> |
getBeanType()
Returns the bean type.
|
default ConstructorInjectionPoint<T> |
getConstructor()
The single concrete constructor that is an injection point for creating the bean.
|
default Optional<Class<?>> |
getDeclaringType() |
default Collection<ExecutableMethod<T,?>> |
getExecutableMethods() |
default Collection<FieldInjectionPoint<T,?>> |
getInjectedFields()
All the fields that require injection.
|
default Collection<MethodInjectionPoint<T,?>> |
getInjectedMethods()
All methods that require injection.
|
default String |
getName() |
default Collection<MethodInjectionPoint<T,?>> |
getPostConstructMethods()
All the methods that should be called once the bean has been fully initialized and constructed.
|
default Collection<MethodInjectionPoint<T,?>> |
getPreDestroyMethods()
All the methods that should be called when the object is to be destroyed.
|
default Collection<Class<?>> |
getRequiredComponents() |
default <R> ExecutableMethod<T,R> |
getRequiredMethod(String name,
Class<?>... argumentTypes)
Finds a single
ExecutableMethod for the given name and argument types. |
default Optional<Class<? extends Annotation>> |
getScope() |
default Optional<String> |
getScopeName() |
BeanDefinition<T> |
getTarget() |
default List<Argument<?>> |
getTypeArguments(String type)
Return the type arguments for the given interface or super type for this bean.
|
default T |
inject(BeanContext context,
T bean)
Inject the given bean with the context.
|
default T |
inject(BeanResolutionContext resolutionContext,
BeanContext context,
T bean)
Inject the given bean with the context.
|
default boolean |
isAbstract() |
default boolean |
isEnabled(BeanContext context)
Return whether this component is enabled for the given context.
|
default boolean |
isEnabled(BeanContext context,
BeanResolutionContext resolutionContext)
Return whether this component is enabled for the given context.
|
default boolean |
isIterable() |
default boolean |
isPrimary() |
default boolean |
isProvided() |
default boolean |
isSingleton() |
default boolean |
requiresMethodProcessing()
By default, when the
BeanContext is started, the
BeanDefinition.getExecutableMethods() are not processed by registered
ExecutableMethodProcessor instances unless this method returns true. |
asArgument, getContainerElement, getDeclaredQualifier, getTypeArguments, getTypeArguments, getTypeParameters, getTypeParameters, isCandidateBean, isProxy, resolveDynamicQualifier
booleanValue, booleanValue, booleanValue, booleanValue, classValue, classValue, classValue, classValue, classValues, classValues, classValues, classValues, doubleValue, doubleValue, doubleValue, enumValue, enumValue, enumValue, enumValue, enumValues, enumValues, enumValues, enumValues, findAnnotation, findAnnotation, findDeclaredAnnotation, findDeclaredAnnotation, findRepeatableAnnotation, findRepeatableAnnotation, getAnnotation, getAnnotation, getAnnotationNameByStereotype, getAnnotationNameByStereotype, getAnnotationNames, getAnnotationNamesByStereotype, getAnnotationNamesByStereotype, getAnnotationType, getAnnotationType, getAnnotationTypeByStereotype, getAnnotationTypeByStereotype, getAnnotationTypesByStereotype, getAnnotationTypesByStereotype, getAnnotationTypesByStereotype, getAnnotationValuesByType, getDeclaredAnnotation, getDeclaredAnnotation, getDeclaredAnnotationNameByStereotype, getDeclaredAnnotationNames, getDeclaredAnnotationNamesByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationValuesByType, getDeclaredMetadata, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValues, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValue, getValues, getValues, hasAnnotation, hasAnnotation, hasDeclaredAnnotation, hasDeclaredAnnotation, hasDeclaredStereotype, hasDeclaredStereotype, hasDeclaredStereotype, hasPropertyExpressions, hasSimpleAnnotation, hasSimpleDeclaredAnnotation, hasStereotype, hasStereotype, hasStereotype, hasStereotype, intValue, intValue, intValue, isAnnotationPresent, isDeclaredAnnotationPresent, isEmpty, isFalse, isFalse, isPresent, isPresent, isRepeatableAnnotation, isRepeatableAnnotation, isTrue, isTrue, longValue, longValue, stringValue, stringValue, stringValue, stringValue, stringValues, stringValues, stringValues, stringValues, synthesize, synthesize, synthesizeAll, synthesizeAnnotationsByType, synthesizeDeclared, synthesizeDeclared, synthesizeDeclared, synthesizeDeclaredAnnotationsByType
getAnnotationValuesByName, getDeclaredAnnotationValuesByName, getValues, hasDeclaredStereotype, isAnnotationPresent, isDeclaredAnnotationPresent
getExposedTypes, isContainerType
BeanDefinition<T> getTarget()
default boolean requiresMethodProcessing()
BeanType
BeanContext
is started, the
BeanDefinition.getExecutableMethods()
are not processed by registered
ExecutableMethodProcessor
instances unless this method returns true.requiresMethodProcessing
in interface BeanType<T>
Executable.processOnStartup()
default Optional<Class<? extends Annotation>> getScope()
getScope
in interface BeanDefinition<T>
default Optional<String> getScopeName()
getScopeName
in interface BeanDefinition<T>
default AnnotationMetadata getAnnotationMetadata()
AnnotationMetadataProvider
AnnotationMetadata.EMPTY_METADATA
.getAnnotationMetadata
in interface AnnotationMetadataProvider
AnnotationMetadata
default <R> ExecutableMethod<T,R> getRequiredMethod(String name, Class<?>... argumentTypes)
BeanDefinition
ExecutableMethod
for the given name and argument types.getRequiredMethod
in interface BeanDefinition<T>
R
- The return typename
- The method nameargumentTypes
- The argument typesExecutableMethod
default boolean isAbstract()
isAbstract
in interface BeanDefinition<T>
default boolean isSingleton()
isSingleton
in interface BeanDefinition<T>
default boolean isProvided()
isProvided
in interface BeanDefinition<T>
Provided
default boolean isIterable()
isIterable
in interface BeanDefinition<T>
EachProperty
or
EachBean
default Class<T> getBeanType()
BeanType
getBeanType
in interface BeanDefinition<T>
getBeanType
in interface BeanType<T>
default ConstructorInjectionPoint<T> getConstructor()
BeanDefinition
getConstructor
in interface BeanDefinition<T>
default Collection<Class<?>> getRequiredComponents()
getRequiredComponents
in interface BeanDefinition<T>
default Collection<MethodInjectionPoint<T,?>> getInjectedMethods()
BeanDefinition
getInjectedMethods
in interface BeanDefinition<T>
default Collection<FieldInjectionPoint<T,?>> getInjectedFields()
BeanDefinition
getInjectedFields
in interface BeanDefinition<T>
default Collection<MethodInjectionPoint<T,?>> getPostConstructMethods()
BeanDefinition
getPostConstructMethods
in interface BeanDefinition<T>
default Collection<MethodInjectionPoint<T,?>> getPreDestroyMethods()
BeanDefinition
getPreDestroyMethods
in interface BeanDefinition<T>
default <R> Optional<ExecutableMethod<T,R>> findMethod(String name, Class<?>... argumentTypes)
BeanDefinition
ExecutableMethod
for the given name and argument types.findMethod
in interface BeanDefinition<T>
R
- The return typename
- The method nameargumentTypes
- The argument typesExecutableMethod
default <R> Stream<ExecutableMethod<T,R>> findPossibleMethods(String name)
BeanDefinition
findPossibleMethods
in interface BeanDefinition<T>
R
- The return typename
- The method namedefault T inject(BeanContext context, T bean)
BeanDefinition
inject
in interface BeanDefinition<T>
context
- The contextbean
- The beandefault T inject(BeanResolutionContext resolutionContext, BeanContext context, T bean)
BeanDefinition
inject
in interface BeanDefinition<T>
resolutionContext
- the resolution contextcontext
- The contextbean
- The beandefault Collection<ExecutableMethod<T,?>> getExecutableMethods()
getExecutableMethods
in interface BeanDefinition<T>
ExecutableMethod
instances for this definitiondefault boolean isPrimary()
default boolean isEnabled(BeanContext context)
BeanContextConditional
isEnabled
in interface BeanContextConditional
context
- The contextdefault boolean isEnabled(@NonNull BeanContext context, @Nullable BeanResolutionContext resolutionContext)
BeanContextConditional
isEnabled
in interface BeanContextConditional
context
- The contextresolutionContext
- The bean resolution contextdefault Optional<Class<?>> getDeclaringType()
getDeclaringType
in interface BeanDefinition<T>
@NonNull default List<Argument<?>> getTypeArguments(String type)
BeanDefinition
getTypeArguments
in interface BeanDefinition<T>
type
- The super class or interface type