# Package org.springframework.beans.factory.config

SPI interfaces and configuration-related convenience classes for bean factories.

See: Description

Interface Summary
Interface | Description
--- | ---
AutowireCapableBeanFactory | Extension of the `BeanFactory` interface to be implemented by bean factories that are capable of autowiring, provided that they want to expose this functionality for existing bean instances.
BeanDefinition | A BeanDefinition describes a bean instance, which has property values, constructor argument values, and further information supplied by concrete implementations.
BeanExpressionResolver | Strategy interface for resolving a value through evaluating it as an expression, if applicable.
BeanFactoryPostProcessor | Allows for custom modification of an application context's bean definitions, adapting the bean property values of the context's underlying bean factory.
BeanPostProcessor | Factory hook that allows for custom modification of new bean instances, e.g.
BeanReference | Interface that exposes a reference to a bean name in an abstract fashion.
ConfigurableBeanFactory | Configuration interface to be implemented by most bean factories.
ConfigurableListableBeanFactory | Configuration interface to be implemented by most listable bean factories.
DestructionAwareBeanPostProcessor | Subinterface of `BeanPostProcessor` that adds a before-destruction callback.
InstantiationAwareBeanPostProcessor | Subinterface of `BeanPostProcessor` that adds a before-instantiation callback, and a callback after instantiation but before explicit properties are set or autowiring occurs.
Scope | Strategy interface used by a `ConfigurableBeanFactory`, representing a target scope to hold bean instances in.
SingletonBeanRegistry | Interface that defines a registry for shared bean instances.
SmartInstantiationAwareBeanPostProcessor | Extension of the `InstantiationAwareBeanPostProcessor` interface, adding a callback for predicting the eventual type of a processed bean.

Class Summary
Class | Description
--- | ---
AbstractFactoryBean<T> | Simple template superclass for `FactoryBean` implementations that creates a singleton or a prototype object, depending on a flag.
BeanDefinitionHolder | Holder for a BeanDefinition with name and aliases.
BeanDefinitionVisitor | Visitor class for traversing `BeanDefinition` objects, in particular the property values and constructor argument values contained in them, resolving bean metadata values.
BeanExpressionContext | Context object for evaluating an expression within a bean definition.
BeanReferenceFactoryBean | Deprecated as of Spring 3.2, in favor of using regular bean name aliases (which support placeholder parsing since Spring 2.5)
CommonsLogFactoryBean | Deprecated as of Spring 3.2, in favor of a bean definition that points to the bean class "org.apache.commons.logging.LogFactory" and the factory method "getLog", passing in the log name as constructor argument
ConstructorArgumentValues | Holder for constructor argument values, typically as part of a bean definition.
ConstructorArgumentValues.ValueHolder | Holder for a constructor argument value, with an optional type attribute indicating the target type of the actual constructor argument.
CustomEditorConfigurer | `BeanFactoryPostProcessor` implementation that allows for convenient registration of custom `property editors`.
CustomScopeConfigurer | Simple `BeanFactoryPostProcessor` implementation that registers custom `Scope(s)` with the containing `ConfigurableBeanFactory`.
DependencyDescriptor | Descriptor for a specific dependency that is about to be injected.
DeprecatedBeanWarner | Bean factory post processor that logs a warning for `@Deprecated` beans.
FieldRetrievingFactoryBean | `FactoryBean` which retrieves a static or non-static field value.
InstantiationAwareBeanPostProcessorAdapter | Adapter that implements all methods on `SmartInstantiationAwareBeanPostProcessor` as no-ops, which will not change normal processing of each bean instantiated by the container.
ListFactoryBean | Simple factory for shared List instances.
MapFactoryBean | Simple factory for shared Map instances.
MethodInvokingFactoryBean | `FactoryBean` which returns a value which is the result of a static or instance method invocation.
ObjectFactoryCreatingFactoryBean | A `FactoryBean` implementation that returns a value which is an `ObjectFactory` that in turn returns a bean sourced from a `BeanFactory`.
PlaceholderConfigurerSupport | Abstract base class for property resource configurers that resolve placeholders in bean definition property values.
PreferencesPlaceholderConfigurer | Subclass of PropertyPlaceholderConfigurer that supports JDK 1.4's Preferences API (`java.util.prefs`).
PropertiesFactoryBean | Allows for making a properties file from a classpath location available as Properties instance in a bean factory.
PropertyOverrideConfigurer | Property resource configurer that overrides bean property values in an application context definition.
PropertyPathFactoryBean | `FactoryBean` that evaluates a property path on a given target object.
PropertyPlaceholderConfigurer | `PlaceholderConfigurerSupport` subclass that resolves ${...} placeholders against `local` `properties` and/or system properties and environment variables.
PropertyResourceConfigurer | Allows for configuration of individual bean property values from a property resource, i.e.
ProviderCreatingFactoryBean | A `FactoryBean` implementation that returns a value which is a JSR-330 `Provider` that in turn returns a bean sourced from a `BeanFactory`.
RuntimeBeanNameReference | Immutable placeholder class used for a property value object when it's a reference to another bean name in the factory, to be resolved at runtime.
RuntimeBeanReference | Immutable placeholder class used for a property value object when it's a reference to another bean in the factory, to be resolved at runtime.
ServiceLocatorFactoryBean | A `FactoryBean` implementation that takes an interface which must have one or more methods with the signatures `MyType xxx()` or `MyType xxx(MyIdType id)` (typically, `MyService getService()` or `MyService getService(String id)`) and creates a dynamic proxy which implements that interface, delegating to an underlying `BeanFactory`.
SetFactoryBean | Simple factory for shared Set instances.
TypedStringValue | Holder for a typed String value.

## Package org.springframework.beans.factory.config Description

SPI interfaces and configuration-related convenience classes for bean factories.