From c0db2079488520cbdcfedf404d9dd08c9497e7cd Mon Sep 17 00:00:00 2001 From: Arjen Poutsma Date: Mon, 27 Oct 2008 23:31:39 +0000 Subject: [PATCH] Added @Override annotations to aop module --- .../main/java/org/springframework/aop/TrueClassFilter.java | 1 + .../java/org/springframework/aop/TrueMethodMatcher.java | 1 + .../main/java/org/springframework/aop/TruePointcut.java | 1 + .../springframework/aop/aspectj/AbstractAspectJAdvice.java | 1 + .../aop/aspectj/AspectJAfterReturningAdvice.java | 1 + .../aop/aspectj/AspectJAfterThrowingAdvice.java | 1 + .../springframework/aop/aspectj/AspectJAroundAdvice.java | 1 + .../aop/aspectj/AspectJExpressionPointcut.java | 3 +++ .../aop/aspectj/AspectJPointcutAdvisor.java | 2 ++ .../aop/aspectj/MethodInvocationProceedingJoinPoint.java | 1 + .../org/springframework/aop/aspectj/RuntimeTestWalker.java | 3 +++ .../aspectj/annotation/AbstractAspectJAdvisorFactory.java | 1 + .../annotation/AnnotationAwareAspectJAutoProxyCreator.java | 2 ++ .../SimpleMetadataAwareAspectInstanceFactory.java | 1 + .../SingletonMetadataAwareAspectInstanceFactory.java | 1 + .../autoproxy/AspectJAwareAdvisorAutoProxyCreator.java | 4 ++++ .../java/org/springframework/aop/config/AdviceEntry.java | 1 + .../aop/config/AdvisorComponentDefinition.java | 3 +++ .../java/org/springframework/aop/config/AdvisorEntry.java | 1 + .../aop/config/AspectComponentDefinition.java | 2 ++ .../java/org/springframework/aop/config/AspectEntry.java | 1 + .../aop/config/PointcutComponentDefinition.java | 2 ++ .../java/org/springframework/aop/config/PointcutEntry.java | 1 + .../org/springframework/aop/framework/AdvisedSupport.java | 3 +++ .../org/springframework/aop/framework/Cglib2AopProxy.java | 7 +++++++ .../springframework/aop/framework/JdkDynamicAopProxy.java | 2 ++ .../org/springframework/aop/framework/ProxyConfig.java | 1 + .../springframework/aop/framework/ProxyCreatorSupport.java | 1 + .../springframework/aop/framework/ProxyFactoryBean.java | 3 +++ .../aop/framework/ReflectiveMethodInvocation.java | 1 + .../autoproxy/AbstractAdvisorAutoProxyCreator.java | 4 ++++ .../aop/framework/autoproxy/AbstractAutoProxyCreator.java | 2 ++ .../aop/framework/autoproxy/BeanNameAutoProxyCreator.java | 1 + .../autoproxy/DefaultAdvisorAutoProxyCreator.java | 1 + .../autoproxy/InfrastructureAdvisorAutoProxyCreator.java | 2 ++ .../autoproxy/target/LazyInitTargetSourceCreator.java | 2 ++ .../autoproxy/target/QuickTargetSourceCreator.java | 1 + .../aop/interceptor/CustomizableTraceInterceptor.java | 1 + .../springframework/aop/interceptor/DebugInterceptor.java | 2 ++ .../aop/interceptor/ExposeBeanNameAdvisors.java | 1 + .../aop/interceptor/ExposeInvocationInterceptor.java | 2 ++ .../interceptor/JamonPerformanceMonitorInterceptor.java | 2 ++ .../aop/interceptor/PerformanceMonitorInterceptor.java | 1 + .../aop/interceptor/SimpleTraceInterceptor.java | 1 + .../aop/support/AbstractBeanFactoryPointcutAdvisor.java | 1 + .../aop/support/AbstractGenericPointcutAdvisor.java | 1 + .../aop/support/AbstractPointcutAdvisor.java | 2 ++ .../aop/support/AbstractRegexpMethodPointcut.java | 3 +++ .../java/org/springframework/aop/support/ClassFilters.java | 4 ++++ .../springframework/aop/support/ComposablePointcut.java | 3 +++ .../springframework/aop/support/ControlFlowPointcut.java | 2 ++ .../aop/support/DefaultBeanFactoryPointcutAdvisor.java | 1 + .../aop/support/DefaultIntroductionAdvisor.java | 3 +++ .../aop/support/DefaultPointcutAdvisor.java | 1 + .../aop/support/JdkRegexpMethodPointcut.java | 4 ++++ .../org/springframework/aop/support/MethodMatchers.java | 7 +++++++ .../aop/support/NameMatchMethodPointcut.java | 2 ++ .../aop/support/RegexpMethodPointcutAdvisor.java | 1 + .../aop/target/AbstractBeanFactoryBasedTargetSource.java | 3 +++ .../aop/target/AbstractPoolingTargetSource.java | 2 ++ .../aop/target/AbstractPrototypeBasedTargetSource.java | 1 + .../aop/target/CommonsPoolTargetSource.java | 3 +++ .../org/springframework/aop/target/EmptyTargetSource.java | 3 +++ .../aop/target/HotSwappableTargetSource.java | 3 +++ .../springframework/aop/target/PrototypeTargetSource.java | 2 ++ .../springframework/aop/target/SingletonTargetSource.java | 3 +++ .../aop/target/ThreadLocalTargetSource.java | 1 + .../target/dynamic/BeanFactoryRefreshableTargetSource.java | 1 + 68 files changed, 134 insertions(+) diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/TrueClassFilter.java b/org.springframework.aop/src/main/java/org/springframework/aop/TrueClassFilter.java index 5aade6cfea..0b8c228a4a 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/TrueClassFilter.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/TrueClassFilter.java @@ -46,6 +46,7 @@ class TrueClassFilter implements ClassFilter, Serializable { return INSTANCE; } + @Override public String toString() { return "ClassFilter.TRUE"; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/TrueMethodMatcher.java b/org.springframework.aop/src/main/java/org/springframework/aop/TrueMethodMatcher.java index 4f9602cf91..7be4d470a2 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/TrueMethodMatcher.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/TrueMethodMatcher.java @@ -56,6 +56,7 @@ class TrueMethodMatcher implements MethodMatcher, Serializable { return INSTANCE; } + @Override public String toString() { return "MethodMatcher.TRUE"; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/TruePointcut.java b/org.springframework.aop/src/main/java/org/springframework/aop/TruePointcut.java index d7d5900a07..0c6efcb70e 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/TruePointcut.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/TruePointcut.java @@ -50,6 +50,7 @@ class TruePointcut implements Pointcut, Serializable { return INSTANCE; } + @Override public String toString() { return "Pointcut.TRUE"; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AbstractAspectJAdvice.java b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AbstractAspectJAdvice.java index 3c40df60cd..441e69b22b 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AbstractAspectJAdvice.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AbstractAspectJAdvice.java @@ -665,6 +665,7 @@ public abstract class AbstractAspectJAdvice implements Advice, AspectJPrecedence } + @Override public String toString() { return getClass().getName() + ": advice method [" + this.aspectJAdviceMethod + "]; " + "aspect name '" + this.aspectName + "'"; diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJAfterReturningAdvice.java b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJAfterReturningAdvice.java index f4bda7a6da..84bc701dd9 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJAfterReturningAdvice.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJAfterReturningAdvice.java @@ -48,6 +48,7 @@ public class AspectJAfterReturningAdvice extends AbstractAspectJAdvice implement return true; } + @Override public void setReturningName(String name) { setReturningNameNoCheck(name); } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJAfterThrowingAdvice.java b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJAfterThrowingAdvice.java index 1ed4f54e7d..6b9b611b96 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJAfterThrowingAdvice.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJAfterThrowingAdvice.java @@ -45,6 +45,7 @@ public class AspectJAfterThrowingAdvice extends AbstractAspectJAdvice implements return true; } + @Override public void setThrowingName(String name) { setThrowingNameNoCheck(name); } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJAroundAdvice.java b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJAroundAdvice.java index 9af7962a4c..3048103a10 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJAroundAdvice.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJAroundAdvice.java @@ -49,6 +49,7 @@ public class AspectJAroundAdvice extends AbstractAspectJAdvice implements Method return false; } + @Override protected boolean supportsProceedingJoinPoint() { return true; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJExpressionPointcut.java b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJExpressionPointcut.java index da189d0817..6df302bd6c 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJExpressionPointcut.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJExpressionPointcut.java @@ -385,6 +385,7 @@ public class AspectJExpressionPointcut extends AbstractExpressionPointcut } + @Override public boolean equals(Object other) { if (this == other) { return true; @@ -399,6 +400,7 @@ public class AspectJExpressionPointcut extends AbstractExpressionPointcut ObjectUtils.nullSafeEquals(this.pointcutParameterTypes, otherPc.pointcutParameterTypes); } + @Override public int hashCode() { int hashCode = ObjectUtils.nullSafeHashCode(this.getExpression()); hashCode = 31 * hashCode + ObjectUtils.nullSafeHashCode(this.pointcutDeclarationScope); @@ -407,6 +409,7 @@ public class AspectJExpressionPointcut extends AbstractExpressionPointcut return hashCode; } + @Override public String toString() { StringBuffer sb = new StringBuffer(); sb.append("AspectJExpressionPointcut: "); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJPointcutAdvisor.java b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJPointcutAdvisor.java index 3c09f0d31d..2e6c0ad4bb 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJPointcutAdvisor.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/AspectJPointcutAdvisor.java @@ -78,6 +78,7 @@ public class AspectJPointcutAdvisor implements PointcutAdvisor, Ordered { } + @Override public boolean equals(Object other) { if (this == other) { return true; @@ -89,6 +90,7 @@ public class AspectJPointcutAdvisor implements PointcutAdvisor, Ordered { return (ObjectUtils.nullSafeEquals(this.advice, otherAdvisor.advice)); } + @Override public int hashCode() { return AspectJPointcutAdvisor.class.hashCode(); } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/MethodInvocationProceedingJoinPoint.java b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/MethodInvocationProceedingJoinPoint.java index da28648ddc..5e5a0b6397 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/MethodInvocationProceedingJoinPoint.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/MethodInvocationProceedingJoinPoint.java @@ -142,6 +142,7 @@ public class MethodInvocationProceedingJoinPoint implements ProceedingJoinPoint, return getClass().getName() + ": execution: [" + this.methodInvocation + "]"; } + @Override public String toString() { return getClass().getName() + ": " + toShortString(); } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/RuntimeTestWalker.java b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/RuntimeTestWalker.java index 974838675a..e63d8a5c4e 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/RuntimeTestWalker.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/RuntimeTestWalker.java @@ -173,6 +173,7 @@ class RuntimeTestWalker { return matches; } + @Override public void visit(Instanceof i) { ResolvedType type = (ResolvedType) i.getType(); int varType = getVarType((ReflectionVar) i.getVar()); @@ -234,6 +235,7 @@ class RuntimeTestWalker { return this.testsSubtypeSensitiveVars; } + @Override public void visit(Instanceof i) { ReflectionVar v = (ReflectionVar) i.getVar(); Object varUnderTest = v.getBindingAtJoinPoint(thisObj,targetObj,argsObjs); @@ -242,6 +244,7 @@ class RuntimeTestWalker { } } + @Override public void visit(HasAnnotation hasAnn) { // If you thought things were bad before, now we sink to new levels of horror... ReflectionVar v = (ReflectionVar) hasAnn.getVar(); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/AbstractAspectJAdvisorFactory.java b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/AbstractAspectJAdvisorFactory.java index 4a14ce17dc..c3e5005463 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/AbstractAspectJAdvisorFactory.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/AbstractAspectJAdvisorFactory.java @@ -300,6 +300,7 @@ public abstract class AbstractAspectJAdvisorFactory implements AspectJAdvisorFac return this.argNames; } + @Override public String toString() { return this.annotation.toString(); } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/AnnotationAwareAspectJAutoProxyCreator.java b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/AnnotationAwareAspectJAutoProxyCreator.java index e11ba99122..7f4e65135b 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/AnnotationAwareAspectJAutoProxyCreator.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/AnnotationAwareAspectJAutoProxyCreator.java @@ -86,6 +86,7 @@ public class AnnotationAwareAspectJAutoProxyCreator extends AspectJAwareAdvisorA return advisors; } + @Override protected boolean isInfrastructureClass(Class beanClass) { // Previously we setProxyTargetClass(true) in the constructor, but that has too // broad an impact. Instead we now override isInfrastructureClass to avoid proxying @@ -130,6 +131,7 @@ public class AnnotationAwareAspectJAutoProxyCreator extends AspectJAwareAdvisorA super(beanFactory, advisorFactory); } + @Override protected boolean isEligibleBean(String beanName) { return AnnotationAwareAspectJAutoProxyCreator.this.isEligibleAspectBean(beanName); } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/SimpleMetadataAwareAspectInstanceFactory.java b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/SimpleMetadataAwareAspectInstanceFactory.java index 7b5581c49a..07d3b456de 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/SimpleMetadataAwareAspectInstanceFactory.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/SimpleMetadataAwareAspectInstanceFactory.java @@ -56,6 +56,7 @@ public class SimpleMetadataAwareAspectInstanceFactory extends SimpleAspectInstan *

The default implementation simply returns Ordered.LOWEST_PRECEDENCE. * @param aspectClass the aspect class */ + @Override protected int getOrderForAspectClass(Class aspectClass) { Order order = (Order) aspectClass.getAnnotation(Order.class); if (order != null) { diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/SingletonMetadataAwareAspectInstanceFactory.java b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/SingletonMetadataAwareAspectInstanceFactory.java index f4c70b4d80..4f619d21d1 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/SingletonMetadataAwareAspectInstanceFactory.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/annotation/SingletonMetadataAwareAspectInstanceFactory.java @@ -57,6 +57,7 @@ public class SingletonMetadataAwareAspectInstanceFactory extends SingletonAspect * falling back to Ordered.LOWEST_PRECEDENCE. * @see org.springframework.core.annotation.Order */ + @Override protected int getOrderForAspectClass(Class aspectClass) { Order order = (Order) aspectClass.getAnnotation(Order.class); if (order != null) { diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/autoproxy/AspectJAwareAdvisorAutoProxyCreator.java b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/autoproxy/AspectJAwareAdvisorAutoProxyCreator.java index 04d798e355..be4a5aadba 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/autoproxy/AspectJAwareAdvisorAutoProxyCreator.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/aspectj/autoproxy/AspectJAwareAdvisorAutoProxyCreator.java @@ -64,6 +64,7 @@ public class AspectJAwareAdvisorAutoProxyCreator extends AbstractAdvisorAutoProx * advisor should run first. "On the way out" of a join point, the highest precedence * advisor should run last. */ + @Override protected List sortAdvisors(List advisors) { // build list for sorting List partiallyComparableAdvisors = new LinkedList(); @@ -96,10 +97,12 @@ public class AspectJAwareAdvisorAutoProxyCreator extends AbstractAdvisorAutoProx * These additional advices are needed when using AspectJ expression pointcuts * and when using AspectJ-style advice. */ + @Override protected void extendAdvisors(List candidateAdvisors) { AspectJProxyUtils.makeAdvisorChainAspectJCapableIfNecessary(candidateAdvisors); } + @Override protected boolean shouldSkip(Class beanClass, String beanName) { // TODO: Consider optimization by caching the list of the aspect names List candidtate = findCandidateAdvisors(); @@ -141,6 +144,7 @@ public class AspectJAwareAdvisorAutoProxyCreator extends AbstractAdvisorAutoProx return this.advisor; } + @Override public String toString() { StringBuffer sb = new StringBuffer(); Advice advice = this.advisor.getAdvice(); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/config/AdviceEntry.java b/org.springframework.aop/src/main/java/org/springframework/aop/config/AdviceEntry.java index 3024fb2ba5..4fa6a8a552 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/config/AdviceEntry.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/config/AdviceEntry.java @@ -37,6 +37,7 @@ public class AdviceEntry implements ParseState.Entry { this.kind = kind; } + @Override public String toString() { return "Advice (" + this.kind + ")"; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/config/AdvisorComponentDefinition.java b/org.springframework.aop/src/main/java/org/springframework/aop/config/AdvisorComponentDefinition.java index 342bbd195d..6b4dffb6d9 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/config/AdvisorComponentDefinition.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/config/AdvisorComponentDefinition.java @@ -95,14 +95,17 @@ public class AdvisorComponentDefinition extends AbstractComponentDefinition { return this.advisorBeanName; } + @Override public String getDescription() { return this.description; } + @Override public BeanDefinition[] getBeanDefinitions() { return this.beanDefinitions; } + @Override public BeanReference[] getBeanReferences() { return this.beanReferences; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/config/AdvisorEntry.java b/org.springframework.aop/src/main/java/org/springframework/aop/config/AdvisorEntry.java index 0fd4e0166a..fa635ae7a9 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/config/AdvisorEntry.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/config/AdvisorEntry.java @@ -37,6 +37,7 @@ public class AdvisorEntry implements ParseState.Entry { this.name = name; } + @Override public String toString() { return "Advisor '" + this.name + "'"; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/config/AspectComponentDefinition.java b/org.springframework.aop/src/main/java/org/springframework/aop/config/AspectComponentDefinition.java index 3a5f9e189c..52007ec176 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/config/AspectComponentDefinition.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/config/AspectComponentDefinition.java @@ -46,10 +46,12 @@ public class AspectComponentDefinition extends CompositeComponentDefinition { } + @Override public BeanDefinition[] getBeanDefinitions() { return this.beanDefinitions; } + @Override public BeanReference[] getBeanReferences() { return this.beanReferences; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/config/AspectEntry.java b/org.springframework.aop/src/main/java/org/springframework/aop/config/AspectEntry.java index 64dd3c1646..10d3271d29 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/config/AspectEntry.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/config/AspectEntry.java @@ -43,6 +43,7 @@ public class AspectEntry implements ParseState.Entry { this.ref = ref; } + @Override public String toString() { return "Aspect: " + (StringUtils.hasLength(this.id) ? "id='" + this.id + "'" : "ref='" + this.ref + "'"); } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/config/PointcutComponentDefinition.java b/org.springframework.aop/src/main/java/org/springframework/aop/config/PointcutComponentDefinition.java index e6fe127822..cd1c0f9f59 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/config/PointcutComponentDefinition.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/config/PointcutComponentDefinition.java @@ -50,10 +50,12 @@ public class PointcutComponentDefinition extends AbstractComponentDefinition { return this.pointcutBeanName; } + @Override public String getDescription() { return this.description; } + @Override public BeanDefinition[] getBeanDefinitions() { return new BeanDefinition[] {this.pointcutDefinition}; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/config/PointcutEntry.java b/org.springframework.aop/src/main/java/org/springframework/aop/config/PointcutEntry.java index c726178f7b..c308d5b833 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/config/PointcutEntry.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/config/PointcutEntry.java @@ -36,6 +36,7 @@ public class PointcutEntry implements ParseState.Entry { this.name = name; } + @Override public String toString() { return "Pointcut '" + this.name + "'"; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/framework/AdvisedSupport.java b/org.springframework.aop/src/main/java/org/springframework/aop/framework/AdvisedSupport.java index e1e40466da..ce796cc430 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/framework/AdvisedSupport.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/framework/AdvisedSupport.java @@ -547,6 +547,7 @@ public class AdvisedSupport extends ProxyConfig implements Advised { /** * For debugging/diagnostic use. */ + @Override public String toString() { StringBuffer sb = new StringBuffer(getClass().getName() + ": "); sb.append(this.interfaces.size()).append(" interfaces "); @@ -574,6 +575,7 @@ public class AdvisedSupport extends ProxyConfig implements Advised { this.hashCode = method.hashCode(); } + @Override public boolean equals(Object other) { if (other == this) { return true; @@ -582,6 +584,7 @@ public class AdvisedSupport extends ProxyConfig implements Advised { return (this.method == otherKey.method); } + @Override public int hashCode() { return this.hashCode; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/framework/Cglib2AopProxy.java b/org.springframework.aop/src/main/java/org/springframework/aop/framework/Cglib2AopProxy.java index 8d6caee8a3..5ae63613a7 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/framework/Cglib2AopProxy.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/framework/Cglib2AopProxy.java @@ -352,11 +352,13 @@ final class Cglib2AopProxy implements AopProxy, Serializable { } + @Override public boolean equals(Object other) { return (this == other || (other instanceof Cglib2AopProxy && AopProxyUtils.equalsInProxy(this.advised, ((Cglib2AopProxy) other).advised))); } + @Override public int hashCode() { return Cglib2AopProxy.class.hashCode() * 13 + this.advised.getTargetSource().hashCode(); } @@ -649,6 +651,7 @@ final class Cglib2AopProxy implements AopProxy, Serializable { } } + @Override public boolean equals(Object other) { return (this == other || (other instanceof DynamicAdvisedInterceptor && @@ -658,6 +661,7 @@ final class Cglib2AopProxy implements AopProxy, Serializable { /** * CGLIB uses this to drive proxy creation. */ + @Override public int hashCode() { return this.advised.hashCode(); } @@ -692,6 +696,7 @@ final class Cglib2AopProxy implements AopProxy, Serializable { * Gives a marginal performance improvement versus using reflection to * invoke the target when invoking public methods. */ + @Override protected Object invokeJoinpoint() throws Throwable { if (this.protectedMethod) { return super.invokeJoinpoint(); @@ -848,6 +853,7 @@ final class Cglib2AopProxy implements AopProxy, Serializable { } } + @Override public boolean equals(Object other) { if (other == this) { return true; @@ -915,6 +921,7 @@ final class Cglib2AopProxy implements AopProxy, Serializable { return true; } + @Override public int hashCode() { int hashCode = 0; Advisor[] advisors = this.advised.getAdvisors(); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/framework/JdkDynamicAopProxy.java b/org.springframework.aop/src/main/java/org/springframework/aop/framework/JdkDynamicAopProxy.java index 8aa4376872..fbed941dc0 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/framework/JdkDynamicAopProxy.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/framework/JdkDynamicAopProxy.java @@ -232,6 +232,7 @@ final class JdkDynamicAopProxy implements AopProxy, InvocationHandler, Serializa *

The compared object may be a JdkDynamicAopProxy instance itself * or a dynamic proxy wrapping a JdkDynamicAopProxy instance. */ + @Override public boolean equals(Object other) { if (other == this) { return true; @@ -263,6 +264,7 @@ final class JdkDynamicAopProxy implements AopProxy, InvocationHandler, Serializa /** * Proxy uses the hash code of the TargetSource. */ + @Override public int hashCode() { return JdkDynamicAopProxy.class.hashCode() * 13 + this.advised.getTargetSource().hashCode(); } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/framework/ProxyConfig.java b/org.springframework.aop/src/main/java/org/springframework/aop/framework/ProxyConfig.java index d26b8a571a..905fb85a83 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/framework/ProxyConfig.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/framework/ProxyConfig.java @@ -158,6 +158,7 @@ public class ProxyConfig implements Serializable { this.opaque = other.opaque; } + @Override public String toString() { StringBuffer sb = new StringBuffer(); sb.append("proxyTargetClass=").append(this.proxyTargetClass).append("; "); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/framework/ProxyCreatorSupport.java b/org.springframework.aop/src/main/java/org/springframework/aop/framework/ProxyCreatorSupport.java index 495fda07bf..29ee8db36b 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/framework/ProxyCreatorSupport.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/framework/ProxyCreatorSupport.java @@ -121,6 +121,7 @@ public class ProxyCreatorSupport extends AdvisedSupport { * Propagate advice change event to all AdvisedSupportListeners. * @see AdvisedSupportListener#adviceChanged */ + @Override protected void adviceChanged() { super.adviceChanged(); synchronized (this) { diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/framework/ProxyFactoryBean.java b/org.springframework.aop/src/main/java/org/springframework/aop/framework/ProxyFactoryBean.java index 9b3b9136f5..78c4f54427 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/framework/ProxyFactoryBean.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/framework/ProxyFactoryBean.java @@ -203,6 +203,7 @@ public class ProxyFactoryBean extends ProxyCreatorSupport this.advisorAdapterRegistry = advisorAdapterRegistry; } + @Override public void setFrozen(boolean frozen) { this.freezeProxy = frozen; } @@ -599,6 +600,7 @@ public class ProxyFactoryBean extends ProxyCreatorSupport /** * Blow away and recache singleton on an advice change. */ + @Override protected void adviceChanged() { super.adviceChanged(); if (this.singleton) { @@ -650,6 +652,7 @@ public class ProxyFactoryBean extends ProxyCreatorSupport throw new UnsupportedOperationException("Cannot invoke methods: " + this.message); } + @Override public String toString() { return this.message; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/framework/ReflectiveMethodInvocation.java b/org.springframework.aop/src/main/java/org/springframework/aop/framework/ReflectiveMethodInvocation.java index 4900ba410b..1290a30159 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/framework/ReflectiveMethodInvocation.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/framework/ReflectiveMethodInvocation.java @@ -262,6 +262,7 @@ public class ReflectiveMethodInvocation implements ProxyMethodInvocation, Clonea } + @Override public String toString() { // Don't do toString on target, it may be proxied. StringBuffer sb = new StringBuffer("ReflectiveMethodInvocation: "); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/AbstractAdvisorAutoProxyCreator.java b/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/AbstractAdvisorAutoProxyCreator.java index 4df045c18c..36b1438401 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/AbstractAdvisorAutoProxyCreator.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/AbstractAdvisorAutoProxyCreator.java @@ -49,6 +49,7 @@ public abstract class AbstractAdvisorAutoProxyCreator extends AbstractAutoProxyC private BeanFactoryAdvisorRetrievalHelper advisorRetrievalHelper; + @Override public void setBeanFactory(BeanFactory beanFactory) { super.setBeanFactory(beanFactory); if (!(beanFactory instanceof ConfigurableListableBeanFactory)) { @@ -62,6 +63,7 @@ public abstract class AbstractAdvisorAutoProxyCreator extends AbstractAutoProxyC } + @Override protected Object[] getAdvicesAndAdvisorsForBean(Class beanClass, String beanName, TargetSource targetSource) { List advisors = findEligibleAdvisors(beanClass, beanName); if (advisors.isEmpty()) { @@ -155,6 +157,7 @@ public abstract class AbstractAdvisorAutoProxyCreator extends AbstractAutoProxyC /** * This auto-proxy creator always returns pre-filtered Advisors. */ + @Override protected boolean advisorsPreFiltered() { return true; } @@ -170,6 +173,7 @@ public abstract class AbstractAdvisorAutoProxyCreator extends AbstractAutoProxyC super(beanFactory); } + @Override protected boolean isEligibleBean(String beanName) { return AbstractAdvisorAutoProxyCreator.this.isEligibleAdvisorBean(beanName); } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/AbstractAutoProxyCreator.java b/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/AbstractAutoProxyCreator.java index f6ce2dd7d6..8376f97b5b 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/AbstractAutoProxyCreator.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/AbstractAutoProxyCreator.java @@ -172,10 +172,12 @@ public abstract class AbstractAutoProxyCreator extends ProxyConfig *

Overridden from the super class to prevent the proxy configuration * from being frozen before the proxy is created. */ + @Override public void setFrozen(boolean frozen) { this.freezeProxy = frozen; } + @Override public boolean isFrozen() { return this.freezeProxy; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/BeanNameAutoProxyCreator.java b/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/BeanNameAutoProxyCreator.java index c5f33ff400..084c906f1d 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/BeanNameAutoProxyCreator.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/BeanNameAutoProxyCreator.java @@ -72,6 +72,7 @@ public class BeanNameAutoProxyCreator extends AbstractAutoProxyCreator { /** * Identify as bean to proxy if the bean name is in the configured list of names. */ + @Override protected Object[] getAdvicesAndAdvisorsForBean(Class beanClass, String beanName, TargetSource targetSource) { if (this.beanNames != null) { for (Iterator it = this.beanNames.iterator(); it.hasNext();) { diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/DefaultAdvisorAutoProxyCreator.java b/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/DefaultAdvisorAutoProxyCreator.java index aa05c646bb..334b9a5cfe 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/DefaultAdvisorAutoProxyCreator.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/DefaultAdvisorAutoProxyCreator.java @@ -91,6 +91,7 @@ public class DefaultAdvisorAutoProxyCreator extends AbstractAdvisorAutoProxyCrea * @see #setUsePrefix * @see #setAdvisorBeanNamePrefix */ + @Override protected boolean isEligibleAdvisorBean(String beanName) { return (!isUsePrefix() || beanName.startsWith(getAdvisorBeanNamePrefix())); } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/InfrastructureAdvisorAutoProxyCreator.java b/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/InfrastructureAdvisorAutoProxyCreator.java index d616f46cc9..35ad24e1c7 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/InfrastructureAdvisorAutoProxyCreator.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/InfrastructureAdvisorAutoProxyCreator.java @@ -31,11 +31,13 @@ public class InfrastructureAdvisorAutoProxyCreator extends AbstractAdvisorAutoPr private ConfigurableListableBeanFactory beanFactory; + @Override protected void initBeanFactory(ConfigurableListableBeanFactory beanFactory) { super.initBeanFactory(beanFactory); this.beanFactory = beanFactory; } + @Override protected boolean isEligibleAdvisorBean(String beanName) { return (this.beanFactory.containsBeanDefinition(beanName) && this.beanFactory.getBeanDefinition(beanName).getRole() == BeanDefinition.ROLE_INFRASTRUCTURE); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/target/LazyInitTargetSourceCreator.java b/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/target/LazyInitTargetSourceCreator.java index df89b52e28..a32f3a3f2c 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/target/LazyInitTargetSourceCreator.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/target/LazyInitTargetSourceCreator.java @@ -53,10 +53,12 @@ import org.springframework.beans.factory.config.ConfigurableListableBeanFactory; */ public class LazyInitTargetSourceCreator extends AbstractBeanFactoryBasedTargetSourceCreator { + @Override protected boolean isPrototypeBased() { return false; } + @Override protected AbstractBeanFactoryBasedTargetSource createBeanFactoryBasedTargetSource( Class beanClass, String beanName) { diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/target/QuickTargetSourceCreator.java b/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/target/QuickTargetSourceCreator.java index 00d5013836..094188be1c 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/target/QuickTargetSourceCreator.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/framework/autoproxy/target/QuickTargetSourceCreator.java @@ -39,6 +39,7 @@ public class QuickTargetSourceCreator extends AbstractBeanFactoryBasedTargetSour public static final String PREFIX_THREAD_LOCAL = "%"; public static final String PREFIX_PROTOTYPE = "!"; + @Override protected final AbstractBeanFactoryBasedTargetSource createBeanFactoryBasedTargetSource( Class beanClass, String beanName) { diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/CustomizableTraceInterceptor.java b/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/CustomizableTraceInterceptor.java index 804349ec57..fa20d21a2d 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/CustomizableTraceInterceptor.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/CustomizableTraceInterceptor.java @@ -243,6 +243,7 @@ public class CustomizableTraceInterceptor extends AbstractTraceInterceptor { * @see #setExitMessage * @see #setExceptionMessage */ + @Override protected Object invokeUnderTrace(MethodInvocation invocation, Log logger) throws Throwable { String name = invocation.getMethod().getDeclaringClass().getName() + "." + invocation.getMethod().getName(); StopWatch stopWatch = new StopWatch(name); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/DebugInterceptor.java b/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/DebugInterceptor.java index 598bf89f16..665238f35b 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/DebugInterceptor.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/DebugInterceptor.java @@ -54,6 +54,7 @@ public class DebugInterceptor extends SimpleTraceInterceptor { } + @Override public Object invoke(MethodInvocation invocation) throws Throwable { synchronized (this) { this.count++; @@ -61,6 +62,7 @@ public class DebugInterceptor extends SimpleTraceInterceptor { return super.invoke(invocation); } + @Override protected String getInvocationDescription(MethodInvocation invocation) { return invocation + "; count=" + this.count; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/ExposeBeanNameAdvisors.java b/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/ExposeBeanNameAdvisors.java index 80674e70ca..96f4f50671 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/ExposeBeanNameAdvisors.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/ExposeBeanNameAdvisors.java @@ -131,6 +131,7 @@ public abstract class ExposeBeanNameAdvisors { this.beanName = beanName; } + @Override public Object invoke(MethodInvocation mi) throws Throwable { if (!(mi instanceof ProxyMethodInvocation)) { throw new IllegalStateException("MethodInvocation is not a Spring ProxyMethodInvocation: " + mi); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/ExposeInvocationInterceptor.java b/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/ExposeInvocationInterceptor.java index 16c5bc3d21..176f3174bb 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/ExposeInvocationInterceptor.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/ExposeInvocationInterceptor.java @@ -49,9 +49,11 @@ public class ExposeInvocationInterceptor implements MethodInterceptor, Serializa * Spring AOP, as it prevents the need to create a new Advisor to wrap the instance. */ public static final Advisor ADVISOR = new DefaultPointcutAdvisor(INSTANCE) { + @Override public int getOrder() { return Integer.MIN_VALUE; } + @Override public String toString() { return ExposeInvocationInterceptor.class.getName() +".ADVISOR"; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/JamonPerformanceMonitorInterceptor.java b/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/JamonPerformanceMonitorInterceptor.java index 1c460db34d..0ea4dd527f 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/JamonPerformanceMonitorInterceptor.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/JamonPerformanceMonitorInterceptor.java @@ -88,6 +88,7 @@ public class JamonPerformanceMonitorInterceptor extends AbstractMonitoringInterc * @see #setTrackAllInvocations * @see #isLogEnabled */ + @Override protected boolean isInterceptorEnabled(MethodInvocation invocation, Log logger) { return (this.trackAllInvocations || isLogEnabled(logger)); } @@ -98,6 +99,7 @@ public class JamonPerformanceMonitorInterceptor extends AbstractMonitoringInterc * @see com.jamonapi.MonitorFactory#start * @see com.jamonapi.Monitor#stop */ + @Override protected Object invokeUnderTrace(MethodInvocation invocation, Log logger) throws Throwable { String name = createInvocationTraceName(invocation); Monitor monitor = MonitorFactory.start(name); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/PerformanceMonitorInterceptor.java b/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/PerformanceMonitorInterceptor.java index b643267af7..f22f54a77b 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/PerformanceMonitorInterceptor.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/PerformanceMonitorInterceptor.java @@ -52,6 +52,7 @@ public class PerformanceMonitorInterceptor extends AbstractMonitoringInterceptor } + @Override protected Object invokeUnderTrace(MethodInvocation invocation, Log logger) throws Throwable { String name = createInvocationTraceName(invocation); StopWatch stopWatch = new StopWatch(name); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/SimpleTraceInterceptor.java b/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/SimpleTraceInterceptor.java index 49239dbc8c..34d0185561 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/SimpleTraceInterceptor.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/interceptor/SimpleTraceInterceptor.java @@ -51,6 +51,7 @@ public class SimpleTraceInterceptor extends AbstractTraceInterceptor { } + @Override protected Object invokeUnderTrace(MethodInvocation invocation, Log logger) throws Throwable { String invocationDescription = getInvocationDescription(invocation); logger.trace("Entering " + invocationDescription); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractBeanFactoryPointcutAdvisor.java b/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractBeanFactoryPointcutAdvisor.java index 193c94f95a..5b0694bbb7 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractBeanFactoryPointcutAdvisor.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractBeanFactoryPointcutAdvisor.java @@ -80,6 +80,7 @@ public abstract class AbstractBeanFactoryPointcutAdvisor extends AbstractPointcu } } + @Override public String toString() { return getClass().getName() + ": advice bean '" + getAdviceBeanName() + "'"; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractGenericPointcutAdvisor.java b/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractGenericPointcutAdvisor.java index 0d380af6bc..66ed6ff0ca 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractGenericPointcutAdvisor.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractGenericPointcutAdvisor.java @@ -43,6 +43,7 @@ public abstract class AbstractGenericPointcutAdvisor extends AbstractPointcutAdv } + @Override public String toString() { return getClass().getName() + ": advice [" + getAdvice() + "]"; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractPointcutAdvisor.java b/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractPointcutAdvisor.java index 0201d0df63..182ad2d803 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractPointcutAdvisor.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractPointcutAdvisor.java @@ -50,6 +50,7 @@ public abstract class AbstractPointcutAdvisor implements PointcutAdvisor, Ordere } + @Override public boolean equals(Object other) { if (this == other) { return true; @@ -62,6 +63,7 @@ public abstract class AbstractPointcutAdvisor implements PointcutAdvisor, Ordere ObjectUtils.nullSafeEquals(getPointcut(), otherAdvisor.getPointcut())); } + @Override public int hashCode() { return PointcutAdvisor.class.hashCode(); } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractRegexpMethodPointcut.java b/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractRegexpMethodPointcut.java index 74e76d84d0..66fb98dc60 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractRegexpMethodPointcut.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/support/AbstractRegexpMethodPointcut.java @@ -181,6 +181,7 @@ public abstract class AbstractRegexpMethodPointcut extends StaticMethodMatcherPo protected abstract boolean matchesExclusion(String pattern, int patternIndex); + @Override public boolean equals(Object other) { if (this == other) { return true; @@ -193,6 +194,7 @@ public abstract class AbstractRegexpMethodPointcut extends StaticMethodMatcherPo Arrays.equals(this.excludedPatterns, otherPointcut.excludedPatterns)); } + @Override public int hashCode() { int result = 27; for (int i = 0; i < this.patterns.length; i++) { @@ -206,6 +208,7 @@ public abstract class AbstractRegexpMethodPointcut extends StaticMethodMatcherPo return result; } + @Override public String toString() { return getClass().getName() + ": patterns " + ObjectUtils.nullSafeToString(this.patterns) + ", excluded patterns " + ObjectUtils.nullSafeToString(this.excludedPatterns); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/support/ClassFilters.java b/org.springframework.aop/src/main/java/org/springframework/aop/support/ClassFilters.java index fc48182bf6..e8fd0213ea 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/support/ClassFilters.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/support/ClassFilters.java @@ -104,11 +104,13 @@ public abstract class ClassFilters { return false; } + @Override public boolean equals(Object other) { return (this == other || (other instanceof UnionClassFilter && ObjectUtils.nullSafeEquals(this.filters, ((UnionClassFilter) other).filters))); } + @Override public int hashCode() { return ObjectUtils.nullSafeHashCode(this.filters); } @@ -135,11 +137,13 @@ public abstract class ClassFilters { return true; } + @Override public boolean equals(Object other) { return (this == other || (other instanceof IntersectionClassFilter && ObjectUtils.nullSafeEquals(this.filters, ((IntersectionClassFilter) other).filters))); } + @Override public int hashCode() { return ObjectUtils.nullSafeHashCode(this.filters); } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/support/ComposablePointcut.java b/org.springframework.aop/src/main/java/org/springframework/aop/support/ComposablePointcut.java index 7d1a92d46b..b92e535f63 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/support/ComposablePointcut.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/support/ComposablePointcut.java @@ -179,6 +179,7 @@ public class ComposablePointcut implements Pointcut, Serializable { } + @Override public boolean equals(Object other) { if (this == other) { return true; @@ -192,6 +193,7 @@ public class ComposablePointcut implements Pointcut, Serializable { ObjectUtils.nullSafeEquals(that.methodMatcher, this.methodMatcher); } + @Override public int hashCode() { int code = 17; if (this.classFilter != null) { @@ -203,6 +205,7 @@ public class ComposablePointcut implements Pointcut, Serializable { return code; } + @Override public String toString() { return "ComposablePointcut: ClassFilter [" + this.classFilter + "], MethodMatcher [" + this.methodMatcher + "]"; diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/support/ControlFlowPointcut.java b/org.springframework.aop/src/main/java/org/springframework/aop/support/ControlFlowPointcut.java index 3539a7b23e..e0d0b6dc33 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/support/ControlFlowPointcut.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/support/ControlFlowPointcut.java @@ -108,6 +108,7 @@ public class ControlFlowPointcut implements Pointcut, ClassFilter, MethodMatcher return this; } + @Override public boolean equals(Object other) { if (this == other) { return true; @@ -119,6 +120,7 @@ public class ControlFlowPointcut implements Pointcut, ClassFilter, MethodMatcher return (this.clazz.equals(that.clazz)) && ObjectUtils.nullSafeEquals(that.methodName, this.methodName); } + @Override public int hashCode() { int code = 17; code = 37 * code + this.clazz.hashCode(); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/support/DefaultBeanFactoryPointcutAdvisor.java b/org.springframework.aop/src/main/java/org/springframework/aop/support/DefaultBeanFactoryPointcutAdvisor.java index d59779e3a0..0de1c9fd08 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/support/DefaultBeanFactoryPointcutAdvisor.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/support/DefaultBeanFactoryPointcutAdvisor.java @@ -51,6 +51,7 @@ public class DefaultBeanFactoryPointcutAdvisor extends AbstractBeanFactoryPointc } + @Override public String toString() { return getClass().getName() + ": pointcut [" + getPointcut() + "]; advice bean '" + getAdviceBeanName() + "'"; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/support/DefaultIntroductionAdvisor.java b/org.springframework.aop/src/main/java/org/springframework/aop/support/DefaultIntroductionAdvisor.java index 8a0f49330c..5c4339b8b8 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/support/DefaultIntroductionAdvisor.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/support/DefaultIntroductionAdvisor.java @@ -144,6 +144,7 @@ public class DefaultIntroductionAdvisor implements IntroductionAdvisor, ClassFil } + @Override public boolean equals(Object other) { if (this == other) { return true; @@ -155,10 +156,12 @@ public class DefaultIntroductionAdvisor implements IntroductionAdvisor, ClassFil return (this.advice.equals(otherAdvisor.advice) && this.interfaces.equals(otherAdvisor.interfaces)); } + @Override public int hashCode() { return this.advice.hashCode() * 13 + this.interfaces.hashCode(); } + @Override public String toString() { return ClassUtils.getShortName(getClass()) + ": advice [" + this.advice + "]; interfaces " + ClassUtils.classNamesToString(this.interfaces); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/support/DefaultPointcutAdvisor.java b/org.springframework.aop/src/main/java/org/springframework/aop/support/DefaultPointcutAdvisor.java index d1359278bb..cb4402683d 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/support/DefaultPointcutAdvisor.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/support/DefaultPointcutAdvisor.java @@ -81,6 +81,7 @@ public class DefaultPointcutAdvisor extends AbstractGenericPointcutAdvisor imple } + @Override public String toString() { return getClass().getName() + ": pointcut [" + getPointcut() + "]; advice [" + getAdvice() + "]"; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/support/JdkRegexpMethodPointcut.java b/org.springframework.aop/src/main/java/org/springframework/aop/support/JdkRegexpMethodPointcut.java index b80d4df696..66339a9f00 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/support/JdkRegexpMethodPointcut.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/support/JdkRegexpMethodPointcut.java @@ -53,6 +53,7 @@ public class JdkRegexpMethodPointcut extends AbstractRegexpMethodPointcut { /** * Initialize {@link Pattern Patterns} from the supplied String[]. */ + @Override protected void initPatternRepresentation(String[] patterns) throws PatternSyntaxException { this.compiledPatterns = compilePatterns(patterns); } @@ -61,6 +62,7 @@ public class JdkRegexpMethodPointcut extends AbstractRegexpMethodPointcut { * Returns true if the {@link Pattern} at index patternIndex * matches the supplied candidate String. */ + @Override protected boolean matches(String pattern, int patternIndex) { Matcher matcher = this.compiledPatterns[patternIndex].matcher(pattern); return matcher.matches(); @@ -69,6 +71,7 @@ public class JdkRegexpMethodPointcut extends AbstractRegexpMethodPointcut { /** * Initialize exclusion {@link Pattern Patterns} from the supplied String[]. */ + @Override protected void initExcludedPatternRepresentation(String[] excludedPatterns) throws IllegalArgumentException { this.compiledExclusionPatterns = compilePatterns(excludedPatterns); } @@ -77,6 +80,7 @@ public class JdkRegexpMethodPointcut extends AbstractRegexpMethodPointcut { * Returns true if the exclusion {@link Pattern} at index patternIndex * matches the supplied candidate String. */ + @Override protected boolean matchesExclusion(String candidate, int patternIndex) { Matcher matcher = this.compiledExclusionPatterns[patternIndex].matcher(candidate); return matcher.matches(); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/support/MethodMatchers.java b/org.springframework.aop/src/main/java/org/springframework/aop/support/MethodMatchers.java index 99f4ddc8b9..b4d4fd6f47 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/support/MethodMatchers.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/support/MethodMatchers.java @@ -137,6 +137,7 @@ public abstract class MethodMatchers { return this.mm1.matches(method, targetClass, args) || this.mm2.matches(method, targetClass, args); } + @Override public boolean equals(Object obj) { if (this == obj) { return true; @@ -148,6 +149,7 @@ public abstract class MethodMatchers { return (this.mm1.equals(that.mm1) && this.mm2.equals(that.mm2)); } + @Override public int hashCode() { int hashCode = 17; hashCode = 37 * hashCode + this.mm1.hashCode(); @@ -172,14 +174,17 @@ public abstract class MethodMatchers { this.cf2 = cf2; } + @Override protected boolean matchesClass1(Class targetClass) { return this.cf1.matches(targetClass); } + @Override protected boolean matchesClass2(Class targetClass) { return this.cf2.matches(targetClass); } + @Override public boolean equals(Object other) { if (this == other) { return true; @@ -232,6 +237,7 @@ public abstract class MethodMatchers { return aMatches && bMatches; } + @Override public boolean equals(Object other) { if (this == other) { return true; @@ -243,6 +249,7 @@ public abstract class MethodMatchers { return (this.mm1.equals(that.mm1) && this.mm2.equals(that.mm2)); } + @Override public int hashCode() { int hashCode = 17; hashCode = 37 * hashCode + this.mm1.hashCode(); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/support/NameMatchMethodPointcut.java b/org.springframework.aop/src/main/java/org/springframework/aop/support/NameMatchMethodPointcut.java index 5005f33b09..defd5da16e 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/support/NameMatchMethodPointcut.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/support/NameMatchMethodPointcut.java @@ -103,6 +103,7 @@ public class NameMatchMethodPointcut extends StaticMethodMatcherPointcut impleme } + @Override public boolean equals(Object other) { if (this == other) { return true; @@ -111,6 +112,7 @@ public class NameMatchMethodPointcut extends StaticMethodMatcherPointcut impleme ObjectUtils.nullSafeEquals(this.mappedNames, ((NameMatchMethodPointcut) other).mappedNames)); } + @Override public int hashCode() { return (this.mappedNames != null ? this.mappedNames.hashCode() : 0); } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/support/RegexpMethodPointcutAdvisor.java b/org.springframework.aop/src/main/java/org/springframework/aop/support/RegexpMethodPointcutAdvisor.java index 2fcded937f..a610e37f71 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/support/RegexpMethodPointcutAdvisor.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/support/RegexpMethodPointcutAdvisor.java @@ -134,6 +134,7 @@ public class RegexpMethodPointcutAdvisor extends AbstractGenericPointcutAdvisor return new JdkRegexpMethodPointcut(); } + @Override public String toString() { return getClass().getName() + ": advice [" + getAdvice() + "], pointcut patterns " + ObjectUtils.nullSafeToString(this.patterns); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/target/AbstractBeanFactoryBasedTargetSource.java b/org.springframework.aop/src/main/java/org/springframework/aop/target/AbstractBeanFactoryBasedTargetSource.java index d86ba4b36f..fcd7bc862f 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/target/AbstractBeanFactoryBasedTargetSource.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/target/AbstractBeanFactoryBasedTargetSource.java @@ -181,6 +181,7 @@ public abstract class AbstractBeanFactoryBasedTargetSource } + @Override public boolean equals(Object other) { if (this == other) { return true; @@ -193,6 +194,7 @@ public abstract class AbstractBeanFactoryBasedTargetSource ObjectUtils.nullSafeEquals(this.targetBeanName, otherTargetSource.targetBeanName)); } + @Override public int hashCode() { int hashCode = getClass().hashCode(); hashCode = 13 * hashCode + ObjectUtils.nullSafeHashCode(this.beanFactory); @@ -200,6 +202,7 @@ public abstract class AbstractBeanFactoryBasedTargetSource return hashCode; } + @Override public String toString() { StringBuffer sb = new StringBuffer(); sb.append(ClassUtils.getShortName(getClass())); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/target/AbstractPoolingTargetSource.java b/org.springframework.aop/src/main/java/org/springframework/aop/target/AbstractPoolingTargetSource.java index c3f55566e7..8111f2e4c4 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/target/AbstractPoolingTargetSource.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/target/AbstractPoolingTargetSource.java @@ -73,6 +73,7 @@ public abstract class AbstractPoolingTargetSource extends AbstractPrototypeBased } + @Override public final void setBeanFactory(BeanFactory beanFactory) throws BeansException { super.setBeanFactory(beanFactory); try { @@ -105,6 +106,7 @@ public abstract class AbstractPoolingTargetSource extends AbstractPrototypeBased * @throws Exception to allow pooling APIs to throw exception * @see #getTarget */ + @Override public abstract void releaseTarget(Object target) throws Exception; diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/target/AbstractPrototypeBasedTargetSource.java b/org.springframework.aop/src/main/java/org/springframework/aop/target/AbstractPrototypeBasedTargetSource.java index 2b6b095756..5e3bfb6004 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/target/AbstractPrototypeBasedTargetSource.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/target/AbstractPrototypeBasedTargetSource.java @@ -39,6 +39,7 @@ import org.springframework.beans.factory.config.ConfigurableBeanFactory; */ public abstract class AbstractPrototypeBasedTargetSource extends AbstractBeanFactoryBasedTargetSource { + @Override public void setBeanFactory(BeanFactory beanFactory) throws BeansException { super.setBeanFactory(beanFactory); diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/target/CommonsPoolTargetSource.java b/org.springframework.aop/src/main/java/org/springframework/aop/target/CommonsPoolTargetSource.java index fff391cf50..887e253a08 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/target/CommonsPoolTargetSource.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/target/CommonsPoolTargetSource.java @@ -207,6 +207,7 @@ public class CommonsPoolTargetSource extends AbstractPoolingTargetSource * Creates and holds an ObjectPool instance. * @see #createObjectPool() */ + @Override protected final void createPool() { logger.debug("Creating Commons object pool"); this.pool = createObjectPool(); @@ -236,6 +237,7 @@ public class CommonsPoolTargetSource extends AbstractPoolingTargetSource /** * Borrow an object from the ObjectPool. */ + @Override public Object getTarget() throws Exception { return this.pool.borrowObject(); } @@ -243,6 +245,7 @@ public class CommonsPoolTargetSource extends AbstractPoolingTargetSource /** * Returns the specified object to the underlying ObjectPool. */ + @Override public void releaseTarget(Object target) throws Exception { this.pool.returnObject(target); } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/target/EmptyTargetSource.java b/org.springframework.aop/src/main/java/org/springframework/aop/target/EmptyTargetSource.java index c5fe74b167..889bea66d3 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/target/EmptyTargetSource.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/target/EmptyTargetSource.java @@ -122,6 +122,7 @@ public class EmptyTargetSource implements TargetSource, Serializable { return (this.targetClass == null && this.isStatic ? INSTANCE : this); } + @Override public boolean equals(Object other) { if (this == other) { return true; @@ -133,10 +134,12 @@ public class EmptyTargetSource implements TargetSource, Serializable { return (ObjectUtils.nullSafeEquals(this.targetClass, otherTs.targetClass) && this.isStatic == otherTs.isStatic); } + @Override public int hashCode() { return EmptyTargetSource.class.hashCode() * 13 + ObjectUtils.nullSafeHashCode(this.targetClass); } + @Override public String toString() { return "EmptyTargetSource: " + (this.targetClass != null ? "target class [" + this.targetClass.getName() + "]" : "no target class") + diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/target/HotSwappableTargetSource.java b/org.springframework.aop/src/main/java/org/springframework/aop/target/HotSwappableTargetSource.java index 05cc10573c..a2aa38943c 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/target/HotSwappableTargetSource.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/target/HotSwappableTargetSource.java @@ -94,15 +94,18 @@ public class HotSwappableTargetSource implements TargetSource, Serializable { * Two HotSwappableTargetSources are equal if the current target * objects are equal. */ + @Override public boolean equals(Object other) { return (this == other || (other instanceof HotSwappableTargetSource && this.target.equals(((HotSwappableTargetSource) other).target))); } + @Override public int hashCode() { return HotSwappableTargetSource.class.hashCode(); } + @Override public String toString() { return "HotSwappableTargetSource for target: " + this.target; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/target/PrototypeTargetSource.java b/org.springframework.aop/src/main/java/org/springframework/aop/target/PrototypeTargetSource.java index 3b3a2c8554..14f2f28501 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/target/PrototypeTargetSource.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/target/PrototypeTargetSource.java @@ -43,10 +43,12 @@ public class PrototypeTargetSource extends AbstractPrototypeBasedTargetSource { * Destroy the given independent instance. * @see #destroyPrototypeInstance */ + @Override public void releaseTarget(Object target) { destroyPrototypeInstance(target); } + @Override public String toString() { return "PrototypeTargetSource for target bean with name '" + getTargetBeanName() + "'"; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/target/SingletonTargetSource.java b/org.springframework.aop/src/main/java/org/springframework/aop/target/SingletonTargetSource.java index 9bde8408f2..26b1edc9bb 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/target/SingletonTargetSource.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/target/SingletonTargetSource.java @@ -76,6 +76,7 @@ public class SingletonTargetSource implements TargetSource, Serializable { * Two invoker interceptors are equal if they have the same target or if the * targets or the targets are equal. */ + @Override public boolean equals(Object other) { if (this == other) { return true; @@ -90,10 +91,12 @@ public class SingletonTargetSource implements TargetSource, Serializable { /** * SingletonTargetSource uses the hash code of the target object. */ + @Override public int hashCode() { return this.target.hashCode(); } + @Override public String toString() { return "SingletonTargetSource for target object [" + ObjectUtils.identityToString(this.target) + "]"; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/target/ThreadLocalTargetSource.java b/org.springframework.aop/src/main/java/org/springframework/aop/target/ThreadLocalTargetSource.java index 79f581289c..1a8a5dd03f 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/target/ThreadLocalTargetSource.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/target/ThreadLocalTargetSource.java @@ -57,6 +57,7 @@ public class ThreadLocalTargetSource extends AbstractPrototypeBasedTargetSource * is meant to be per thread per instance of the ThreadLocalTargetSource class. */ private final ThreadLocal targetInThread = new ThreadLocal() { + @Override public String toString() { return "Thread-local instance of bean '" + getTargetBeanName() + "'"; } diff --git a/org.springframework.aop/src/main/java/org/springframework/aop/target/dynamic/BeanFactoryRefreshableTargetSource.java b/org.springframework.aop/src/main/java/org/springframework/aop/target/dynamic/BeanFactoryRefreshableTargetSource.java index 8fc839d30d..ac39d756c7 100644 --- a/org.springframework.aop/src/main/java/org/springframework/aop/target/dynamic/BeanFactoryRefreshableTargetSource.java +++ b/org.springframework.aop/src/main/java/org/springframework/aop/target/dynamic/BeanFactoryRefreshableTargetSource.java @@ -61,6 +61,7 @@ public class BeanFactoryRefreshableTargetSource extends AbstractRefreshableTarge /** * Retrieve a fresh target object. */ + @Override protected final Object freshTarget() { return this.obtainFreshBean(this.beanFactory, this.beanName); } -- GitLab