org.springframework.aop.framework.autoproxy.AbstractAdvisorAutoProxyCreator
subclass that exposes AspectJ's invocation context and understands AspectJ's rules
for advice precedence when multiple pieces of advice come from the same aspect.
| Modifier and Type | Class and Description |
|---|---|
| private static class | AspectJAwareAdvisorAutoProxyCreator.PartiallyComparableAdvisorHolder
Implements AspectJ's |
| Modifier and Type | Field and Description |
|---|---|
| private static final Comparator |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| protected void | extendAdvisors(List<Advisor>
the Advisors that have already been identified as
applying to a given bean candidateAdvisors)Overrides org. ExposeInvocationInterceptor to the beginning of the advice chain.
|
| protected boolean | shouldSkip(Class<?>
the class of the bean beanClass, String the name of the bean beanName)Overrides org. true if the
given bean should not be considered for auto-proxying by this post-processor.
|
| protected List | sortAdvisors(List<Advisor>
the source List of Advisors advisors)Overrides org. Advisor instances according to AspectJ precedence.
|
| DEFAULT_PRECEDENCE_COMPARATOR | back to summary |
|---|---|
| private static final Comparator<Advisor> DEFAULT_PRECEDENCE_COMPARATOR | |
| AspectJAwareAdvisorAutoProxyCreator | back to summary |
|---|---|
| public AspectJAwareAdvisorAutoProxyCreator() | |
| extendAdvisors | back to summary |
|---|---|
| protected void extendAdvisors(List<Advisor> candidateAdvisors) Overrides org. Add an This additional advice is needed when using AspectJ pointcut expressions and when using AspectJ-style advice.
| |
| shouldSkip | back to summary |
|---|---|
| protected boolean shouldSkip(Class<?> beanClass, String beanName) Overrides org. Doc from org. Subclasses should override this method to return Sometimes we need to be able to avoid this happening, e.g. if it will lead to
a circular reference or if the existing target instance needs to be preserved.
This implementation returns | |
| sortAdvisors | back to summary |
|---|---|
| protected List Overrides org. Sort the supplied If two pieces of advice come from the same aspect, they will have the same order. Advice from the same aspect is then further ordered according to the following rules:
Important Note Advisors are sorted in precedence order, from the highest precedence to the lowest. "On the way in" to a join point, the highest precedence advisor should run first. "On the way out" of a join point, the highest precedence advisor should run last.
| |
PartialComparable interface for defining partial orderings.
| Modifier and Type | Field and Description |
|---|---|
| private final Advisor | |
| private final Comparator |
| Access | Constructor and Description |
|---|---|
| public |
| Modifier and Type | Method and Description |
|---|---|
| public int | |
| public int | fallbackCompareTo(Object obj)
Implements org. |
| public Advisor | |
| public String |
| advisor | back to summary |
|---|---|
| private final Advisor advisor | |
| comparator | back to summary |
|---|---|
| private final Comparator<Advisor> comparator | |
| PartiallyComparableAdvisorHolder | back to summary |
|---|---|
| public PartiallyComparableAdvisorHolder(Advisor advisor, Comparator<Advisor> comparator) | |
| compareTo | back to summary |
|---|---|
| public int compareTo(Object obj) Implements org.
| |
| fallbackCompareTo | back to summary |
|---|---|
| public int fallbackCompareTo(Object obj) Implements org. Doc from org. This method can provide a deterministic ordering for elements that are strictly not comparable. If you have no need for this, this method can just return 0 whenever called.
| |
| getAdvisor | back to summary |
|---|---|
| public Advisor getAdvisor() | |
| toString | back to summary |
|---|---|
| public String toString() Overrides java. Doc from java. Returns a string representation of the object. | |