public class BeanFactoryAspectInstanceFactory extends Object implements MetadataAwareAspectInstanceFactory, Serializable
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
,
Serialized FormHIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
Constructor and Description |
---|
BeanFactoryAspectInstanceFactory(BeanFactory beanFactory,
String name)
Create a BeanFactoryAspectInstanceFactory.
|
BeanFactoryAspectInstanceFactory(BeanFactory beanFactory,
String name,
Class<?> type)
Create a BeanFactoryAspectInstanceFactory, providing a type that AspectJ should
introspect to create AJType metadata.
|
Modifier and Type | Method and Description |
---|---|
ClassLoader |
getAspectClassLoader()
Expose the aspect class loader that this factory uses.
|
Object |
getAspectCreationMutex()
Return the best possible creation mutex for this factory.
|
Object |
getAspectInstance()
Create an instance of this factory's aspect.
|
AspectMetadata |
getAspectMetadata()
Return the AspectJ AspectMetadata for this factory's aspect.
|
int |
getOrder()
|
String |
toString() |
public BeanFactoryAspectInstanceFactory(BeanFactory beanFactory, String name)
beanFactory
- BeanFactory to obtain instance(s) fromname
- name of the beanpublic BeanFactoryAspectInstanceFactory(BeanFactory beanFactory, String name, Class<?> type)
beanFactory
- BeanFactory to obtain instance(s) fromname
- the name of the beantype
- the type that should be introspected by AspectJpublic Object getAspectInstance()
AspectInstanceFactory
getAspectInstance
in interface AspectInstanceFactory
null
)public ClassLoader getAspectClassLoader()
AspectInstanceFactory
getAspectClassLoader
in interface AspectInstanceFactory
null
)public AspectMetadata getAspectMetadata()
MetadataAwareAspectInstanceFactory
getAspectMetadata
in interface MetadataAwareAspectInstanceFactory
public Object getAspectCreationMutex()
MetadataAwareAspectInstanceFactory
getAspectCreationMutex
in interface MetadataAwareAspectInstanceFactory
null
for no mutex to use)public int getOrder()