From ec93456d8ba48f828757783a50da2bca82e6e8fe Mon Sep 17 00:00:00 2001 From: acolyer Date: Fri, 14 Apr 2006 17:34:28 +0000 Subject: [PATCH] @within, @withincode, and @annotation also need to return true to HasPossibleDynamicContent... --- .../internal/tools/PointcutExpressionImpl.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/weaver/src/org/aspectj/weaver/internal/tools/PointcutExpressionImpl.java b/weaver/src/org/aspectj/weaver/internal/tools/PointcutExpressionImpl.java index d9361a781..e8cca37b3 100644 --- a/weaver/src/org/aspectj/weaver/internal/tools/PointcutExpressionImpl.java +++ b/weaver/src/org/aspectj/weaver/internal/tools/PointcutExpressionImpl.java @@ -20,6 +20,7 @@ import org.aspectj.weaver.World; import org.aspectj.weaver.ast.Literal; import org.aspectj.weaver.ast.Test; import org.aspectj.weaver.patterns.AbstractPatternNodeVisitor; +import org.aspectj.weaver.patterns.AnnotationPointcut; import org.aspectj.weaver.patterns.ArgsAnnotationPointcut; import org.aspectj.weaver.patterns.ArgsPointcut; import org.aspectj.weaver.patterns.CflowPointcut; @@ -30,6 +31,8 @@ import org.aspectj.weaver.patterns.NotPointcut; import org.aspectj.weaver.patterns.Pointcut; import org.aspectj.weaver.patterns.ThisOrTargetAnnotationPointcut; import org.aspectj.weaver.patterns.ThisOrTargetPointcut; +import org.aspectj.weaver.patterns.WithinAnnotationPointcut; +import org.aspectj.weaver.patterns.WithinCodeAnnotationPointcut; import org.aspectj.weaver.reflect.ReflectionFastMatchInfo; import org.aspectj.weaver.reflect.ReflectionShadow; import org.aspectj.weaver.reflect.ShadowMatchImpl; @@ -252,6 +255,21 @@ public class PointcutExpressionImpl implements PointcutExpression { public boolean hasDynamicContent() { return hasDynamicContent; } + public Object visit(WithinAnnotationPointcut node, Object data) { + hasDynamicContent = true; + return null; + } + + public Object visit(WithinCodeAnnotationPointcut node, Object data) { + hasDynamicContent = true; + return null; + } + + public Object visit(AnnotationPointcut node, Object data) { + hasDynamicContent = true; + return null; + } + public Object visit(ArgsAnnotationPointcut node, Object data) { hasDynamicContent = true; return null; -- 2.39.5