org.springframework.beans.factory

## Interface BeanFactoryAware

All Superinterfaces:
  Aware

All Known Implementing Classes:
  AbstractAdvisorAutoProxyCreator, AbstractApplicationEventMulticaster, AbstractAutoProxyCreator, AbstractBeanFactoryBasedTargetSource, AbstractBeanFactoryBasedTargetSourceCreator, AbstractBeanFactoryPointcutAdvisor, AbstractEntityManagerFactoryBean, AbstractFactoryBean, AbstractJaxWsServiceExporter, AbstractPoolingTargetSource, AbstractPrototypeBasedTargetSource, AbstractServiceLoaderBasedFactoryBean, AnnotationAsyncExecutionInterceptor, AnnotationAwareAspectJAutoProxyCreator, AnnotationJmxAttributeSource, AnnotationMBeanExporter, AnnotationMethodHandlerAdapter, AnnotationMethodHandlerAdapter, AspectJAwareAdvisorAutoProxyCreator, AspectJExpressionPointcut, AsyncAnnotationAdvisor, AsyncAnnotationBeanPostProcessor, AsyncExecutionAspectSupport, AsyncExecutionInterceptor, AutowiredAnnotationBeanPostProcessor, BeanConfigurerSupport, BeanFactoryCacheOperationSourceAdvisor, BeanFactoryDataSourceLookup, BeanFactoryDestinationResolver, BeanFactoryTransactionAttributeSourceAdvisor, BeanNameAutoProxyCreator, BeanReferenceFactoryBean, CommonAnnotationBeanPostProcessor, CommonsPoolTargetSource, DefaultAdvisorAutoProxyCreator, DefaultBeanFactoryPointcutAdvisor, DefaultLifecycleProcessor, EntityManagerFactoryAccessor, GroovyScriptFactory, HibernateAccessor, HibernateInterceptor, HibernateJpaSessionFactoryBean, HibernateTemplate, HibernateTransactionManager, InfrastructureAdvisorAutoProxyCreator, JpaAccessor, JpaInterceptor, JpaTemplate, JpaTransactionManager, LazyInitTargetSource, LazyInitTargetSourceCreator, ListFactoryBean, LoadTimeWeaverAwareProcessor, LocalContainerEntityManagerFactoryBean, LocalEntityManagerFactoryBean, MapFactoryBean, MBeanExportConfiguration, MBeanExporter, MethodInvokingFactoryBean, MethodInvokingJobDetailFactoryBean, MethodLocatingFactoryBean, ObjectFactoryCreatingFactoryBean, OpenEntityManagerInViewInterceptor, OpenSessionInViewInterceptor, PersistenceAnnotationBeanPostProcessor, PersistenceExceptionTranslationInterceptor, PersistenceExceptionTranslationPostProcessor, PlaceholderConfigurerSupport, PreferencesPlaceholderConfigurer, PropertyPathFactoryBean, PropertyPlaceholderConfigurer, PropertySourcesPlaceholderConfigurer, PrototypeTargetSource, ProviderCreatingFactoryBean, ProxyFactoryBean, QualifierAnnotationAutowireCandidateResolver, QuickTargetSourceCreator, RequestMappingHandlerAdapter, RequiredAnnotationBeanPostProcessor, SchedulerAccessorBean, ScopedProxyFactoryBean, ScriptFactoryPostProcessor, ServiceFactoryBean, ServiceListFactoryBean, ServiceLoaderFactoryBean, ServiceLocatorFactoryBean, ServletContextPropertyPlaceholderConfigurer, SetFactoryBean, SharedEntityManagerBean, SimpleApplicationEventMulticaster, SimpleBeanFactoryAwareAspectInstanceFactory, SimpleBeanTargetSource, SimpleHttpServerJaxWsServiceExporter, SimpleJaxWsServiceExporter, SortedResourcesFactoryBean, ThreadLocalTargetSource, TransactionAspectSupport, TransactionInterceptor, TransactionProxyFactoryBean

    public interface BeanFactoryAware
    extends Aware

Interface to be implemented by beans that wish to be aware of their owning `BeanFactory`.

For example, beans can look up collaborating beans via the factory (Dependency Lookup). Note that most beans will choose to receive references to collaborating beans via corresponding bean properties or constructor arguments (Dependency Injection).

For a list of all bean lifecycle methods, see the `BeanFactory javadocs`.

Since:
  11.03.2003
Author:
  Rod Johnson, Chris Beams
See Also:
  `BeanNameAware`, `BeanClassLoaderAware`, `InitializingBean`, `ApplicationContextAware`

### Method Summary

Methods
`void` `setBeanFactory(BeanFactory beanFactory)` Callback that supplies the owning factory to a bean instance.

### Method Detail

#### setBeanFactory

    void setBeanFactory(BeanFactory beanFactory)
                        throws BeansException

Callback that supplies the owning factory to a bean instance.

Invoked after the population of normal bean properties but before an initialization callback such as `InitializingBean.afterPropertiesSet()` or a custom init-method.

Parameters:
  `beanFactory` - owning BeanFactory (never `null`). The bean can immediately call methods on the factory.
Throws:
  `BeansException` - in case of initialization errors
See Also:
  `BeanInitializationException`