aboutsummaryrefslogtreecommitdiffstats
path: root/weaver/src
diff options
context:
space:
mode:
authorLars Grefer <eclipse@larsgrefer.de>2020-08-13 23:21:11 +0200
committerLars Grefer <eclipse@larsgrefer.de>2020-08-13 23:21:11 +0200
commitd7ba05ce26dd8f72c1d0695ece2cb03d035e3cf9 (patch)
treeb0ca80a1154a73ca8ed1d5d4cf175c2682af6fce /weaver/src
parent4f027bd94fe71756894f13a4a82123eda4f28b98 (diff)
downloadaspectj-d7ba05ce26dd8f72c1d0695ece2cb03d035e3cf9.tar.gz
aspectj-d7ba05ce26dd8f72c1d0695ece2cb03d035e3cf9.zip
Remove checks for old Java Versions
Signed-off-by: Lars Grefer <eclipse@larsgrefer.de>
Diffstat (limited to 'weaver/src')
-rw-r--r--weaver/src/main/java/org/aspectj/weaver/ltw/LTWWorld.java2
-rw-r--r--weaver/src/main/java/org/aspectj/weaver/tools/WeavingAdaptor.java4
-rw-r--r--weaver/src/test/java/org/aspectj/weaver/TypeXTestCase.java62
-rw-r--r--weaver/src/test/java/org/aspectj/weaver/patterns/AnnotationPatternMatchingTestCase.java48
-rw-r--r--weaver/src/test/java/org/aspectj/weaver/patterns/AnnotationPatternTestCase.java88
-rw-r--r--weaver/src/test/java/org/aspectj/weaver/tools/PointcutDesignatorHandlerTest.java1
-rw-r--r--weaver/src/test/java/org/aspectj/weaver/tools/PointcutExpressionTest.java6
-rw-r--r--weaver/src/test/java/org/aspectj/weaver/tools/PointcutParserTest.java3
-rw-r--r--weaver/src/test/java/org/aspectj/weaver/tools/TypePatternMatcherTest.java1
9 files changed, 93 insertions, 122 deletions
diff --git a/weaver/src/main/java/org/aspectj/weaver/ltw/LTWWorld.java b/weaver/src/main/java/org/aspectj/weaver/ltw/LTWWorld.java
index 1fc72dd06..c9f1ecffc 100644
--- a/weaver/src/main/java/org/aspectj/weaver/ltw/LTWWorld.java
+++ b/weaver/src/main/java/org/aspectj/weaver/ltw/LTWWorld.java
@@ -80,7 +80,7 @@ public class LTWWorld extends BcelWorld implements IReflectionWorld {
classLoaderString = loader.getClass().getName()+":"+Integer.toString(System.identityHashCode(loader));
}
classLoaderParentString = (loader.getParent() == null ? "<NullParent>" : loader.getParent().toString());
- setBehaveInJava5Way(LangUtil.is15VMOrGreater());
+ setBehaveInJava5Way(true);
annotationFinder = ReflectionWorld.makeAnnotationFinderIfAny(loader, this);
}
diff --git a/weaver/src/main/java/org/aspectj/weaver/tools/WeavingAdaptor.java b/weaver/src/main/java/org/aspectj/weaver/tools/WeavingAdaptor.java
index d3a194fcc..5571ad51f 100644
--- a/weaver/src/main/java/org/aspectj/weaver/tools/WeavingAdaptor.java
+++ b/weaver/src/main/java/org/aspectj/weaver/tools/WeavingAdaptor.java
@@ -200,9 +200,7 @@ public class WeavingAdaptor implements IMessageContext {
bcelWorld = new BcelWorld(classPath, messageHandler, null);
bcelWorld.setXnoInline(false);
bcelWorld.getLint().loadDefaultProperties();
- if (LangUtil.is15VMOrGreater()) {
- bcelWorld.setBehaveInJava5Way(true);
- }
+ bcelWorld.setBehaveInJava5Way(true);
weaver = new BcelWeaver(bcelWorld);
registerAspectLibraries(aspectPath);
diff --git a/weaver/src/test/java/org/aspectj/weaver/TypeXTestCase.java b/weaver/src/test/java/org/aspectj/weaver/TypeXTestCase.java
index d6b60eb5f..067e12a4c 100644
--- a/weaver/src/test/java/org/aspectj/weaver/TypeXTestCase.java
+++ b/weaver/src/test/java/org/aspectj/weaver/TypeXTestCase.java
@@ -107,42 +107,38 @@ public class TypeXTestCase extends TestCase {
}
public void testTypeXForParameterizedTypes() {
- if (LangUtil.is15VMOrGreater()) { // no funny types pre 1.5
- World world = new BcelWorld();
- UnresolvedType stringType = UnresolvedType.forName("java/lang/String");
- ResolvedType listOfStringType =
- TypeFactory.createParameterizedType(
- UnresolvedType.forName("java/util/List").resolve(world),
- new UnresolvedType[] {stringType},
- world);
- assertEquals("1 type param",1,listOfStringType.typeParameters.length);
- assertEquals(stringType,listOfStringType.typeParameters[0]);
- assertTrue(listOfStringType.isParameterizedType());
- assertFalse(listOfStringType.isGenericType());
- }
+ World world = new BcelWorld();
+ UnresolvedType stringType = UnresolvedType.forName("java/lang/String");
+ ResolvedType listOfStringType =
+ TypeFactory.createParameterizedType(
+ UnresolvedType.forName("java/util/List").resolve(world),
+ new UnresolvedType[] {stringType},
+ world);
+ assertEquals("1 type param",1,listOfStringType.typeParameters.length);
+ assertEquals(stringType,listOfStringType.typeParameters[0]);
+ assertTrue(listOfStringType.isParameterizedType());
+ assertFalse(listOfStringType.isGenericType());
}
public void testTypeFactoryForParameterizedTypes() {
- if (LangUtil.is15VMOrGreater()) { // no funny types pre 1.5
- UnresolvedType enumOfSimpleType =
- TypeFactory.createTypeFromSignature("Pjava/lang/Enum<Ljava/lang/String;>;");
- assertEquals(1, enumOfSimpleType.getTypeParameters().length);
-
- UnresolvedType enumOfNestedType =
- TypeFactory.createTypeFromSignature("Pjava/lang/Enum<Ljavax/jws/soap/SOAPBinding$ParameterStyle;>;");
- assertEquals(1, enumOfNestedType.getTypeParameters().length);
-
- // is this signature right?
- UnresolvedType nestedTypeOfParameterized =
- TypeFactory.createTypeFromSignature("PMyInterface<Ljava/lang/String;>$MyOtherType;");
- assertEquals(0, nestedTypeOfParameterized.getTypeParameters().length);
-
- // how about this one? is this valid?
- UnresolvedType doublyNestedTypeSignatures =
- TypeFactory.createTypeFromSignature("PMyInterface<Ljava/lang/String;Ljava/lang/String;>$MyOtherType<Ljava/lang/Object;>;");
- assertEquals(1, doublyNestedTypeSignatures.getTypeParameters().length);
-
- }
+ UnresolvedType enumOfSimpleType =
+ TypeFactory.createTypeFromSignature("Pjava/lang/Enum<Ljava/lang/String;>;");
+ assertEquals(1, enumOfSimpleType.getTypeParameters().length);
+
+ UnresolvedType enumOfNestedType =
+ TypeFactory.createTypeFromSignature("Pjava/lang/Enum<Ljavax/jws/soap/SOAPBinding$ParameterStyle;>;");
+ assertEquals(1, enumOfNestedType.getTypeParameters().length);
+
+ // is this signature right?
+ UnresolvedType nestedTypeOfParameterized =
+ TypeFactory.createTypeFromSignature("PMyInterface<Ljava/lang/String;>$MyOtherType;");
+ assertEquals(0, nestedTypeOfParameterized.getTypeParameters().length);
+
+ // how about this one? is this valid?
+ UnresolvedType doublyNestedTypeSignatures =
+ TypeFactory.createTypeFromSignature("PMyInterface<Ljava/lang/String;Ljava/lang/String;>$MyOtherType<Ljava/lang/Object;>;");
+ assertEquals(1, doublyNestedTypeSignatures.getTypeParameters().length);
+
}
private void checkTX(UnresolvedType tx,boolean shouldBeParameterized,int numberOfTypeParameters) {
diff --git a/weaver/src/test/java/org/aspectj/weaver/patterns/AnnotationPatternMatchingTestCase.java b/weaver/src/test/java/org/aspectj/weaver/patterns/AnnotationPatternMatchingTestCase.java
index eb5c50948..ea276614c 100644
--- a/weaver/src/test/java/org/aspectj/weaver/patterns/AnnotationPatternMatchingTestCase.java
+++ b/weaver/src/test/java/org/aspectj/weaver/patterns/AnnotationPatternMatchingTestCase.java
@@ -81,14 +81,12 @@ public class AnnotationPatternMatchingTestCase extends TestCase {
}
public void testAnnotationPatternMatchingOnTypes() {
- if (LangUtil.is15VMOrGreater()) {
- ResolvedType rtx = loadType("AnnotatedClass");
- initAnnotationTypePatterns();
+ ResolvedType rtx = loadType("AnnotatedClass");
+ initAnnotationTypePatterns();
- // One should match
- assertTrue("@Foo should not match on the AnnotatedClass", fooTP.matches(rtx).alwaysFalse());
- assertTrue("@SimpleAnnotation should match on the AnnotatedClass", simpleAnnotationTP.matches(rtx).alwaysTrue());
- }
+ // One should match
+ assertTrue("@Foo should not match on the AnnotatedClass", fooTP.matches(rtx).alwaysFalse());
+ assertTrue("@SimpleAnnotation should match on the AnnotatedClass", simpleAnnotationTP.matches(rtx).alwaysTrue());
}
@@ -167,35 +165,31 @@ public class AnnotationPatternMatchingTestCase extends TestCase {
}
public void testAnnotationPatternMatchingOnMethods() {
- if (LangUtil.is15VMOrGreater()) {
- ResolvedType rtx = loadType("AnnotatedClass");
- ResolvedMember aMethod = rtx.getDeclaredMethods()[1];
+ ResolvedType rtx = loadType("AnnotatedClass");
+ ResolvedMember aMethod = rtx.getDeclaredMethods()[1];
- assertTrue("Haven't got the right method, I'm looking for 'm1()': " + aMethod.getName(), aMethod.getName().equals("m1"));
+ assertTrue("Haven't got the right method, I'm looking for 'm1()': " + aMethod.getName(), aMethod.getName().equals("m1"));
- initAnnotationTypePatterns();
+ initAnnotationTypePatterns();
- // One should match
- assertTrue("@Foo should not match on the AnnotatedClass.m1() method", fooTP.matches(aMethod).alwaysFalse());
- assertTrue("@SimpleAnnotation should match on the AnnotatedClass.m1() method", simpleAnnotationTP.matches(aMethod)
- .alwaysTrue());
- }
+ // One should match
+ assertTrue("@Foo should not match on the AnnotatedClass.m1() method", fooTP.matches(aMethod).alwaysFalse());
+ assertTrue("@SimpleAnnotation should match on the AnnotatedClass.m1() method", simpleAnnotationTP.matches(aMethod)
+ .alwaysTrue());
}
public void testAnnotationPatternMatchingOnFields() {
- if (LangUtil.is15VMOrGreater()) {
- ResolvedType rtx = loadType("AnnotatedClass");
- ResolvedMember aField = rtx.getDeclaredFields()[0];
+ ResolvedType rtx = loadType("AnnotatedClass");
+ ResolvedMember aField = rtx.getDeclaredFields()[0];
- assertTrue("Haven't got the right field, I'm looking for 'i'" + aField.getName(), aField.getName().equals("i"));
+ assertTrue("Haven't got the right field, I'm looking for 'i'" + aField.getName(), aField.getName().equals("i"));
- initAnnotationTypePatterns();
+ initAnnotationTypePatterns();
- // One should match
- assertTrue("@Foo should not match on the AnnotatedClass.i field", fooTP.matches(aField).alwaysFalse());
- assertTrue("@SimpleAnnotation should match on the AnnotatedClass.i field", simpleAnnotationTP.matches(aField)
- .alwaysTrue());
- }
+ // One should match
+ assertTrue("@Foo should not match on the AnnotatedClass.i field", fooTP.matches(aField).alwaysFalse());
+ assertTrue("@SimpleAnnotation should match on the AnnotatedClass.i field", simpleAnnotationTP.matches(aField)
+ .alwaysTrue());
}
diff --git a/weaver/src/test/java/org/aspectj/weaver/patterns/AnnotationPatternTestCase.java b/weaver/src/test/java/org/aspectj/weaver/patterns/AnnotationPatternTestCase.java
index 0433846fb..05291af1f 100644
--- a/weaver/src/test/java/org/aspectj/weaver/patterns/AnnotationPatternTestCase.java
+++ b/weaver/src/test/java/org/aspectj/weaver/patterns/AnnotationPatternTestCase.java
@@ -253,52 +253,46 @@ public class AnnotationPatternTestCase extends TestCase {
}
public void testExactAnnotationPatternMatching() {
- if (LangUtil.is15VMOrGreater()) {
- PatternParser p = new PatternParser("@Foo");
- AnnotationTypePattern ap = p.maybeParseAnnotationPattern();
- ap = ap.resolveBindings(makeSimpleScope(), new Bindings(3), true);
- AnnotatedElementImpl ae = new AnnotatedElementImpl(new String[] { "Foo" });
- assertTrue("matches element with Foo", ap.matches(ae).alwaysTrue());
- AnnotatedElementImpl ae2 = new AnnotatedElementImpl(new String[] { "Boo" });
- assertTrue("does not match element with Boo", ap.matches(ae2).alwaysFalse());
- }
+ PatternParser p = new PatternParser("@Foo");
+ AnnotationTypePattern ap = p.maybeParseAnnotationPattern();
+ ap = ap.resolveBindings(makeSimpleScope(), new Bindings(3), true);
+ AnnotatedElementImpl ae = new AnnotatedElementImpl(new String[] { "Foo" });
+ assertTrue("matches element with Foo", ap.matches(ae).alwaysTrue());
+ AnnotatedElementImpl ae2 = new AnnotatedElementImpl(new String[] { "Boo" });
+ assertTrue("does not match element with Boo", ap.matches(ae2).alwaysFalse());
}
public void testBindingAnnotationPatternMatching() {
- if (LangUtil.is15VMOrGreater()) {
- PatternParser p = new PatternParser("foo");
- AnnotationTypePattern ap = p.parseAnnotationNameOrVarTypePattern();
- try {
- ap = ap.resolveBindings(makeSimpleScope(), new Bindings(3), true);
- } catch (AbortException abEx) {
- assertEquals("Binding not supported in @pcds (1.5.0 M1 limitation): null", abEx.getMessage());
- }
- // uncomment these next lines once binding is supported
- // AnnotatedElementImpl ae = new AnnotatedElementImpl(new
- // String[]{"Foo"});
- // assertTrue("matches element with Foo",ap.matches(ae).alwaysTrue())
- // ;
- // AnnotatedElementImpl ae2 = new AnnotatedElementImpl(new
- // String[]{"Boo"});
- // assertTrue("does not match element with Boo",ap.matches(ae2).
- // alwaysFalse());
+ PatternParser p = new PatternParser("foo");
+ AnnotationTypePattern ap = p.parseAnnotationNameOrVarTypePattern();
+ try {
+ ap = ap.resolveBindings(makeSimpleScope(), new Bindings(3), true);
+ } catch (AbortException abEx) {
+ assertEquals("Binding not supported in @pcds (1.5.0 M1 limitation): null", abEx.getMessage());
}
+ // uncomment these next lines once binding is supported
+ // AnnotatedElementImpl ae = new AnnotatedElementImpl(new
+ // String[]{"Foo"});
+ // assertTrue("matches element with Foo",ap.matches(ae).alwaysTrue())
+ // ;
+ // AnnotatedElementImpl ae2 = new AnnotatedElementImpl(new
+ // String[]{"Boo"});
+ // assertTrue("does not match element with Boo",ap.matches(ae2).
+ // alwaysFalse());
}
public void testAndAnnotationPatternMatching() {
- if (LangUtil.is15VMOrGreater()) {
- PatternParser p = new PatternParser("@Foo @Boo");
- AnnotationTypePattern ap = p.maybeParseAnnotationPattern();
- ap = ap.resolveBindings(makeSimpleScope(), new Bindings(3), true);
- AnnotatedElementImpl ae = new AnnotatedElementImpl(new String[] { "Foo", "Boo" });
- assertTrue("matches foo and boo", ap.matches(ae).alwaysTrue());
- ae = new AnnotatedElementImpl(new String[] { "Foo" });
- assertTrue("does not match foo", ap.matches(ae).alwaysFalse());
- ae = new AnnotatedElementImpl(new String[] { "Boo" });
- assertTrue("does not match boo", ap.matches(ae).alwaysFalse());
- ae = new AnnotatedElementImpl(new String[] { "Goo" });
- assertTrue("does not match goo", ap.matches(ae).alwaysFalse());
- }
+ PatternParser p = new PatternParser("@Foo @Boo");
+ AnnotationTypePattern ap = p.maybeParseAnnotationPattern();
+ ap = ap.resolveBindings(makeSimpleScope(), new Bindings(3), true);
+ AnnotatedElementImpl ae = new AnnotatedElementImpl(new String[] { "Foo", "Boo" });
+ assertTrue("matches foo and boo", ap.matches(ae).alwaysTrue());
+ ae = new AnnotatedElementImpl(new String[] { "Foo" });
+ assertTrue("does not match foo", ap.matches(ae).alwaysFalse());
+ ae = new AnnotatedElementImpl(new String[] { "Boo" });
+ assertTrue("does not match boo", ap.matches(ae).alwaysFalse());
+ ae = new AnnotatedElementImpl(new String[] { "Goo" });
+ assertTrue("does not match goo", ap.matches(ae).alwaysFalse());
}
//
@@ -318,15 +312,13 @@ public class AnnotationPatternTestCase extends TestCase {
// }
//
public void testNotAnnotationPatternMatching() {
- if (LangUtil.is15VMOrGreater()) {
- PatternParser p = new PatternParser("!@Foo");
- AnnotationTypePattern ap = p.maybeParseAnnotationPattern();
- ap = ap.resolveBindings(makeSimpleScope(), new Bindings(3), true);
- AnnotatedElementImpl ae = new AnnotatedElementImpl(new String[] { "Foo", "Boo" });
- assertTrue("does not match foo and boo", ap.matches(ae).alwaysFalse());
- ae = new AnnotatedElementImpl(new String[] { "Boo" });
- assertTrue("matches boo", ap.matches(ae).alwaysTrue());
- }
+ PatternParser p = new PatternParser("!@Foo");
+ AnnotationTypePattern ap = p.maybeParseAnnotationPattern();
+ ap = ap.resolveBindings(makeSimpleScope(), new Bindings(3), true);
+ AnnotatedElementImpl ae = new AnnotatedElementImpl(new String[] { "Foo", "Boo" });
+ assertTrue("does not match foo and boo", ap.matches(ae).alwaysFalse());
+ ae = new AnnotatedElementImpl(new String[] { "Boo" });
+ assertTrue("matches boo", ap.matches(ae).alwaysTrue());
}
public void testAnyAnnotationPatternMatching() {
diff --git a/weaver/src/test/java/org/aspectj/weaver/tools/PointcutDesignatorHandlerTest.java b/weaver/src/test/java/org/aspectj/weaver/tools/PointcutDesignatorHandlerTest.java
index 1ea33c465..8d910baf5 100644
--- a/weaver/src/test/java/org/aspectj/weaver/tools/PointcutDesignatorHandlerTest.java
+++ b/weaver/src/test/java/org/aspectj/weaver/tools/PointcutDesignatorHandlerTest.java
@@ -30,7 +30,6 @@ public class PointcutDesignatorHandlerTest extends TestCase {
/** this condition can occur on the build machine only, and is way too complex to fix right now... */
private boolean needToSkipPointcutParserTests() {
- if (!LangUtil.is15VMOrGreater()) return false;
try {
Class.forName("org.aspectj.weaver.reflect.Java15ReflectionBasedReferenceTypeDelegate",false,this.getClass().getClassLoader());//ReflectionBasedReferenceTypeDelegate.class.getClassLoader());
} catch (ClassNotFoundException cnfEx) {
diff --git a/weaver/src/test/java/org/aspectj/weaver/tools/PointcutExpressionTest.java b/weaver/src/test/java/org/aspectj/weaver/tools/PointcutExpressionTest.java
index ab7762525..d98d1e30e 100644
--- a/weaver/src/test/java/org/aspectj/weaver/tools/PointcutExpressionTest.java
+++ b/weaver/src/test/java/org/aspectj/weaver/tools/PointcutExpressionTest.java
@@ -448,11 +448,7 @@ public class PointcutExpressionTest extends TestCase {
assertFalse("Matches maybe", ex.matchesMethodExecution(foo).alwaysMatches());
// never match
ex = p.parsePointcutExpression("args(String,Integer,Number)");
- if (LangUtil.is15VMOrGreater()) {
- assertTrue("matches", ex.matchesMethodExecution(foo).alwaysMatches());
- } else {
- assertTrue("Does not match", ex.matchesMethodExecution(foo).neverMatches());
- }
+ assertTrue("matches", ex.matchesMethodExecution(foo).alwaysMatches());
}
// public void testMatchesDynamically() {
diff --git a/weaver/src/test/java/org/aspectj/weaver/tools/PointcutParserTest.java b/weaver/src/test/java/org/aspectj/weaver/tools/PointcutParserTest.java
index 46f841666..589fd6c9b 100644
--- a/weaver/src/test/java/org/aspectj/weaver/tools/PointcutParserTest.java
+++ b/weaver/src/test/java/org/aspectj/weaver/tools/PointcutParserTest.java
@@ -34,9 +34,6 @@ public class PointcutParserTest extends TestCase {
/** this condition can occur on the build machine only, and is way too complex to fix right now... */
private boolean needToSkipPointcutParserTests() {
- if (!LangUtil.is15VMOrGreater()) {
- return false;
- }
try {
Class.forName("org.aspectj.weaver.reflect.Java15ReflectionBasedReferenceTypeDelegate", false, this.getClass()
.getClassLoader());// ReflectionBasedReferenceTypeDelegate.class.getClassLoader());
diff --git a/weaver/src/test/java/org/aspectj/weaver/tools/TypePatternMatcherTest.java b/weaver/src/test/java/org/aspectj/weaver/tools/TypePatternMatcherTest.java
index 523ee4a83..0096b5482 100644
--- a/weaver/src/test/java/org/aspectj/weaver/tools/TypePatternMatcherTest.java
+++ b/weaver/src/test/java/org/aspectj/weaver/tools/TypePatternMatcherTest.java
@@ -25,7 +25,6 @@ public class TypePatternMatcherTest extends TestCase {
/** this condition can occur on the build machine only, and is way too complex to fix right now... */
private boolean needToSkipPointcutParserTests() {
- if (!LangUtil.is15VMOrGreater()) return false;
try {
Class.forName("org.aspectj.weaver.reflect.Java15ReflectionBasedReferenceTypeDelegate",false,this.getClass().getClassLoader());//ReflectionBasedReferenceTypeDelegate.class.getClassLoader());
} catch (ClassNotFoundException cnfEx) {