diff options
author | aclement <aclement> | 2004-08-06 16:32:46 +0000 |
---|---|---|
committer | aclement <aclement> | 2004-08-06 16:32:46 +0000 |
commit | 299d24a82619057d3746db391afb238c213d56e5 (patch) | |
tree | a4eb5de30bbe8a65e2388beeb371fd89540df708 /weaver | |
parent | 061395c8c7fe681ab40ab53a7d1bfeb8e17c1028 (diff) | |
download | aspectj-299d24a82619057d3746db391afb238c213d56e5.tar.gz aspectj-299d24a82619057d3746db391afb238c213d56e5.zip |
cant find type/organize imports (and hopefully fix the build)
Diffstat (limited to 'weaver')
8 files changed, 24 insertions, 10 deletions
diff --git a/weaver/src/org/aspectj/weaver/AsmRelationshipProvider.java b/weaver/src/org/aspectj/weaver/AsmRelationshipProvider.java index b3adcba43..176fbad00 100644 --- a/weaver/src/org/aspectj/weaver/AsmRelationshipProvider.java +++ b/weaver/src/org/aspectj/weaver/AsmRelationshipProvider.java @@ -15,8 +15,12 @@ package org.aspectj.weaver; import java.util.ArrayList; import java.util.Iterator; -import org.aspectj.asm.*; -import org.aspectj.asm.internal.AspectJElementHierarchy; + +import org.aspectj.asm.AsmManager; +import org.aspectj.asm.IHierarchy; +import org.aspectj.asm.IProgramElement; +import org.aspectj.asm.IRelationship; +import org.aspectj.asm.IRelationshipMap; import org.aspectj.asm.internal.ProgramElement; import org.aspectj.bridge.ISourceLocation; import org.aspectj.bridge.SourceLocation; diff --git a/weaver/src/org/aspectj/weaver/WeaverMessages.java b/weaver/src/org/aspectj/weaver/WeaverMessages.java index e45c96a67..d6062530c 100644 --- a/weaver/src/org/aspectj/weaver/WeaverMessages.java +++ b/weaver/src/org/aspectj/weaver/WeaverMessages.java @@ -71,6 +71,7 @@ public class WeaverMessages { public static final String CANT_FIND_TYPE = "cantFindType"; public static final String CANT_FIND_CORE_TYPE = "cantFindCoreType"; + public static final String CANT_FIND_TYPE_WITHINPCD = "cantFindTypeWithinpcd"; public static final String DECP_BINARY_LIMITATION = "decpBinaryLimitation"; public static final String OVERWRITE_JSR45 = "overwriteJSR45"; diff --git a/weaver/src/org/aspectj/weaver/WeaverMetrics.java b/weaver/src/org/aspectj/weaver/WeaverMetrics.java index 113be2943..4169a8a55 100644 --- a/weaver/src/org/aspectj/weaver/WeaverMetrics.java +++ b/weaver/src/org/aspectj/weaver/WeaverMetrics.java @@ -12,7 +12,6 @@ package org.aspectj.weaver; import org.aspectj.util.FuzzyBoolean; -import org.aspectj.weaver.patterns.FastMatchInfo; /** diff --git a/weaver/src/org/aspectj/weaver/bcel/BcelWeaver.java b/weaver/src/org/aspectj/weaver/bcel/BcelWeaver.java index 653510ddd..fc572eabb 100644 --- a/weaver/src/org/aspectj/weaver/bcel/BcelWeaver.java +++ b/weaver/src/org/aspectj/weaver/bcel/BcelWeaver.java @@ -32,11 +32,10 @@ import java.util.Iterator; import java.util.List; import java.util.Set; import java.util.jar.Attributes; -import java.util.jar.Attributes.Name; import java.util.jar.JarEntry; import java.util.jar.JarFile; -import java.util.jar.JarInputStream; import java.util.jar.Manifest; +import java.util.jar.Attributes.Name; import java.util.zip.ZipEntry; import java.util.zip.ZipInputStream; import java.util.zip.ZipOutputStream; @@ -54,13 +53,13 @@ import org.aspectj.weaver.CrosscuttingMembersSet; import org.aspectj.weaver.IClassFileProvider; import org.aspectj.weaver.IWeaveRequestor; import org.aspectj.weaver.IWeaver; -import org.aspectj.weaver.WeaverMetrics; import org.aspectj.weaver.NewParentTypeMunger; import org.aspectj.weaver.ResolvedTypeMunger; import org.aspectj.weaver.ResolvedTypeX; import org.aspectj.weaver.ShadowMunger; import org.aspectj.weaver.TypeX; import org.aspectj.weaver.WeaverMessages; +import org.aspectj.weaver.WeaverMetrics; import org.aspectj.weaver.WeaverStateInfo; import org.aspectj.weaver.patterns.DeclareParents; import org.aspectj.weaver.patterns.FastMatchInfo; diff --git a/weaver/src/org/aspectj/weaver/patterns/ExactTypePattern.java b/weaver/src/org/aspectj/weaver/patterns/ExactTypePattern.java index 577051fbc..ac59cef52 100644 --- a/weaver/src/org/aspectj/weaver/patterns/ExactTypePattern.java +++ b/weaver/src/org/aspectj/weaver/patterns/ExactTypePattern.java @@ -18,7 +18,6 @@ import java.io.DataOutputStream; import java.io.IOException; import java.util.HashMap; import java.util.Map; -import java.util.Set; import org.aspectj.util.FuzzyBoolean; import org.aspectj.weaver.BCException; diff --git a/weaver/src/org/aspectj/weaver/patterns/WithinPointcut.java b/weaver/src/org/aspectj/weaver/patterns/WithinPointcut.java index d0acd286b..28de3fe13 100644 --- a/weaver/src/org/aspectj/weaver/patterns/WithinPointcut.java +++ b/weaver/src/org/aspectj/weaver/patterns/WithinPointcut.java @@ -17,12 +17,18 @@ import java.io.DataInputStream; import java.io.DataOutputStream; import java.io.IOException; +import org.aspectj.bridge.IMessage; +import org.aspectj.bridge.ISourceLocation; +import org.aspectj.bridge.Message; +import org.aspectj.bridge.MessageUtil; import org.aspectj.lang.JoinPoint; import org.aspectj.util.FuzzyBoolean; import org.aspectj.weaver.ISourceContext; import org.aspectj.weaver.IntMap; import org.aspectj.weaver.ResolvedTypeX; import org.aspectj.weaver.Shadow; +import org.aspectj.weaver.WeaverMessages; +import org.aspectj.weaver.World; import org.aspectj.weaver.ast.Literal; import org.aspectj.weaver.ast.Test; @@ -48,7 +54,14 @@ public class WithinPointcut extends Pointcut { } public FuzzyBoolean match(Shadow shadow) { - ResolvedTypeX enclosingType = shadow.getIWorld().resolve(shadow.getEnclosingType()); + ResolvedTypeX enclosingType = shadow.getIWorld().resolve(shadow.getEnclosingType(),true); + if (enclosingType == ResolvedTypeX.MISSING) { + IMessage msg = new Message( + WeaverMessages.format(WeaverMessages.CANT_FIND_TYPE_WITHINPCD, + shadow.getEnclosingType().getName()), + shadow.getSourceLocation(),true,new ISourceLocation[]{getSourceLocation()}); + shadow.getIWorld().getMessageHandler().handleMessage(msg); + } return isWithinType(enclosingType); } diff --git a/weaver/src/org/aspectj/weaver/weaver-messages.properties b/weaver/src/org/aspectj/weaver/weaver-messages.properties index a4879342e..da05f6ba1 100644 --- a/weaver/src/org/aspectj/weaver/weaver-messages.properties +++ b/weaver/src/org/aspectj/weaver/weaver-messages.properties @@ -73,6 +73,7 @@ aspectNeeded=aspect {0} is needed when using type {1} # The infamous and deserving a category all of its own... cantFindType=can''t find type {0} cantFindCoreType=can''t find critical required type {0} +cantFindTypeWithinpcd=Unable to find type {0} whilst processing within() pointcut at this source location # Implementation limitations... decpBinaryLimitation=can''t use declare parents to change superclass of binary form ''{0}'' (implementation limitation) diff --git a/weaver/testsrc/org/aspectj/weaver/bcel/TjpWeaveTestCase.java b/weaver/testsrc/org/aspectj/weaver/bcel/TjpWeaveTestCase.java index 5ed38ae8b..32aa909dd 100644 --- a/weaver/testsrc/org/aspectj/weaver/bcel/TjpWeaveTestCase.java +++ b/weaver/testsrc/org/aspectj/weaver/bcel/TjpWeaveTestCase.java @@ -16,8 +16,6 @@ package org.aspectj.weaver.bcel; import java.io.IOException; import java.util.Arrays; -import javax.print.attribute.ResolutionSyntax; - import org.aspectj.weaver.Advice; import org.aspectj.weaver.AdviceKind; import org.aspectj.weaver.Member; |