Package org.springframework.aop.aspectj.annotation

# Interface MetadataAwareAspectInstanceFactory

All Superinterfaces:
  `AspectInstanceFactory`, `org.springframework.core.Ordered`

All Known Implementing Classes:
  `BeanFactoryAspectInstanceFactory`, `LazySingletonAspectInstanceFactoryDecorator`, `PrototypeAspectInstanceFactory`, `SimpleMetadataAwareAspectInstanceFactory`, `SingletonMetadataAwareAspectInstanceFactory`

public interface MetadataAwareAspectInstanceFactory extends AspectInstanceFactory
Subinterface of `AspectInstanceFactory` that returns `AspectMetadata` associated with AspectJ-annotated classes.

Since:
  2.0
Author:
  Rod Johnson
See Also:
  - `AspectMetadata`
  - `AjType`

## Field Summary

### Fields inherited from interface org.springframework.core.Ordered

`HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE`

## Method Summary

Modifier and Type
Method
Description
`Object`
`getAspectCreationMutex()`
Get the best possible creation mutex for this factory.
`AspectMetadata`
`getAspectMetadata()`
Get the AspectJ AspectMetadata for this factory's aspect.

### Methods inherited from interface org.springframework.aop.aspectj.AspectInstanceFactory

`getAspectClassLoader, getAspectInstance`

### Methods inherited from interface org.springframework.core.Ordered

`getOrder`

## Method Details

### getAspectMetadata

AspectMetadata getAspectMetadata()
Get the AspectJ AspectMetadata for this factory's aspect.

Returns:
  the aspect metadata

### getAspectCreationMutex

@Nullable Object getAspectCreationMutex()
Get the best possible creation mutex for this factory.

Returns:
  the mutex object (may be `null` for no mutex to use)
Since:
  4.3