public class LazySingletonAspectInstanceFactoryDecorator extends java.lang.Object implements MetadataAwareAspectInstanceFactory, java.io.Serializable
MetadataAwareAspectInstanceFactory
to instantiate only once.HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
Constructor and Description |
---|
LazySingletonAspectInstanceFactoryDecorator(MetadataAwareAspectInstanceFactory maaif)
Create a new lazily initializing decorator for the given AspectInstanceFactory.
|
Modifier and Type | Method and Description |
---|---|
java.lang.ClassLoader |
getAspectClassLoader()
Expose the aspect class loader that this factory uses.
|
java.lang.Object |
getAspectCreationMutex()
Return the best possible creation mutex for this factory.
|
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()
Get the order value of this object.
|
boolean |
isMaterialized() |
java.lang.String |
toString() |
public LazySingletonAspectInstanceFactoryDecorator(MetadataAwareAspectInstanceFactory maaif)
maaif
- the MetadataAwareAspectInstanceFactory to decoratepublic java.lang.Object getAspectInstance()
AspectInstanceFactory
getAspectInstance
in interface AspectInstanceFactory
null
)public boolean isMaterialized()
@Nullable public java.lang.ClassLoader getAspectClassLoader()
AspectInstanceFactory
getAspectClassLoader
in interface AspectInstanceFactory
null
for the bootstrap loader)ClassUtils.getDefaultClassLoader()
public AspectMetadata getAspectMetadata()
MetadataAwareAspectInstanceFactory
getAspectMetadata
in interface MetadataAwareAspectInstanceFactory
@Nullable public java.lang.Object getAspectCreationMutex()
MetadataAwareAspectInstanceFactory
getAspectCreationMutex
in interface MetadataAwareAspectInstanceFactory
null
for no mutex to use)public int getOrder()
Ordered
Higher values are interpreted as lower priority. As a consequence,
the object with the lowest value has the highest priority (somewhat
analogous to Servlet load-on-startup
values).
Same order values will result in arbitrary sort positions for the affected objects.
getOrder
in interface Ordered
Ordered.HIGHEST_PRECEDENCE
,
Ordered.LOWEST_PRECEDENCE
public java.lang.String toString()
toString
in class java.lang.Object