public class BeanFactoryAspectInstanceFactory extends java.lang.Object implements MetadataAwareAspectInstanceFactory
AspectInstanceFactory
implementation
backed by a Spring BeanFactory
.
Note that this may instantiate multiple times if using a prototype,
which probably won't give the semantics you expect.
Use a LazySingletonAspectInstanceFactoryDecorator
to wrap this to ensure only one new aspect comes back.
BeanFactory
,
LazySingletonAspectInstanceFactoryDecorator
Modifier and Type | Field and Description |
---|---|
private AspectMetadata |
aspectMetadata |
private BeanFactory |
beanFactory |
private java.lang.String |
name |
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
Constructor and Description |
---|
BeanFactoryAspectInstanceFactory(BeanFactory beanFactory,
java.lang.String name)
Create a BeanFactoryAspectInstanceFactory.
|
BeanFactoryAspectInstanceFactory(BeanFactory beanFactory,
java.lang.String name,
java.lang.Class<?> type)
Create a BeanFactoryAspectInstanceFactory, providing a type that AspectJ should
introspect to create AJType metadata.
|
Modifier and Type | Method and Description |
---|---|
java.lang.ClassLoader |
getAspectClassLoader()
Expose the aspect class loader that this factory uses.
|
java.lang.Object |
getAspectInstance()
Create an instance of this factory's aspect.
|
AspectMetadata |
getAspectMetadata()
Return the AspectJ AspectMetadata for this factory's aspect.
|
int |
getOrder()
|
java.lang.String |
toString() |
private final BeanFactory beanFactory
private final java.lang.String name
private final AspectMetadata aspectMetadata
public BeanFactoryAspectInstanceFactory(BeanFactory beanFactory, java.lang.String name)
beanFactory
- BeanFactory to obtain instance(s) fromname
- name of the beanpublic BeanFactoryAspectInstanceFactory(BeanFactory beanFactory, java.lang.String name, java.lang.Class<?> type)
beanFactory
- BeanFactory to obtain instance(s) fromname
- the name of the beantype
- the type that should be introspected by AspectJpublic java.lang.Object getAspectInstance()
AspectInstanceFactory
getAspectInstance
in interface AspectInstanceFactory
null
)public java.lang.ClassLoader getAspectClassLoader()
AspectInstanceFactory
getAspectClassLoader
in interface AspectInstanceFactory
null
)public AspectMetadata getAspectMetadata()
MetadataAwareAspectInstanceFactory
getAspectMetadata
in interface MetadataAwareAspectInstanceFactory
public int getOrder()
public java.lang.String toString()
toString
in class java.lang.Object