@Singleton @Primary @Internal public class MicronautBeanFactory extends DefaultListableBeanFactory implements ListableBeanFactory, AutowireCapableBeanFactory, HierarchicalBeanFactory, ConfigurableListableBeanFactory
ListableBeanFactory interface for Micronaut.loggerAUTOWIRE_AUTODETECT, AUTOWIRE_BY_NAME, AUTOWIRE_BY_TYPE, AUTOWIRE_CONSTRUCTOR, AUTOWIRE_NO, ORIGINAL_INSTANCE_SUFFIXSCOPE_PROTOTYPE, SCOPE_SINGLETONFACTORY_BEAN_PREFIX| Constructor and Description |
|---|
MicronautBeanFactory(BeanContext beanContext,
SpringAwareListener awareListener,
MicronautBeanFactoryConfiguration configuration)
The default constructor.
|
| Modifier and Type | Method and Description |
|---|---|
void |
applyBeanPropertyValues(java.lang.Object existingBean,
java.lang.String beanName) |
java.lang.Object |
autowire(java.lang.Class<?> beanClass,
int autowireMode,
boolean dependencyCheck) |
void |
autowireBean(java.lang.Object existingBean) |
void |
autowireBeanProperties(java.lang.Object existingBean,
int autowireMode,
boolean dependencyCheck) |
java.lang.Object |
configureBean(java.lang.Object existingBean,
java.lang.String beanName) |
boolean |
containsBean(java.lang.String name) |
boolean |
containsBeanDefinition(java.lang.String beanName) |
boolean |
containsLocalBean(java.lang.String name) |
boolean |
containsSingleton(java.lang.String beanName) |
java.lang.Object |
createBean(java.lang.Class<?> beanClass,
int autowireMode,
boolean dependencyCheck) |
<T> T |
createBean(java.lang.Class<T> beanClass) |
void |
destroyBean(java.lang.Object existingBean) |
void |
destroyBean(java.lang.String beanName,
java.lang.Object beanInstance) |
protected <T> T |
doGetBean(java.lang.String name,
java.lang.Class<T> requiredType,
java.lang.Object[] args,
boolean typeCheckOnly) |
<A extends java.lang.annotation.Annotation> |
findAnnotationOnBean(java.lang.String beanName,
java.lang.Class<A> annotationType) |
<T> T |
getBean(java.lang.Class<T> requiredType) |
<T> T |
getBean(java.lang.Class<T> requiredType,
java.lang.Object... args) |
java.lang.Object |
getBean(java.lang.String name) |
<T> T |
getBean(java.lang.String name,
java.lang.Class<T> requiredType) |
java.lang.Object |
getBean(java.lang.String name,
java.lang.Object... args) |
BeanContext |
getBeanContext() |
BeanDefinition |
getBeanDefinition(java.lang.String beanName) |
int |
getBeanDefinitionCount() |
java.lang.String[] |
getBeanDefinitionNames() |
java.lang.String[] |
getBeanNamesForAnnotation(java.lang.Class<? extends java.lang.annotation.Annotation> annotationType) |
java.lang.String[] |
getBeanNamesForType(java.lang.Class<?> type) |
java.lang.String[] |
getBeanNamesForType(java.lang.Class<?> type,
boolean includeNonSingletons,
boolean allowEagerInit) |
java.lang.String[] |
getBeanNamesForType(ResolvableType type) |
java.util.Iterator<java.lang.String> |
getBeanNamesIterator() |
<T> ObjectProvider<T> |
getBeanProvider(java.lang.Class<T> requiredType) |
<T> ObjectProvider<T> |
getBeanProvider(ResolvableType requiredType) |
<T> java.util.Map<java.lang.String,T> |
getBeansOfType(java.lang.Class<T> type,
boolean includeNonSingletons,
boolean allowEagerInit) |
protected java.lang.Object |
getSingleton(java.lang.String beanName,
boolean allowEarlyReference) |
java.lang.Object |
getSingleton(java.lang.String beanName,
ObjectFactory<?> singletonFactory) |
java.lang.Class<?> |
getType(java.lang.String beanName) |
java.lang.Object |
initializeBean(java.lang.Object existingBean,
java.lang.String beanName) |
boolean |
isAutowireCandidate(java.lang.String beanName,
DependencyDescriptor descriptor) |
boolean |
isFactoryBean(java.lang.String name) |
boolean |
isPrototype(java.lang.String name) |
static boolean |
isSingleton(AnnotationMetadata annotationMetadata)
Shared logic for Micronaut singleton rules.
|
protected boolean |
isSingleton(BeanDefinitionReference<?> definition)
Is the definition singleton.
|
boolean |
isSingleton(java.lang.String name) |
boolean |
isTypeMatch(java.lang.String name,
java.lang.Class<?> typeToMatch) |
boolean |
isTypeMatch(java.lang.String name,
ResolvableType typeToMatch) |
void |
registerBeanDefinition(java.lang.String beanName,
BeanDefinition beanDefinition) |
void |
registerSingleton(java.lang.String beanName,
java.lang.Object singletonObject) |
allowAliasOverriding, clearMetadataCache, copyConfigurationFrom, destroySingleton, destroySingletons, determineAutowireCandidate, determineHighestPriorityCandidate, determinePrimaryCandidate, doResolveDependency, findAutowireCandidates, freezeConfiguration, getAutowireCandidateResolver, getBeansOfType, getBeansWithAnnotation, getDependencyComparator, getPriority, getSerializationId, isAllowBeanDefinitionOverriding, isAllowEagerClassLoading, isAutowireCandidate, isAutowireCandidate, isBeanEligibleForMetadataCaching, isConfigurationFrozen, isPrimary, matchesBeanName, preInstantiateSingletons, registerResolvableDependency, removeBeanDefinition, resetBeanDefinition, resolveDependency, resolveNamedBean, setAllowBeanDefinitionOverriding, setAllowEagerClassLoading, setAutowireCandidateResolver, setDependencyComparator, setSerializationId, toString, writeReplaceapplyBeanPostProcessorsAfterInitialization, applyBeanPostProcessorsBeforeInitialization, applyBeanPostProcessorsBeforeInstantiation, applyMergedBeanDefinitionPostProcessors, applyPropertyValues, autowireByName, autowireByType, autowireConstructor, checkDependencies, clearSingletonCache, createBean, createBeanInstance, determineConstructorsFromBeanPostProcessors, determineTargetType, doCreateBean, filterPropertyDescriptorsForDependencyCheck, filterPropertyDescriptorsForDependencyCheck, getEarlyBeanReference, getInstantiationStrategy, getObjectForBeanInstance, getParameterNameDiscoverer, getTypeForFactoryBean, getTypeForFactoryMethod, ignoreDependencyInterface, ignoreDependencyType, initializeBean, instantiateBean, instantiateUsingFactoryMethod, invokeCustomInitMethod, invokeInitMethods, isExcludedFromDependencyCheck, obtainFromSupplier, populateBean, postProcessObjectFromFactoryBean, predictBeanType, removeSingleton, resolveBeanByName, resolveBeforeInstantiation, resolveDependency, setAllowCircularReferences, setAllowRawInjectionDespiteWrapping, setInstantiationStrategy, setParameterNameDiscoverer, unsatisfiedNonSimplePropertiesaddBeanPostProcessor, addEmbeddedValueResolver, addPropertyEditorRegistrar, afterPrototypeCreation, beforePrototypeCreation, checkMergedBeanDefinition, cleanupAfterBeanCreationFailure, clearMergedBeanDefinition, copyRegisteredEditorsTo, destroyBean, destroyScopedBean, evaluateBeanDefinitionString, getAccessControlContext, getAliases, getBean, getBeanClassLoader, getBeanExpressionResolver, getBeanPostProcessorCount, getBeanPostProcessors, getConversionService, getCustomEditors, getCustomTypeConverter, getMergedBeanDefinition, getMergedBeanDefinition, getMergedBeanDefinition, getMergedLocalBeanDefinition, getParentBeanFactory, getPropertyEditorRegistrars, getRegisteredScope, getRegisteredScopeNames, getTempClassLoader, getTypeConverter, hasBeanCreationStarted, hasDestructionAwareBeanPostProcessors, hasEmbeddedValueResolver, hasInstantiationAwareBeanPostProcessors, initBeanWrapper, isActuallyInCreation, isBeanNameInUse, isCacheBeanMetadata, isFactoryBean, isPrototypeCurrentlyInCreation, markBeanAsCreated, originalBeanName, registerCustomEditor, registerCustomEditors, registerDisposableBeanIfNecessary, registerScope, removeSingletonIfCreatedForTypeCheckOnly, requiresDestruction, resolveBeanClass, resolveEmbeddedValue, setBeanClassLoader, setBeanExpressionResolver, setCacheBeanMetadata, setConversionService, setParentBeanFactory, setSecurityContextProvider, setTempClassLoader, setTypeConverter, transformedBeanNamegetCachedObjectForFactoryBean, getFactoryBean, getObjectFromFactoryBean, getTypeForFactoryBeanaddSingleton, addSingletonFactory, afterSingletonCreation, beforeSingletonCreation, destroyBean, getDependenciesForBean, getDependentBeans, getSingleton, getSingletonCount, getSingletonMutex, getSingletonNames, hasDependentBean, isCurrentlyInCreation, isDependent, isSingletonCurrentlyInCreation, onSuppressedException, registerContainedBean, registerDependentBean, registerDisposableBean, setCurrentlyInCreationcanonicalName, checkForAliasCircle, hasAlias, isAlias, registerAlias, removeAlias, resolveAliasesclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitclearMetadataCache, freezeConfiguration, ignoreDependencyInterface, ignoreDependencyType, isConfigurationFrozen, preInstantiateSingletons, registerResolvableDependencygetBeansOfType, getBeansWithAnnotationapplyBeanPostProcessorsAfterInitialization, applyBeanPostProcessorsBeforeInitialization, resolveBeanByName, resolveDependency, resolveDependency, resolveNamedBeanaddBeanPostProcessor, addEmbeddedValueResolver, addPropertyEditorRegistrar, copyConfigurationFrom, copyRegisteredEditorsTo, destroyScopedBean, destroySingletons, getAccessControlContext, getBeanClassLoader, getBeanExpressionResolver, getBeanPostProcessorCount, getConversionService, getDependenciesForBean, getDependentBeans, getMergedBeanDefinition, getRegisteredScope, getRegisteredScopeNames, getTempClassLoader, getTypeConverter, hasEmbeddedValueResolver, isCacheBeanMetadata, isCurrentlyInCreation, registerAlias, registerCustomEditor, registerDependentBean, registerScope, resolveAliases, resolveEmbeddedValue, setBeanClassLoader, setBeanExpressionResolver, setCacheBeanMetadata, setConversionService, setCurrentlyInCreation, setParentBeanFactory, setTempClassLoader, setTypeConvertergetParentBeanFactorygetAliasesgetSingleton, getSingletonCount, getSingletonMutex, getSingletonNamesisBeanNameInUsegetAliases, isAlias, registerAlias, removeAliaspublic MicronautBeanFactory(BeanContext beanContext, SpringAwareListener awareListener, MicronautBeanFactoryConfiguration configuration)
beanContext - The target Micronaut contextawareListener - The spring aware listenerconfiguration - Configurationpublic static boolean isSingleton(AnnotationMetadata annotationMetadata)
annotationMetadata - The metadata@Nonnull
public java.lang.Object getBean(@Nonnull
java.lang.String name)
throws BeansException
getBean in interface BeanFactorygetBean in class AbstractBeanFactoryBeansException@Nonnull
public <T> T getBean(@Nonnull
java.lang.String name,
@Nonnull
java.lang.Class<T> requiredType)
throws BeansException
getBean in interface BeanFactorygetBean in class AbstractBeanFactoryBeansException@Nonnull
public java.lang.Object getBean(@Nonnull
java.lang.String name,
@Nonnull
java.lang.Object... args)
throws BeansException
getBean in interface BeanFactorygetBean in class AbstractBeanFactoryBeansException@Nonnull
public <T> T getBean(@Nonnull
java.lang.Class<T> requiredType)
throws BeansException
getBean in interface BeanFactorygetBean in class DefaultListableBeanFactoryBeansException@Nonnull
public <T> T getBean(@Nonnull
java.lang.Class<T> requiredType,
@Nonnull
java.lang.Object... args)
throws BeansException
getBean in interface BeanFactorygetBean in class DefaultListableBeanFactoryBeansException@Nonnull public <T> ObjectProvider<T> getBeanProvider(@Nonnull java.lang.Class<T> requiredType)
getBeanProvider in interface BeanFactorygetBeanProvider in class DefaultListableBeanFactory@Nonnull public <T> ObjectProvider<T> getBeanProvider(@Nonnull ResolvableType requiredType)
getBeanProvider in interface BeanFactorygetBeanProvider in class DefaultListableBeanFactorypublic boolean containsBean(@Nonnull
java.lang.String name)
containsBean in interface BeanFactorycontainsBean in class AbstractBeanFactorypublic boolean isSingleton(@Nonnull
java.lang.String name)
throws NoSuchBeanDefinitionException
isSingleton in interface BeanFactoryisSingleton in class AbstractBeanFactoryNoSuchBeanDefinitionExceptionprotected boolean isSingleton(@Nonnull
BeanDefinitionReference<?> definition)
definition - The definitionpublic boolean isPrototype(@Nonnull
java.lang.String name)
throws NoSuchBeanDefinitionException
isPrototype in interface BeanFactoryisPrototype in class AbstractBeanFactoryNoSuchBeanDefinitionExceptionpublic boolean isTypeMatch(@Nonnull
java.lang.String name,
@Nonnull
ResolvableType typeToMatch)
throws NoSuchBeanDefinitionException
isTypeMatch in interface BeanFactoryisTypeMatch in class AbstractBeanFactoryNoSuchBeanDefinitionExceptionpublic boolean isTypeMatch(@Nonnull
java.lang.String name,
@Nonnull
java.lang.Class<?> typeToMatch)
throws NoSuchBeanDefinitionException
isTypeMatch in interface BeanFactoryisTypeMatch in class AbstractBeanFactoryNoSuchBeanDefinitionExceptionpublic java.lang.Class<?> getType(@Nonnull
java.lang.String beanName)
throws NoSuchBeanDefinitionException
getType in interface BeanFactorygetType in class AbstractBeanFactoryNoSuchBeanDefinitionExceptionpublic boolean containsBeanDefinition(@Nonnull
java.lang.String beanName)
containsBeanDefinition in interface ListableBeanFactorycontainsBeanDefinition in interface BeanDefinitionRegistrycontainsBeanDefinition in class DefaultListableBeanFactorypublic int getBeanDefinitionCount()
getBeanDefinitionCount in interface ListableBeanFactorygetBeanDefinitionCount in interface BeanDefinitionRegistrygetBeanDefinitionCount in class DefaultListableBeanFactory@Nonnull public java.lang.String[] getBeanDefinitionNames()
getBeanDefinitionNames in interface ListableBeanFactorygetBeanDefinitionNames in interface BeanDefinitionRegistrygetBeanDefinitionNames in class DefaultListableBeanFactory@Nonnull
public java.lang.String[] getBeanNamesForType(@Nonnull
ResolvableType type)
getBeanNamesForType in interface ListableBeanFactorygetBeanNamesForType in class DefaultListableBeanFactory@Nonnull public java.lang.String[] getBeanNamesForType(java.lang.Class<?> type)
getBeanNamesForType in interface ListableBeanFactorygetBeanNamesForType in class DefaultListableBeanFactory@Nonnull
public java.lang.String[] getBeanNamesForType(java.lang.Class<?> type,
boolean includeNonSingletons,
boolean allowEagerInit)
getBeanNamesForType in interface ListableBeanFactorygetBeanNamesForType in class DefaultListableBeanFactory@Nonnull
public <T> java.util.Map<java.lang.String,T> getBeansOfType(java.lang.Class<T> type,
boolean includeNonSingletons,
boolean allowEagerInit)
throws BeansException
getBeansOfType in interface ListableBeanFactorygetBeansOfType in class DefaultListableBeanFactoryBeansException@Nonnull
public java.lang.String[] getBeanNamesForAnnotation(@Nonnull
java.lang.Class<? extends java.lang.annotation.Annotation> annotationType)
getBeanNamesForAnnotation in interface ListableBeanFactorygetBeanNamesForAnnotation in class DefaultListableBeanFactorypublic <A extends java.lang.annotation.Annotation> A findAnnotationOnBean(@Nonnull
java.lang.String beanName,
@Nonnull
java.lang.Class<A> annotationType)
throws NoSuchBeanDefinitionException
findAnnotationOnBean in interface ListableBeanFactoryfindAnnotationOnBean in class DefaultListableBeanFactoryNoSuchBeanDefinitionException@Nonnull
public <T> T createBean(@Nonnull
java.lang.Class<T> beanClass)
throws BeansException
createBean in interface AutowireCapableBeanFactorycreateBean in class AbstractAutowireCapableBeanFactoryBeansExceptionpublic void autowireBean(@Nonnull
java.lang.Object existingBean)
throws BeansException
autowireBean in interface AutowireCapableBeanFactoryautowireBean in class AbstractAutowireCapableBeanFactoryBeansExceptionpublic java.lang.Object configureBean(java.lang.Object existingBean,
java.lang.String beanName)
throws BeansException
configureBean in interface AutowireCapableBeanFactoryconfigureBean in class AbstractAutowireCapableBeanFactoryBeansExceptionpublic java.lang.Object createBean(java.lang.Class<?> beanClass,
int autowireMode,
boolean dependencyCheck)
throws BeansException
createBean in interface AutowireCapableBeanFactorycreateBean in class AbstractAutowireCapableBeanFactoryBeansExceptionpublic java.lang.Object autowire(java.lang.Class<?> beanClass,
int autowireMode,
boolean dependencyCheck)
throws BeansException
autowire in interface AutowireCapableBeanFactoryautowire in class AbstractAutowireCapableBeanFactoryBeansExceptionpublic void autowireBeanProperties(java.lang.Object existingBean,
int autowireMode,
boolean dependencyCheck)
throws BeansException
autowireBeanProperties in interface AutowireCapableBeanFactoryautowireBeanProperties in class AbstractAutowireCapableBeanFactoryBeansExceptionpublic void applyBeanPropertyValues(java.lang.Object existingBean,
java.lang.String beanName)
throws BeansException
applyBeanPropertyValues in interface AutowireCapableBeanFactoryapplyBeanPropertyValues in class AbstractAutowireCapableBeanFactoryBeansExceptionpublic java.lang.Object initializeBean(java.lang.Object existingBean,
java.lang.String beanName)
throws BeansException
initializeBean in interface AutowireCapableBeanFactoryinitializeBean in class AbstractAutowireCapableBeanFactoryBeansExceptionpublic void destroyBean(java.lang.Object existingBean)
destroyBean in interface AutowireCapableBeanFactorydestroyBean in class AbstractAutowireCapableBeanFactorypublic boolean containsLocalBean(java.lang.String name)
containsLocalBean in interface HierarchicalBeanFactorycontainsLocalBean in class AbstractBeanFactorypublic BeanContext getBeanContext()
public boolean isAutowireCandidate(java.lang.String beanName,
DependencyDescriptor descriptor)
throws NoSuchBeanDefinitionException
isAutowireCandidate in interface ConfigurableListableBeanFactoryisAutowireCandidate in class DefaultListableBeanFactoryNoSuchBeanDefinitionExceptionpublic BeanDefinition getBeanDefinition(java.lang.String beanName) throws NoSuchBeanDefinitionException
getBeanDefinition in interface ConfigurableListableBeanFactorygetBeanDefinition in interface BeanDefinitionRegistrygetBeanDefinition in class DefaultListableBeanFactoryNoSuchBeanDefinitionExceptionprotected <T> T doGetBean(java.lang.String name,
java.lang.Class<T> requiredType,
java.lang.Object[] args,
boolean typeCheckOnly)
throws BeansException
doGetBean in class AbstractBeanFactoryBeansExceptionprotected java.lang.Object getSingleton(java.lang.String beanName,
boolean allowEarlyReference)
getSingleton in class DefaultSingletonBeanRegistrypublic java.lang.Object getSingleton(java.lang.String beanName,
ObjectFactory<?> singletonFactory)
getSingleton in class DefaultSingletonBeanRegistrypublic java.util.Iterator<java.lang.String> getBeanNamesIterator()
getBeanNamesIterator in interface ConfigurableListableBeanFactorygetBeanNamesIterator in class DefaultListableBeanFactorypublic boolean isFactoryBean(java.lang.String name)
throws NoSuchBeanDefinitionException
isFactoryBean in interface ConfigurableBeanFactoryisFactoryBean in class AbstractBeanFactoryNoSuchBeanDefinitionExceptionpublic void destroyBean(java.lang.String beanName,
java.lang.Object beanInstance)
destroyBean in interface ConfigurableBeanFactorydestroyBean in class AbstractBeanFactorypublic void registerSingleton(java.lang.String beanName,
java.lang.Object singletonObject)
registerSingleton in interface SingletonBeanRegistryregisterSingleton in class DefaultListableBeanFactorypublic boolean containsSingleton(java.lang.String beanName)
containsSingleton in interface SingletonBeanRegistrycontainsSingleton in class DefaultSingletonBeanRegistrypublic void registerBeanDefinition(java.lang.String beanName,
BeanDefinition beanDefinition)
throws BeanDefinitionStoreException
registerBeanDefinition in interface BeanDefinitionRegistryregisterBeanDefinition in class DefaultListableBeanFactoryBeanDefinitionStoreException