diff options
author | Andy Clement <aclement@gopivotal.com> | 2014-10-08 09:07:52 -0700 |
---|---|---|
committer | Andy Clement <aclement@gopivotal.com> | 2014-10-08 09:07:52 -0700 |
commit | b6aec92d1ec73033130ecbb5552bf54ceb1cb85f (patch) | |
tree | cec50f9ea51317f76f132c01233c8446c58c046a | |
parent | 170b1cef3f6f2c4792eb4c07c76ab19bee9daca7 (diff) | |
download | aspectj-b6aec92d1ec73033130ecbb5552bf54ceb1cb85f.tar.gz aspectj-b6aec92d1ec73033130ecbb5552bf54ceb1cb85f.zip |
Use generics
36 files changed, 140 insertions, 214 deletions
diff --git a/bcel-builder/src/org/aspectj/apache/bcel/ExceptionConstants.java b/bcel-builder/src/org/aspectj/apache/bcel/ExceptionConstants.java index 0c918c8ea..cf3d81308 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/ExceptionConstants.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/ExceptionConstants.java @@ -60,6 +60,7 @@ package org.aspectj.apache.bcel; * @version $Id: ExceptionConstants.java,v 1.5 2009/09/14 20:29:10 aclement Exp $ * @author <A HREF="http://www.inf.fu-berlin.de/~ehaase">E. Haase</A> */ +@SuppressWarnings("rawtypes") public interface ExceptionConstants { /** * The mother of all exceptions @@ -84,7 +85,7 @@ public interface ExceptionConstants { public static final Class<ExceptionInInitializerError> EXCEPTION_IN_INITIALIZER_ERROR = ExceptionInInitializerError.class; public static final Class<IncompatibleClassChangeError> INCOMPATIBLE_CLASS_CHANGE_ERROR = IncompatibleClassChangeError.class; public static final Class<AbstractMethodError> ABSTRACT_METHOD_ERROR = AbstractMethodError.class; - public static final Class ILLEGAL_ACCESS_ERROR = IllegalAccessError.class; + public static final Class<IllegalAccessError> ILLEGAL_ACCESS_ERROR = IllegalAccessError.class; public static final Class<InstantiationError> INSTANTIATION_ERROR = InstantiationError.class; public static final Class<NoSuchFieldError> NO_SUCH_FIELD_ERROR = NoSuchFieldError.class; public static final Class<NoSuchMethodError> NO_SUCH_METHOD_ERROR = NoSuchMethodError.class; @@ -100,7 +101,7 @@ public interface ExceptionConstants { public static final Class<NullPointerException> NULL_POINTER_EXCEPTION = NullPointerException.class; public static final Class<ArrayIndexOutOfBoundsException> ARRAY_INDEX_OUT_OF_BOUNDS_EXCEPTION = ArrayIndexOutOfBoundsException.class; public static final Class<ArithmeticException> ARITHMETIC_EXCEPTION = ArithmeticException.class; - public static final Class NEGATIVE_ARRAY_SIZE_EXCEPTION = NegativeArraySizeException.class; + public static final Class<NegativeArraySizeException> NEGATIVE_ARRAY_SIZE_EXCEPTION = NegativeArraySizeException.class; public static final Class<ClassCastException> CLASS_CAST_EXCEPTION = ClassCastException.class; public static final Class<IllegalMonitorStateException> ILLEGAL_MONITOR_STATE = IllegalMonitorStateException.class; diff --git a/bcel-builder/src/org/aspectj/apache/bcel/generic/Type.java b/bcel-builder/src/org/aspectj/apache/bcel/generic/Type.java index 7662250db..36d6d7d72 100644 --- a/bcel-builder/src/org/aspectj/apache/bcel/generic/Type.java +++ b/bcel-builder/src/org/aspectj/apache/bcel/generic/Type.java @@ -473,9 +473,9 @@ public abstract class Type { return sb.toString(); } - public static String getSignature(java.lang.reflect.Constructor cons) { + public static String getSignature(java.lang.reflect.Constructor<?> cons) { StringBuffer sb = new StringBuffer("("); - Class[] params = cons.getParameterTypes(); // avoid clone + Class<?>[] params = cons.getParameterTypes(); // avoid clone for (int j = 0; j < params.length; j++) { sb.append(getType(params[j]).getSignature()); diff --git a/lib/bcel/bcel-src.zip b/lib/bcel/bcel-src.zip Binary files differindex 2d0a3b5f3..14f9c2f0a 100644 --- a/lib/bcel/bcel-src.zip +++ b/lib/bcel/bcel-src.zip diff --git a/lib/bcel/bcel-verifier.jar b/lib/bcel/bcel-verifier.jar Binary files differindex 46a5a0c44..ffeb0791f 100644 --- a/lib/bcel/bcel-verifier.jar +++ b/lib/bcel/bcel-verifier.jar diff --git a/lib/bcel/bcel.jar b/lib/bcel/bcel.jar Binary files differindex 097532e75..9b0bce336 100644 --- a/lib/bcel/bcel.jar +++ b/lib/bcel/bcel.jar diff --git a/loadtime/src/org/aspectj/weaver/loadtime/Aj.java b/loadtime/src/org/aspectj/weaver/loadtime/Aj.java index 03715b6a3..0654e4cba 100644 --- a/loadtime/src/org/aspectj/weaver/loadtime/Aj.java +++ b/loadtime/src/org/aspectj/weaver/loadtime/Aj.java @@ -200,9 +200,9 @@ public class Aj implements ClassPreProcessor { synchronized (WeaverContainer.weavingAdaptors) { if (displayProgress) { System.err.println("Weaver adaptors before queue processing:"); - Map m = WeaverContainer.weavingAdaptors; - Set keys = m.keySet(); - for (Iterator iterator = keys.iterator(); iterator.hasNext();) { + Map<AdaptorKey,ExplicitlyInitializedClassLoaderWeavingAdaptor> m = WeaverContainer.weavingAdaptors; + Set<AdaptorKey> keys = m.keySet(); + for (Iterator<AdaptorKey> iterator = keys.iterator(); iterator.hasNext();) { Object object = iterator.next(); System.err.println(object + " = " + WeaverContainer.weavingAdaptors.get(object)); } @@ -224,9 +224,9 @@ public class Aj implements ClassPreProcessor { } if (displayProgress) { System.err.println("Weaver adaptors after queue processing:"); - Map m = WeaverContainer.weavingAdaptors; - Set keys = m.keySet(); - for (Iterator iterator = keys.iterator(); iterator.hasNext();) { + Map<AdaptorKey,ExplicitlyInitializedClassLoaderWeavingAdaptor> m = WeaverContainer.weavingAdaptors; + Set<AdaptorKey> keys = m.keySet(); + for (Iterator<AdaptorKey> iterator = keys.iterator(); iterator.hasNext();) { Object object = iterator.next(); System.err.println(object + " = " + WeaverContainer.weavingAdaptors.get(object)); } @@ -287,7 +287,8 @@ public class Aj implements ClassPreProcessor { */ static class WeaverContainer { - final static Map weavingAdaptors = Collections.synchronizedMap(new HashMap()); + final static Map<AdaptorKey,ExplicitlyInitializedClassLoaderWeavingAdaptor> weavingAdaptors = + Collections.synchronizedMap(new HashMap<AdaptorKey,ExplicitlyInitializedClassLoaderWeavingAdaptor>()); static WeavingAdaptor getWeaver(ClassLoader loader, IWeavingContext weavingContext) { ExplicitlyInitializedClassLoaderWeavingAdaptor adaptor = null; diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AndAnnotationTypePattern.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AndAnnotationTypePattern.java index 4889d0f9a..c14f36025 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AndAnnotationTypePattern.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AndAnnotationTypePattern.java @@ -17,6 +17,7 @@ import org.aspectj.weaver.AnnotatedElement; import org.aspectj.weaver.CompressingDataOutputStream; import org.aspectj.weaver.ISourceContext; import org.aspectj.weaver.ResolvedType; +import org.aspectj.weaver.UnresolvedType; import org.aspectj.weaver.VersionedDataInputStream; import org.aspectj.weaver.World; import org.aspectj.weaver.AjAttribute.WeaverVersionInfo; @@ -63,7 +64,7 @@ public class AndAnnotationTypePattern extends AnnotationTypePattern { return this; } - public AnnotationTypePattern parameterizeWith(Map typeVariableMap, World w) { + public AnnotationTypePattern parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { AnnotationTypePattern newLeft = left.parameterizeWith(typeVariableMap, w); AnnotationTypePattern newRight = right.parameterizeWith(typeVariableMap, w); AndAnnotationTypePattern ret = new AndAnnotationTypePattern(newLeft, newRight); diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnnotationPatternList.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnnotationPatternList.java index 6b6d820b7..0b93b48d1 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnnotationPatternList.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnnotationPatternList.java @@ -18,14 +18,12 @@ import org.aspectj.weaver.CompressingDataOutputStream; import org.aspectj.weaver.ISourceContext; import org.aspectj.weaver.IntMap; import org.aspectj.weaver.ResolvedType; +import org.aspectj.weaver.UnresolvedType; import org.aspectj.weaver.VersionedDataInputStream; import org.aspectj.weaver.World; /** - * @author colyer - * - * TODO To change the template for this generated type comment go to Window - Preferences - Java - Code Style - Code - * Templates + * @author Adrian Colyer */ public class AnnotationPatternList extends PatternNode { @@ -38,7 +36,7 @@ public class AnnotationPatternList extends PatternNode { new AnnotationTypePattern[] { AnnotationTypePattern.ELLIPSIS }); public AnnotationPatternList() { - typePatterns = new AnnotationTypePattern[0]; + typePatterns = new AnnotationTypePattern[0]; ellipsisCount = 0; } @@ -51,7 +49,7 @@ public class AnnotationPatternList extends PatternNode { } } - public AnnotationPatternList(List l) { + public AnnotationPatternList(List<AnnotationTypePattern> l) { this((AnnotationTypePattern[]) l.toArray(new AnnotationTypePattern[l.size()])); } @@ -59,7 +57,7 @@ public class AnnotationPatternList extends PatternNode { return typePatterns; } - public AnnotationPatternList parameterizeWith(Map typeVariableMap, World w) { + public AnnotationPatternList parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { AnnotationTypePattern[] parameterizedPatterns = new AnnotationTypePattern[this.typePatterns.length]; for (int i = 0; i < parameterizedPatterns.length; i++) { parameterizedPatterns[i] = this.typePatterns[i].parameterizeWith(typeVariableMap, w); diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnnotationPointcut.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnnotationPointcut.java index 44b346e60..0a197254a 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnnotationPointcut.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnnotationPointcut.java @@ -254,13 +254,13 @@ public class AnnotationPointcut extends NameBindingPointcut { * * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingAnnotationTypePatterns() */ - public List getBindingAnnotationTypePatterns() { + public List<BindingPattern> getBindingAnnotationTypePatterns() { if (annotationTypePattern instanceof BindingPattern) { // BindingAnnotationTypePattern) { - List l = new ArrayList(); - l.add(annotationTypePattern); + List<BindingPattern> l = new ArrayList<BindingPattern>(); + l.add((BindingPattern)annotationTypePattern); return l; } else { - return Collections.EMPTY_LIST; + return Collections.emptyList(); } } @@ -269,8 +269,8 @@ public class AnnotationPointcut extends NameBindingPointcut { * * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingTypePatterns() */ - public List getBindingTypePatterns() { - return Collections.EMPTY_LIST; + public List<BindingTypePattern> getBindingTypePatterns() { + return Collections.emptyList(); } /* diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnnotationTypePattern.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnnotationTypePattern.java index 0f610fc49..82fb33854 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnnotationTypePattern.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnnotationTypePattern.java @@ -19,6 +19,7 @@ import org.aspectj.weaver.CompressingDataOutputStream; import org.aspectj.weaver.ISourceContext; import org.aspectj.weaver.IntMap; import org.aspectj.weaver.ResolvedType; +import org.aspectj.weaver.UnresolvedType; import org.aspectj.weaver.VersionedDataInputStream; import org.aspectj.weaver.World; @@ -50,7 +51,7 @@ public abstract class AnnotationTypePattern extends PatternNode { public abstract void resolve(World world); - public abstract AnnotationTypePattern parameterizeWith(Map/* name -> ResolvedType */typeVariableMap, World w); + public abstract AnnotationTypePattern parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w); public boolean isAny() { return false; diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnyWithAnnotationTypePattern.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnyWithAnnotationTypePattern.java index fa154f38c..8306ff6d0 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnyWithAnnotationTypePattern.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/AnyWithAnnotationTypePattern.java @@ -20,6 +20,7 @@ import org.aspectj.util.FuzzyBoolean; import org.aspectj.weaver.CompressingDataOutputStream; import org.aspectj.weaver.ISourceContext; import org.aspectj.weaver.ResolvedType; +import org.aspectj.weaver.UnresolvedType; import org.aspectj.weaver.VersionedDataInputStream; import org.aspectj.weaver.WeaverMessages; import org.aspectj.weaver.World; @@ -82,7 +83,7 @@ public class AnyWithAnnotationTypePattern extends TypePattern { } @Override - public TypePattern parameterizeWith(Map typeVariableMap, World w) { + public TypePattern parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { AnyWithAnnotationTypePattern ret = new AnyWithAnnotationTypePattern(this.annotationPattern.parameterizeWith( typeVariableMap, w)); ret.copyLocationFrom(this); diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ArgsAnnotationPointcut.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ArgsAnnotationPointcut.java index 433908813..db612b8cd 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ArgsAnnotationPointcut.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ArgsAnnotationPointcut.java @@ -179,36 +179,21 @@ public class ArgsAnnotationPointcut extends NameBindingPointcut { return ret; } - /* - * (non-Javadoc) - * - * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingAnnotationTypePatterns() - */ - public List getBindingAnnotationTypePatterns() { - List l = new ArrayList(); + public List<BindingPattern> getBindingAnnotationTypePatterns() { + List<BindingPattern> l = new ArrayList<BindingPattern>(); AnnotationTypePattern[] pats = arguments.getAnnotationPatterns(); for (int i = 0; i < pats.length; i++) { if (pats[i] instanceof BindingAnnotationTypePattern) { - l.add(pats[i]); + l.add((BindingPattern)pats[i]); } } return l; } - /* - * (non-Javadoc) - * - * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingTypePatterns() - */ - public List getBindingTypePatterns() { - return Collections.EMPTY_LIST; + public List<BindingTypePattern> getBindingTypePatterns() { + return Collections.emptyList(); } - /* - * (non-Javadoc) - * - * @see org.aspectj.weaver.patterns.PatternNode#write(java.io.DataOutputStream) - */ public void write(CompressingDataOutputStream s) throws IOException { s.writeByte(Pointcut.ATARGS); arguments.write(s); diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ArgsPointcut.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ArgsPointcut.java index a5d3569c2..4898a92b5 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ArgsPointcut.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ArgsPointcut.java @@ -118,21 +118,11 @@ public class ArgsPointcut extends NameBindingPointcut { return argumentsToMatchAgainst; } - /* - * (non-Javadoc) - * - * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingAnnotationTypePatterns() - */ - public List getBindingAnnotationTypePatterns() { - return Collections.EMPTY_LIST; + public List<BindingPattern> getBindingAnnotationTypePatterns() { + return Collections.emptyList(); } - /* - * (non-Javadoc) - * - * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingTypePatterns() - */ - public List getBindingTypePatterns() { + public List<BindingTypePattern> getBindingTypePatterns() { List<BindingTypePattern> l = new ArrayList<BindingTypePattern>(); TypePattern[] pats = arguments.getTypePatterns(); for (int i = 0; i < pats.length; i++) { diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/BindingTypePattern.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/BindingTypePattern.java index c0d5434ef..900285038 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/BindingTypePattern.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/BindingTypePattern.java @@ -96,7 +96,7 @@ public class BindingTypePattern extends ExactTypePattern implements BindingPatte } } - public TypePattern parameterizeWith(Map typeVariableMap, World w) { + public TypePattern parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { ExactTypePattern superParameterized = (ExactTypePattern) super.parameterizeWith(typeVariableMap, w); BindingTypePattern ret = new BindingTypePattern(superParameterized.getExactType(), this.formalIndex, this.isVarArgs); ret.copyLocationFrom(this); diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/CflowPointcut.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/CflowPointcut.java index 135c496b5..ed66dc0d5 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/CflowPointcut.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/CflowPointcut.java @@ -40,6 +40,7 @@ import org.aspectj.weaver.VersionedDataInputStream; import org.aspectj.weaver.WeaverMessages; import org.aspectj.weaver.World; import org.aspectj.weaver.ast.Test; +import org.aspectj.weaver.patterns.ConcreteCflowPointcut.Slot; public class CflowPointcut extends Pointcut { private final Pointcut entry; // The pointcut inside the cflow() that @@ -103,7 +104,7 @@ public class CflowPointcut extends Pointcut { return ret; } - public Pointcut parameterizeWith(Map typeVariableMap, World w) { + public Pointcut parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { CflowPointcut ret = new CflowPointcut(entry.parameterizeWith(typeVariableMap, w), isBelow, freeVars); ret.copyLocationFrom(this); return ret; @@ -250,7 +251,7 @@ public class CflowPointcut extends Pointcut { return ret; } else { - List slots = new ArrayList(); + List<Slot> slots = new ArrayList<Slot>(); for (int i = 0, len = freeVars.length; i < len; i++) { int freeVar = freeVars[i]; diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ConcreteCflowPointcut.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ConcreteCflowPointcut.java index 8a553632b..09208f9c2 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ConcreteCflowPointcut.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ConcreteCflowPointcut.java @@ -13,7 +13,6 @@ package org.aspectj.weaver.patterns; import java.io.IOException; -import java.util.Iterator; import java.util.List; import java.util.Map; @@ -35,12 +34,12 @@ import org.aspectj.weaver.ast.Test; public class ConcreteCflowPointcut extends Pointcut { private final Member cflowField; - List/* Slot */slots; // exposed for testing + List<Slot> slots; // exposed for testing boolean usesCounter; ResolvedType aspect; // Can either use a counter or a stack to implement cflow. - public ConcreteCflowPointcut(ResolvedType aspect, Member cflowField, List slots, boolean usesCounter) { + public ConcreteCflowPointcut(ResolvedType aspect, Member cflowField, List<Slot> slots, boolean usesCounter) { this.aspect = aspect; this.cflowField = cflowField; this.slots = slots; @@ -63,8 +62,7 @@ public class ConcreteCflowPointcut extends Pointcut { // this bit is for pr145693 - we cannot match at all if one of the types is missing, we will be unable // to create the residue if (slots != null) { - for (Iterator i = slots.iterator(); i.hasNext();) { - Slot slot = (Slot) i.next(); + for (Slot slot: slots) { ResolvedType rt = slot.formalType; if (rt.isMissing()) { ISourceLocation[] locs = new ISourceLocation[] { getSourceLocation() }; @@ -98,7 +96,7 @@ public class ConcreteCflowPointcut extends Pointcut { throw new RuntimeException("unimplemented"); } - public Pointcut parameterizeWith(Map typeVariableMap, World w) { + public Pointcut parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { throw new RuntimeException("unimplemented"); } @@ -126,8 +124,7 @@ public class ConcreteCflowPointcut extends Pointcut { return Test.makeFieldGetCall(cflowField, cflowCounterIsValidMethod, Expr.NONE); } else { if (slots != null) { // null for cflows managed by counters - for (Iterator i = slots.iterator(); i.hasNext();) { - Slot slot = (Slot) i.next(); + for (Slot slot: slots) { // System.out.println("slot: " + slot.formalIndex); state.set(slot.formalIndex, aspect.getWorld().getWeavingSupport().makeCflowAccessVar(slot.formalType, cflowField, slot.arrayIndex)); diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/DeclareErrorOrWarning.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/DeclareErrorOrWarning.java index c3a698967..0a46fa1e9 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/DeclareErrorOrWarning.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/DeclareErrorOrWarning.java @@ -17,6 +17,7 @@ import java.util.Map; import org.aspectj.weaver.CompressingDataOutputStream; import org.aspectj.weaver.ISourceContext; +import org.aspectj.weaver.UnresolvedType; import org.aspectj.weaver.VersionedDataInputStream; import org.aspectj.weaver.World; @@ -99,7 +100,7 @@ public class DeclareErrorOrWarning extends Declare { pointcut = pointcut.resolve(scope); } - public Declare parameterizeWith(Map typeVariableBindingMap, World w) { + public Declare parameterizeWith(Map<String,UnresolvedType> typeVariableBindingMap, World w) { Declare ret = new DeclareErrorOrWarning(isError, pointcut.parameterizeWith(typeVariableBindingMap, w), message); ret.copyLocationFrom(this); return ret; diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/NameBindingPointcut.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/NameBindingPointcut.java index 511ff6859..34b25e207 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/NameBindingPointcut.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/NameBindingPointcut.java @@ -45,8 +45,8 @@ public abstract class NameBindingPointcut extends Pointcut { return Test.makeInstanceof(var, myType.resolve(world)); } - public abstract List/*<BindingTypePattern>*/ getBindingTypePatterns(); - public abstract List/*<BindingAnnotationTypePattern>*/ getBindingAnnotationTypePatterns(); + public abstract List<BindingTypePattern> getBindingTypePatterns(); + public abstract List<BindingPattern> getBindingAnnotationTypePatterns(); } diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/NotAnnotationTypePattern.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/NotAnnotationTypePattern.java index 76acc110a..0317b85a5 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/NotAnnotationTypePattern.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/NotAnnotationTypePattern.java @@ -17,6 +17,7 @@ import org.aspectj.weaver.AnnotatedElement; import org.aspectj.weaver.CompressingDataOutputStream; import org.aspectj.weaver.ISourceContext; import org.aspectj.weaver.ResolvedType; +import org.aspectj.weaver.UnresolvedType; import org.aspectj.weaver.VersionedDataInputStream; import org.aspectj.weaver.World; import org.aspectj.weaver.AjAttribute.WeaverVersionInfo; @@ -63,7 +64,7 @@ public class NotAnnotationTypePattern extends AnnotationTypePattern { return this; } - public AnnotationTypePattern parameterizeWith(Map typeVariableMap, World w) { + public AnnotationTypePattern parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { AnnotationTypePattern newNegatedPattern = negatedPattern.parameterizeWith(typeVariableMap, w); NotAnnotationTypePattern ret = new NotAnnotationTypePattern(newNegatedPattern); ret.copyLocationFrom(this); diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/OrAnnotationTypePattern.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/OrAnnotationTypePattern.java index 559b0046a..3cfe1de8b 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/OrAnnotationTypePattern.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/OrAnnotationTypePattern.java @@ -17,6 +17,7 @@ import org.aspectj.weaver.AnnotatedElement; import org.aspectj.weaver.CompressingDataOutputStream; import org.aspectj.weaver.ISourceContext; import org.aspectj.weaver.ResolvedType; +import org.aspectj.weaver.UnresolvedType; import org.aspectj.weaver.VersionedDataInputStream; import org.aspectj.weaver.World; import org.aspectj.weaver.AjAttribute.WeaverVersionInfo; @@ -45,19 +46,13 @@ public class OrAnnotationTypePattern extends AnnotationTypePattern { right.resolve(world); } - /* - * (non-Javadoc) - * - * @see org.aspectj.weaver.patterns.AnnotationTypePattern#resolveBindings(org.aspectj.weaver.patterns.IScope, - * org.aspectj.weaver.patterns.Bindings, boolean) - */ public AnnotationTypePattern resolveBindings(IScope scope, Bindings bindings, boolean allowBinding) { left = left.resolveBindings(scope, bindings, allowBinding); right = right.resolveBindings(scope, bindings, allowBinding); return this; } - public AnnotationTypePattern parameterizeWith(Map typeVariableMap, World w) { + public AnnotationTypePattern parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { AnnotationTypePattern newLeft = left.parameterizeWith(typeVariableMap, w); AnnotationTypePattern newRight = right.parameterizeWith(typeVariableMap, w); OrAnnotationTypePattern ret = new OrAnnotationTypePattern(newLeft, newRight); diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerCflow.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerCflow.java index c449eccfa..901c494a6 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerCflow.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerCflow.java @@ -69,7 +69,7 @@ public class PerCflow extends PerClause { entry.resolve(scope); } - public Pointcut parameterizeWith(Map typeVariableMap, World w) { + public Pointcut parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { PerCflow ret = new PerCflow(entry.parameterizeWith(typeVariableMap, w), isBelow); ret.copyLocationFrom(this); return ret; diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerFromSuper.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerFromSuper.java index d513d65f7..9875291f3 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerFromSuper.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerFromSuper.java @@ -21,6 +21,7 @@ import org.aspectj.weaver.CompressingDataOutputStream; import org.aspectj.weaver.ISourceContext; import org.aspectj.weaver.ResolvedType; import org.aspectj.weaver.Shadow; +import org.aspectj.weaver.UnresolvedType; import org.aspectj.weaver.VersionedDataInputStream; import org.aspectj.weaver.WeaverMessages; import org.aspectj.weaver.World; @@ -74,7 +75,7 @@ public class PerFromSuper extends PerClause { } } - public Pointcut parameterizeWith(Map typeVariableMap, World w) { + public Pointcut parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { return this; } diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerObject.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerObject.java index 3a799f78e..237a64a8e 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerObject.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerObject.java @@ -24,6 +24,7 @@ import org.aspectj.weaver.PerObjectInterfaceTypeMunger; import org.aspectj.weaver.ResolvedType; import org.aspectj.weaver.ResolvedTypeMunger; import org.aspectj.weaver.Shadow; +import org.aspectj.weaver.UnresolvedType; import org.aspectj.weaver.VersionedDataInputStream; import org.aspectj.weaver.World; import org.aspectj.weaver.ast.Expr; @@ -87,7 +88,7 @@ public class PerObject extends PerClause { entry.resolve(scope); } - public Pointcut parameterizeWith(Map typeVariableMap, World w) { + public Pointcut parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { PerObject ret = new PerObject(entry.parameterizeWith(typeVariableMap, w), isThis); ret.copyLocationFrom(this); return ret; diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerSingleton.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerSingleton.java index 798b1ba55..f53c3a4a5 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerSingleton.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerSingleton.java @@ -22,6 +22,7 @@ import org.aspectj.weaver.ISourceContext; import org.aspectj.weaver.ResolvedMember; import org.aspectj.weaver.ResolvedType; import org.aspectj.weaver.Shadow; +import org.aspectj.weaver.UnresolvedType; import org.aspectj.weaver.VersionedDataInputStream; import org.aspectj.weaver.World; import org.aspectj.weaver.ast.Expr; @@ -55,7 +56,7 @@ public class PerSingleton extends PerClause { // this method intentionally left blank } - public Pointcut parameterizeWith(Map typeVariableMap, World w) { + public Pointcut parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { return this; } diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerTypeWithin.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerTypeWithin.java index 0bcc85870..e8b92ac5a 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerTypeWithin.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/PerTypeWithin.java @@ -28,6 +28,7 @@ import org.aspectj.weaver.PerTypeWithinTargetTypeMunger; import org.aspectj.weaver.ResolvedType; import org.aspectj.weaver.ResolvedTypeMunger; import org.aspectj.weaver.Shadow; +import org.aspectj.weaver.UnresolvedType; import org.aspectj.weaver.VersionedDataInputStream; import org.aspectj.weaver.World; import org.aspectj.weaver.ast.Expr; @@ -58,7 +59,7 @@ public class PerTypeWithin extends PerClause { return kindSet; } - public Pointcut parameterizeWith(Map typeVariableMap, World w) { + public Pointcut parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { PerTypeWithin ret = new PerTypeWithin(typePattern.parameterizeWith(typeVariableMap, w)); ret.copyLocationFrom(this); return ret; diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ThisOrTargetAnnotationPointcut.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ThisOrTargetAnnotationPointcut.java index 7656a08e0..dfb509195 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ThisOrTargetAnnotationPointcut.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ThisOrTargetAnnotationPointcut.java @@ -89,7 +89,7 @@ public class ThisOrTargetAnnotationPointcut extends NameBindingPointcut { } @Override - public Pointcut parameterizeWith(Map typeVariableMap, World w) { + public Pointcut parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { ExactAnnotationTypePattern newPattern = (ExactAnnotationTypePattern) this.annotationTypePattern.parameterizeWith( typeVariableMap, w); if (newPattern.getAnnotationType() instanceof ResolvedType) { @@ -246,13 +246,13 @@ public class ThisOrTargetAnnotationPointcut extends NameBindingPointcut { * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingAnnotationTypePatterns() */ @Override - public List getBindingAnnotationTypePatterns() { + public List<BindingPattern> getBindingAnnotationTypePatterns() { if (annotationTypePattern instanceof BindingAnnotationTypePattern) { - List l = new ArrayList(); - l.add(annotationTypePattern); + List<BindingPattern> l = new ArrayList<BindingPattern>(); + l.add((BindingPattern)annotationTypePattern); return l; } else { - return Collections.EMPTY_LIST; + return Collections.emptyList(); } } @@ -262,8 +262,8 @@ public class ThisOrTargetAnnotationPointcut extends NameBindingPointcut { * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingTypePatterns() */ @Override - public List getBindingTypePatterns() { - return Collections.EMPTY_LIST; + public List<BindingTypePattern> getBindingTypePatterns() { + return Collections.emptyList(); } /* diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ThisOrTargetPointcut.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ThisOrTargetPointcut.java index f2e77440b..a278e76c6 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ThisOrTargetPointcut.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ThisOrTargetPointcut.java @@ -34,8 +34,6 @@ import org.aspectj.weaver.ast.Literal; import org.aspectj.weaver.ast.Test; import org.aspectj.weaver.ast.Var; -// - /** * Corresponds to target or this pcd. * @@ -90,7 +88,7 @@ public class ThisOrTargetPointcut extends NameBindingPointcut { } @Override - public Pointcut parameterizeWith(Map typeVariableMap, World w) { + public Pointcut parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { ThisOrTargetPointcut ret = new ThisOrTargetPointcut(isThis, typePattern.parameterizeWith(typeVariableMap, w)); ret.copyLocationFrom(this); return ret; @@ -159,29 +157,19 @@ public class ThisOrTargetPointcut extends NameBindingPointcut { typePattern.postRead(enclosingType); } - /* - * (non-Javadoc) - * - * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingAnnotationTypePatterns() - */ @Override - public List getBindingAnnotationTypePatterns() { - return Collections.EMPTY_LIST; + public List<BindingPattern> getBindingAnnotationTypePatterns() { + return Collections.emptyList(); } - /* - * (non-Javadoc) - * - * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingTypePatterns() - */ @Override - public List getBindingTypePatterns() { + public List<BindingTypePattern> getBindingTypePatterns() { if (typePattern instanceof BindingTypePattern) { - List l = new ArrayList(); - l.add(typePattern); + List<BindingTypePattern> l = new ArrayList<BindingTypePattern>(); + l.add((BindingTypePattern)typePattern); return l; } else { - return Collections.EMPTY_LIST; + return Collections.emptyList(); } } diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ThrowsPattern.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ThrowsPattern.java index d3e0afce2..93557d8c1 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ThrowsPattern.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/ThrowsPattern.java @@ -78,7 +78,7 @@ public class ThrowsPattern extends PatternNode { return this; } - public ThrowsPattern parameterizeWith(Map/* name -> resolved type */typeVariableMap, World w) { + public ThrowsPattern parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { ThrowsPattern ret = new ThrowsPattern(required.parameterizeWith(typeVariableMap, w), forbidden.parameterizeWith( typeVariableMap, w)); ret.copyLocationFrom(this); diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/TypeCategoryTypePattern.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/TypeCategoryTypePattern.java index 3e0934fe8..9f565b20d 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/TypeCategoryTypePattern.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/TypeCategoryTypePattern.java @@ -20,6 +20,7 @@ import org.aspectj.util.FuzzyBoolean; import org.aspectj.weaver.CompressingDataOutputStream; import org.aspectj.weaver.ISourceContext; import org.aspectj.weaver.ResolvedType; +import org.aspectj.weaver.UnresolvedType; import org.aspectj.weaver.VersionedDataInputStream; import org.aspectj.weaver.World; @@ -69,7 +70,7 @@ public class TypeCategoryTypePattern extends TypePattern { } @Override - public TypePattern parameterizeWith(Map typeVariableMap, World w) { + public TypePattern parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { return this; } diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/TypePatternList.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/TypePatternList.java index 1551cdb40..da9d6e15a 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/TypePatternList.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/TypePatternList.java @@ -58,7 +58,7 @@ public class TypePatternList extends PatternNode { } } - public TypePatternList(List l) { + public TypePatternList(List<TypePattern> l) { this((TypePattern[]) l.toArray(new TypePattern[l.size()])); } @@ -424,7 +424,7 @@ public class TypePatternList extends PatternNode { * @param typeVariableMap * @return */ - public TypePatternList parameterizeWith(Map typeVariableMap, World w) { + public TypePatternList parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { TypePattern[] parameterizedPatterns = new TypePattern[typePatterns.length]; for (int i = 0; i < parameterizedPatterns.length; i++) { parameterizedPatterns[i] = typePatterns[i].parameterizeWith(typeVariableMap, w); diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/TypePatternQuestions.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/TypePatternQuestions.java index 41aaf4bcf..d4bdf2e58 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/TypePatternQuestions.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/TypePatternQuestions.java @@ -22,7 +22,7 @@ import org.aspectj.weaver.ResolvedType; public class TypePatternQuestions { - private Map questionsAndAnswers = new HashMap(); + private Map<Question,FuzzyBoolean> questionsAndAnswers = new HashMap<Question,FuzzyBoolean>(); public FuzzyBoolean askQuestion(TypePattern pattern, ResolvedType type, TypePattern.MatchKind kind) @@ -37,8 +37,8 @@ public class TypePatternQuestions { } public Question anyChanges() { - for (Iterator i = questionsAndAnswers.entrySet().iterator(); i.hasNext(); ) { - Map.Entry entry = (Map.Entry)i.next(); + for (Iterator<Map.Entry<Question,FuzzyBoolean>> i = questionsAndAnswers.entrySet().iterator(); i.hasNext(); ) { + Map.Entry<Question,FuzzyBoolean> entry = i.next(); Question question = (Question)entry.getKey(); FuzzyBoolean expectedAnswer = (FuzzyBoolean)entry.getValue(); @@ -55,8 +55,7 @@ public class TypePatternQuestions { public String toString() { StringBuffer buf = new StringBuffer(); buf.append("TypePatternQuestions{"); - for (Iterator i = questionsAndAnswers.entrySet().iterator(); i.hasNext(); ) { - Map.Entry entry = (Map.Entry)i.next(); + for (Map.Entry<Question,FuzzyBoolean> entry: questionsAndAnswers.entrySet()) { Question question = (Question)entry.getKey(); FuzzyBoolean expectedAnswer = (FuzzyBoolean)entry.getValue(); buf.append(question); diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/WithinAnnotationPointcut.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/WithinAnnotationPointcut.java index 87966f017..42ec11dc2 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/WithinAnnotationPointcut.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/WithinAnnotationPointcut.java @@ -69,7 +69,7 @@ public class WithinAnnotationPointcut extends NameBindingPointcut { } @Override - public Pointcut parameterizeWith(Map typeVariableMap, World w) { + public Pointcut parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { WithinAnnotationPointcut ret = new WithinAnnotationPointcut(this.annotationTypePattern.parameterizeWith(typeVariableMap, w)); ret.copyLocationFrom(this); return ret; @@ -161,37 +161,22 @@ public class WithinAnnotationPointcut extends NameBindingPointcut { return match(shadow).alwaysTrue() ? Literal.TRUE : Literal.FALSE; } - /* - * (non-Javadoc) - * - * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingAnnotationTypePatterns() - */ @Override - public List getBindingAnnotationTypePatterns() { + public List<BindingPattern> getBindingAnnotationTypePatterns() { if (annotationTypePattern instanceof BindingAnnotationTypePattern) { - List l = new ArrayList(); - l.add(annotationTypePattern); + List<BindingPattern> l = new ArrayList<BindingPattern>(); + l.add((BindingPattern)annotationTypePattern); return l; } else { - return Collections.EMPTY_LIST; + return Collections.emptyList(); } } - /* - * (non-Javadoc) - * - * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingTypePatterns() - */ @Override - public List getBindingTypePatterns() { - return Collections.EMPTY_LIST; + public List<BindingTypePattern> getBindingTypePatterns() { + return Collections.emptyList(); } - /* - * (non-Javadoc) - * - * @see org.aspectj.weaver.patterns.PatternNode#write(java.io.DataOutputStream) - */ @Override public void write(CompressingDataOutputStream s) throws IOException { s.writeByte(Pointcut.ATWITHIN); diff --git a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/WithinCodeAnnotationPointcut.java b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/WithinCodeAnnotationPointcut.java index 0b574c4d4..408c829f5 100644 --- a/org.aspectj.matcher/src/org/aspectj/weaver/patterns/WithinCodeAnnotationPointcut.java +++ b/org.aspectj.matcher/src/org/aspectj/weaver/patterns/WithinCodeAnnotationPointcut.java @@ -77,7 +77,7 @@ public class WithinCodeAnnotationPointcut extends NameBindingPointcut { return matchedShadowKinds; } - public Pointcut parameterizeWith(Map typeVariableMap, World w) { + public Pointcut parameterizeWith(Map<String,UnresolvedType> typeVariableMap, World w) { WithinCodeAnnotationPointcut ret = new WithinCodeAnnotationPointcut((ExactAnnotationTypePattern) this.annotationTypePattern .parameterizeWith(typeVariableMap, w)); ret.copyLocationFrom(this); @@ -170,35 +170,20 @@ public class WithinCodeAnnotationPointcut extends NameBindingPointcut { } } - /* - * (non-Javadoc) - * - * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingAnnotationTypePatterns() - */ - public List getBindingAnnotationTypePatterns() { + public List<BindingPattern> getBindingAnnotationTypePatterns() { if (annotationTypePattern instanceof BindingAnnotationTypePattern) { - List l = new ArrayList(); - l.add(annotationTypePattern); + List<BindingPattern> l = new ArrayList<BindingPattern>(); + l.add((BindingPattern)annotationTypePattern); return l; } else { - return Collections.EMPTY_LIST; + return Collections.emptyList(); } } - /* - * (non-Javadoc) - * - * @see org.aspectj.weaver.patterns.NameBindingPointcut#getBindingTypePatterns() - */ - public List getBindingTypePatterns() { - return Collections.EMPTY_LIST; + public List<BindingTypePattern> getBindingTypePatterns() { + return Collections.emptyList(); } - /* - * (non-Javadoc) - * - * @see org.aspectj.weaver.patterns.PatternNode#write(java.io.DataOutputStream) - */ public void write(CompressingDataOutputStream s) throws IOException { s.writeByte(Pointcut.ATWITHINCODE); annotationTypePattern.write(s); diff --git a/taskdefs/.isJava5 b/taskdefs/.isJava5 new file mode 100644 index 000000000..136d06384 --- /dev/null +++ b/taskdefs/.isJava5 @@ -0,0 +1 @@ +
\ No newline at end of file diff --git a/taskdefs/src/org/aspectj/tools/ant/taskdefs/Ajdoc.java b/taskdefs/src/org/aspectj/tools/ant/taskdefs/Ajdoc.java index 0957ce1e9..b787a2f89 100644 --- a/taskdefs/src/org/aspectj/tools/ant/taskdefs/Ajdoc.java +++ b/taskdefs/src/org/aspectj/tools/ant/taskdefs/Ajdoc.java @@ -58,23 +58,23 @@ public class Ajdoc extends MatchingTask { protected Commandline vmcmd; private Path sourcepath; private File destdir; - private Collection sourcefiles; - private Collection packagenames; + private Collection<String> sourcefiles; + private Collection<String> packagenames; private File packageList; private Path bootclasspath; private Path extdirs; private Path classpath; private Path internalclasspath; - private List argfiles; + private List<File> argfiles; private Path docletpath; - private Collection links; - private Collection groups; + private Collection<Link> links; + private Collection<Group> groups; private Doclet doclet; private boolean failonerror; private boolean fork; private String source; private Html bottom; - private Vector fileSets = new Vector(); + private Vector<FileSet> fileSets = new Vector<FileSet>(); /** reset all to initial values - permit gc if Ajdoc is held */ public Ajdoc() { reset(); @@ -94,8 +94,8 @@ public class Ajdoc extends MatchingTask { internalclasspath = null; argfiles = null; docletpath = null; - links = new ArrayList(); - groups = new ArrayList(); + links = new ArrayList<Link>(); + groups = new ArrayList<Group>(); doclet = null; failonerror = false; fork = false; @@ -165,9 +165,9 @@ public class Ajdoc extends MatchingTask { private void addFileSets() { if(sourcefiles == null) - sourcefiles = new ArrayList(); + sourcefiles = new ArrayList<String>(); - Enumeration e = fileSets.elements(); + Enumeration<FileSet> e = fileSets.elements(); while (e.hasMoreElements()) { FileSet fs = (FileSet) e.nextElement(); if (!fs.hasPatterns() && !fs.hasSelectors()) { @@ -186,7 +186,7 @@ public class Ajdoc extends MatchingTask { public void setPackagenames(String list) { (packagenames == null ? - packagenames = new ArrayList() : + packagenames = new ArrayList<String>() : packagenames).addAll(strings(list, true)); } @@ -262,9 +262,9 @@ public class Ajdoc extends MatchingTask { } } - public List createArgfiles() { + public List<File> createArgfiles() { return (argfiles == null ? - argfiles = new ArrayList() : + argfiles = new ArrayList<File>() : argfiles); } @@ -388,7 +388,7 @@ public class Ajdoc extends MatchingTask { public class Group { private String title; - private List packages; + private List<String> packages; public Group() {} public void setTitle(String title) { this.title = title; @@ -480,7 +480,7 @@ public class Ajdoc extends MatchingTask { public class Doclet { protected String name; protected Path path; - protected List params = new ArrayList(); + protected List<Param> params = new ArrayList<Param>(); public Doclet() {} public void setName(String name) { this.name = name; @@ -583,8 +583,7 @@ public class Ajdoc extends MatchingTask { cmd.createArgument().setValue(getProject().replaceProperties(bottom.getText())); } - for (Iterator i = links.iterator(); i.hasNext();) { - Link link = (Link)i.next(); + for (Link link: links) { if (link.href == null) { throw new BuildException("Link href cannot be null!", getLocation()); } @@ -619,9 +618,8 @@ public class Ajdoc extends MatchingTask { } } } - Map groupMap = new HashMap(); - for (Iterator i = groups.iterator(); i.hasNext();) { - Group group = (Group)i.next(); + Map<String,List<String>> groupMap = new HashMap<String,List<String>>(); + for (Group group: groups) { if (group.title == null) { throw new BuildException("Group names cannot be null!", getLocation()); @@ -630,18 +628,17 @@ public class Ajdoc extends MatchingTask { throw new BuildException("Group packages cannot be null!", getLocation()); } - List packages = (List)groupMap.get(group.title); + List<String> packages = groupMap.get(group.title); if (packages == null) { - packages = new ArrayList(); + packages = new ArrayList<String>(); } packages.addAll(group.packages); groupMap.put(group.title, packages); } - for (Iterator i = groupMap.keySet().iterator(); i.hasNext();) { - String title = (String)i.next(); - List packages = (List)groupMap.get(title); + for (String title: groupMap.keySet()) { + List<String> packages = groupMap.get(title); String pkgstr = ""; - for (Iterator j = packages.iterator(); j.hasNext();) { + for (Iterator<String> j = packages.iterator(); j.hasNext();) { pkgstr += j.next(); if (j.hasNext()) pkgstr += ","; } @@ -663,7 +660,7 @@ public class Ajdoc extends MatchingTask { cmd.createArgument().setValue("@" + packageList); } if (null != packagenames) { - for (Iterator i = packagenames.iterator(); i.hasNext();) { + for (Iterator<String> i = packagenames.iterator(); i.hasNext();) { cmd.createArgument().setValue((String)i.next()); } } @@ -688,9 +685,9 @@ public class Ajdoc extends MatchingTask { addFileSets(); if (sourcefiles != null) { - for (Iterator i = sourcefiles.iterator(); i.hasNext();) { + for (Iterator<String> i = sourcefiles.iterator(); i.hasNext();) { // let ajdoc resolve sourcefiles relative to sourcepath, - cmd.createArgument().setValue((String)i.next()); + cmd.createArgument().setValue(i.next()); } } // XXX PR682 weak way to report errors - need to refactor @@ -717,13 +714,13 @@ public class Ajdoc extends MatchingTask { } } - protected interface Mapper { - public Object map(String str); + protected interface Mapper<T> { + public T map(String str); } - protected final List list(String str, Mapper mapper) { - if (str == null) return Collections.EMPTY_LIST; - List list = new ArrayList(); + protected final <T> List<T> list(String str, Mapper<T> mapper) { + if (str == null) return Collections.emptyList(); + List<T> list = new ArrayList<T>(); for (StringTokenizer t = new StringTokenizer(str, ",", false); t.hasMoreTokens();) { list.add(mapper.map(t.nextToken().trim())); @@ -731,21 +728,21 @@ public class Ajdoc extends MatchingTask { return list; } - protected final List files(String str) { - return list(str, new Mapper() { - public Object map(String s) { + protected final List<File> files(String str) { + return list(str, new Mapper<File>() { + public File map(String s) { return getProject().resolveFile(s); } }); } - protected final List strings(String str) { + protected final List<String> strings(String str) { return strings(str, false); } - protected final List strings(String str, final boolean filterSlashes) { - return list(str, new Mapper() { - public Object map(String s) { + protected final List<String> strings(String str, final boolean filterSlashes) { + return list(str, new Mapper<String>() { + public String map(String s) { return filterSlashes ? filterSlashes(s) : s; } }); diff --git a/weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java b/weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java index a7b35a203..3163e7f37 100644 --- a/weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java +++ b/weaver/src/org/aspectj/weaver/bcel/BcelClassWeaver.java @@ -14,7 +14,6 @@ package org.aspectj.weaver.bcel; import java.lang.reflect.Modifier; import java.util.ArrayList; -import java.util.Collection; import java.util.Collections; import java.util.Comparator; import java.util.HashMap; @@ -27,11 +26,7 @@ import java.util.Properties; import java.util.Set; import org.aspectj.apache.bcel.Constants; -import org.aspectj.apache.bcel.classfile.Attribute; import org.aspectj.apache.bcel.classfile.BootstrapMethods; -import org.aspectj.apache.bcel.classfile.ConstantInvokeDynamic; -import org.aspectj.apache.bcel.classfile.ConstantMethodHandle; -import org.aspectj.apache.bcel.classfile.ConstantMethodref; import org.aspectj.apache.bcel.classfile.ConstantPool; import org.aspectj.apache.bcel.classfile.Method; import org.aspectj.apache.bcel.classfile.annotation.AnnotationGen; @@ -47,7 +42,6 @@ import org.aspectj.apache.bcel.generic.InstructionLV; import org.aspectj.apache.bcel.generic.InstructionList; import org.aspectj.apache.bcel.generic.InstructionSelect; import org.aspectj.apache.bcel.generic.InstructionTargeter; -import org.aspectj.apache.bcel.generic.InvokeDynamic; import org.aspectj.apache.bcel.generic.InvokeInstruction; import org.aspectj.apache.bcel.generic.LineNumberTag; import org.aspectj.apache.bcel.generic.LocalVariableTag; @@ -74,7 +68,6 @@ import org.aspectj.weaver.ConcreteTypeMunger; import org.aspectj.weaver.IClassWeaver; import org.aspectj.weaver.IntMap; import org.aspectj.weaver.Member; -import org.aspectj.weaver.MemberKind; import org.aspectj.weaver.MissingResolvedTypeWithKnownSignature; import org.aspectj.weaver.NameMangler; import org.aspectj.weaver.NewConstructorTypeMunger; |