# Uses of Interface
org.springframework.aop.TargetSource

Packages that use TargetSource
Package
Description
org.springframework.aop.framework
Package containing Spring's basic AOP infrastructure, compliant with the AOP Alliance interfaces.
org.springframework.aop.framework.autoproxy
Bean post-processors for use in ApplicationContexts to simplify AOP usage by automatically creating AOP proxies without the need to use a ProxyFactoryBean.
org.springframework.aop.framework.autoproxy.target
Various `TargetSourceCreator` implementations for use with Spring's AOP auto-proxying support.
org.springframework.aop.target
Various `TargetSource` implementations for use with Spring AOP.
org.springframework.aop.target.dynamic
Support for dynamic, refreshable `TargetSource` implementations for use with Spring AOP.

## Uses of TargetSource in org.springframework.aop.framework

Fields in org.springframework.aop.framework declared as TargetSource
Modifier and Type
Field
Description
`static final TargetSource`
AdvisedSupport.`EMPTY_TARGET_SOURCE`
Canonical TargetSource when there's no target, and behavior is supplied by the advisors.
Methods in org.springframework.aop.framework that return TargetSource
Modifier and Type
Method
Description
`protected TargetSource`
AbstractSingletonProxyFactoryBean.`createTargetSource(Object target)`
Determine a TargetSource for the given target (or TargetSource).
`TargetSource`
Advised.`getTargetSource()`
Return the `TargetSource` used by this `Advised` object.
`TargetSource`
AdvisedSupport.`getTargetSource()`
Methods in org.springframework.aop.framework with parameters of type TargetSource
Modifier and Type
Method
Description
`protected void`
AdvisedSupport.`copyConfigurationFrom(AdvisedSupport other, TargetSource targetSource, List<Advisor> advisors)`
Copy the AOP configuration from the given `AdvisedSupport` object, but allow substitution of a fresh `TargetSource` and a given interceptor chain.
`static <T> T`
ProxyFactory.`getProxy(Class<T> proxyInterface, TargetSource targetSource)`
Create a proxy for the specified `TargetSource`, implementing the specified interface.
`static Object`
ProxyFactory.`getProxy(TargetSource targetSource)`
Create a proxy for the specified `TargetSource` that extends the target class of the `TargetSource`.
`void`
Advised.`setTargetSource(TargetSource targetSource)`
Change the `TargetSource` used by this `Advised` object.
`void`
AdvisedSupport.`setTargetSource(TargetSource targetSource)`
Constructors in org.springframework.aop.framework with parameters of type TargetSource
Modifier
Constructor
Description
``
`ProxyFactory(Class<?> proxyInterface, TargetSource targetSource)`
Create a ProxyFactory for the specified `TargetSource`, making the proxy implement the specified interface.

## Uses of TargetSource in org.springframework.aop.framework.autoproxy

Methods in org.springframework.aop.framework.autoproxy that return TargetSource
Modifier and Type
Method
Description
`protected TargetSource`
AbstractAutoProxyCreator.`getCustomTargetSource(Class<?> beanClass, String beanName)`
Create a target source for bean instances.
`protected TargetSource`
BeanNameAutoProxyCreator.`getCustomTargetSource(Class<?> beanClass, String beanName)`
Delegate to `AbstractAutoProxyCreator.getCustomTargetSource(Class, String)` if the bean name matches one of the names in the configured list of supported names, returning `null` otherwise.
`TargetSource`
TargetSourceCreator.`getTargetSource(Class<?> beanClass, String beanName)`
Create a special TargetSource for the given bean, if any.
Methods in org.springframework.aop.framework.autoproxy with parameters of type TargetSource
Modifier and Type
Method
Description
`protected Object`
AbstractAutoProxyCreator.`createProxy(Class<?> beanClass, String beanName, Object[] specificInterceptors, TargetSource targetSource)`
Create an AOP proxy for the given bean.
`protected Object[]`
AbstractAdvisorAutoProxyCreator.`getAdvicesAndAdvisorsForBean(Class<?> beanClass, String beanName, TargetSource targetSource)`
`protected abstract Object[]`
AbstractAutoProxyCreator.`getAdvicesAndAdvisorsForBean(Class<?> beanClass, String beanName, TargetSource customTargetSource)`
Return whether the given bean is to be proxied, what additional advices (for example, AOP Alliance interceptors) and advisors to apply.
`protected Object[]`
BeanNameAutoProxyCreator.`getAdvicesAndAdvisorsForBean(Class<?> beanClass, String beanName, TargetSource targetSource)`
Identify as a bean to proxy if the bean name matches one of the names in the configured list of supported names.

## Uses of TargetSource in org.springframework.aop.framework.autoproxy.target

Methods in org.springframework.aop.framework.autoproxy.target that return TargetSource
Modifier and Type
Method
Description
`final TargetSource`
AbstractBeanFactoryBasedTargetSourceCreator.`getTargetSource(Class<?> beanClass, String beanName)`

## Uses of TargetSource in org.springframework.aop.target

Classes in org.springframework.aop.target that implement TargetSource
Modifier and Type
Class
Description
`class`
`AbstractBeanFactoryBasedTargetSource`
Base class for `TargetSource` implementations that are based on a Spring `BeanFactory`, delegating to Spring-managed bean instances.
`class`
`AbstractLazyCreationTargetSource`
`TargetSource` implementation that will lazily create a user-managed object.
`class`
`AbstractPoolingTargetSource`
Abstract base class for pooling `TargetSource` implementations which maintain a pool of target instances, acquiring and releasing a target object from the pool for each method invocation.
`class`
`AbstractPrototypeBasedTargetSource`
Base class for dynamic `TargetSource` implementations that create new prototype bean instances to support a pooling or new-instance-per-invocation strategy.
`class`
`CommonsPool2TargetSource`
`TargetSource` implementation that holds objects in a configurable Apache Commons2 Pool.
`final class`
`EmptyTargetSource`
Canonical `TargetSource` when there is no target (or just the target class known), and behavior is supplied by interfaces and advisors only.
`class`
`HotSwappableTargetSource`
`TargetSource` implementation that caches a local target object, but allows the target to be swapped while the application is running.
`class`
`LazyInitTargetSource`
`TargetSource` that lazily accesses a singleton bean from a `BeanFactory`.
`class`
`PrototypeTargetSource`
`TargetSource` implementation that creates a new instance of the target bean for each request, destroying each instance on release (after each request).
`class`
`SimpleBeanTargetSource`
Simple `TargetSource` implementation, freshly obtaining the specified target bean from its containing Spring `BeanFactory`.
`class`
`SingletonTargetSource`
Implementation of the `TargetSource` interface that holds a given object.
`class`
`ThreadLocalTargetSource`
Alternative to an object pool.

## Uses of TargetSource in org.springframework.aop.target.dynamic

Classes in org.springframework.aop.target.dynamic that implement TargetSource
Modifier and Type
Class
Description
`class`
`AbstractRefreshableTargetSource`
Abstract `TargetSource` implementation that wraps a refreshable target object.
`class`
`BeanFactoryRefreshableTargetSource`
Refreshable TargetSource that fetches fresh target beans from a BeanFactory.