diff --git a/spring-aop/src/main/java/org/springframework/aop/framework/Advised.java b/spring-aop/src/main/java/org/springframework/aop/framework/Advised.java index ba5b46d3ad..b956f00fca 100644 --- a/spring-aop/src/main/java/org/springframework/aop/framework/Advised.java +++ b/spring-aop/src/main/java/org/springframework/aop/framework/Advised.java @@ -114,6 +114,15 @@ public interface Advised extends TargetClassAware { */ Advisor[] getAdvisors(); + /** + * Return the number of advisors applying to this proxy. + *

The default implementation delegates to {@code getAdvisors().length}. + * @since 5.3.1 + */ + default int getAdvisorCount() { + return getAdvisors().length; + } + /** * Add an advisor at the end of the advisor chain. *

The Advisor may be an {@link org.springframework.aop.IntroductionAdvisor}, @@ -223,12 +232,4 @@ public interface Advised extends TargetClassAware { */ String toProxyConfigString(); - /** - * Equivalent to {@code getAdvisors().length} - * @return count of advisors of this advised - */ - default int getAdvisorCount() { - return getAdvisors().length; - } - } diff --git a/spring-aop/src/main/java/org/springframework/aop/framework/AdvisedSupport.java b/spring-aop/src/main/java/org/springframework/aop/framework/AdvisedSupport.java index e49d894396..5664cf7ffd 100644 --- a/spring-aop/src/main/java/org/springframework/aop/framework/AdvisedSupport.java +++ b/spring-aop/src/main/java/org/springframework/aop/framework/AdvisedSupport.java @@ -241,6 +241,11 @@ public class AdvisedSupport extends ProxyConfig implements Advised { return this.advisors.toArray(new Advisor[0]); } + @Override + public int getAdvisorCount() { + return this.advisors.size(); + } + @Override public void addAdvisor(Advisor advisor) { int pos = this.advisors.size(); @@ -534,11 +539,6 @@ public class AdvisedSupport extends ProxyConfig implements Advised { this.methodCache = new ConcurrentHashMap<>(32); } - @Override - public int getAdvisorCount() { - return advisors.size(); - } - @Override public String toProxyConfigString() { return toString();