Package io.micronaut.inject
Interface ParametrizedInstantiatableBeanDefinition<T>
- Type Parameters:
T
- The bean type
- All Superinterfaces:
AnnotationMetadata
,AnnotationMetadataDelegate
,AnnotationMetadataProvider
,AnnotationSource
,ArgumentCoercible<T>
,BeanContextConditional
,BeanDefinition<T>
,BeanInfo<T>
,BeanType<T>
,InstantiatableBeanDefinition<T>
,Named
,QualifiedBeanType<T>
@Internal
public interface ParametrizedInstantiatableBeanDefinition<T>
extends InstantiatableBeanDefinition<T>
An type of BeanDefinition
that can build a new instance, construction requires additional (possibly user supplied) parameters in order construct a bean
- Since:
- 4.0
- Author:
- Denis Stepanov
-
Field Summary
Fields inherited from interface io.micronaut.core.annotation.AnnotationMetadata
CLASS_NAME_SUFFIX, EMPTY_METADATA, VALUE_MEMBER
Fields inherited from interface io.micronaut.core.annotation.AnnotationSource
EMPTY
-
Method Summary
Modifier and TypeMethodDescriptiondefault T
instantiate
(@NonNull BeanResolutionContext resolutionContext, @NonNull BeanContext context) Builds a bean instance.instantiate
(@NonNull BeanResolutionContext resolutionContext, @NonNull BeanContext context, @NonNull Map<String, Object> requiredArgumentValues) Variation of theInstantiatableBeanDefinition.instantiate(BeanContext)
method that allows passing the values necessary for successful bean construction.Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadata
enumValuesSet, enumValuesSet, getValues, hasDeclaredStereotype, hasEvaluatedExpressions, hasStereotypeNonRepeating, isAnnotationPresent, isDeclaredAnnotationPresent
Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadataDelegate
booleanValue, booleanValue, booleanValue, booleanValue, classValue, classValue, classValue, classValue, classValues, classValues, classValues, classValues, copyAnnotationMetadata, 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, getAnnotationValuesByName, getAnnotationValuesByStereotype, getAnnotationValuesByType, getDeclaredAnnotation, getDeclaredAnnotation, getDeclaredAnnotationNameByStereotype, getDeclaredAnnotationNames, getDeclaredAnnotationNamesByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationTypeByStereotype, getDeclaredAnnotationValuesByName, getDeclaredAnnotationValuesByType, getDeclaredMetadata, getDeclaredStereotypeAnnotationNames, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValue, getDefaultValues, getStereotypeAnnotationNames, getTargetAnnotationMetadata, 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
Methods inherited from interface io.micronaut.core.annotation.AnnotationMetadataProvider
getAnnotationMetadata
Methods inherited from interface io.micronaut.inject.BeanContextConditional
isEnabled, isEnabled
Methods inherited from interface io.micronaut.inject.BeanDefinition
asArgument, findMethod, findPossibleMethods, getBeanType, getConstructor, getContainerElement, getDeclaredQualifier, getDeclaringType, getExecutableMethods, getGenericBeanType, getInjectedFields, getInjectedMethods, getName, getPostConstructMethods, getPreDestroyMethods, getRequiredComponents, getRequiredMethod, getScope, getScopeName, getTypeArguments, getTypeArguments, getTypeArguments, getTypeParameters, getTypeParameters, hasAnnotatedMethod, isAbstract, isCandidateBean, isConfigurationProperties, isIterable, isProxy, isSingleton, resolveDynamicQualifier
Methods inherited from interface io.micronaut.inject.BeanType
getBeanName, getExposedTypes, isContainerType, isPrimary, requiresMethodProcessing
Methods inherited from interface io.micronaut.inject.InstantiatableBeanDefinition
instantiate
-
Method Details
-
getRequiredArguments
- Returns:
- The arguments required to construct this bean
-
instantiate
@NonNull T instantiate(@NonNull @NonNull BeanResolutionContext resolutionContext, @NonNull @NonNull BeanContext context, @NonNull @NonNull Map<String, Object> requiredArgumentValues) throws BeanInstantiationExceptionVariation of theInstantiatableBeanDefinition.instantiate(BeanContext)
method that allows passing the values necessary for successful bean construction.- Parameters:
resolutionContext
- TheBeanResolutionContext
context
- TheBeanContext
requiredArgumentValues
- The required arguments values. The keys should match the names of the arguments returned bygetRequiredArguments()
- Returns:
- The instantiated bean
- Throws:
BeanInstantiationException
- If the bean cannot be instantiated for the arguments supplied
-
instantiate
@NonNull default T instantiate(@NonNull @NonNull BeanResolutionContext resolutionContext, @NonNull @NonNull BeanContext context) throws BeanInstantiationException Description copied from interface:InstantiatableBeanDefinition
Builds a bean instance.- Specified by:
instantiate
in interfaceInstantiatableBeanDefinition<T>
- Parameters:
resolutionContext
- The bean resolution contextcontext
- The context- Returns:
- The instance
- Throws:
BeanInstantiationException
- if the instance could not be instantiated
-