diff options
author | mwebster <mwebster> | 2006-08-01 20:41:52 +0000 |
---|---|---|
committer | mwebster <mwebster> | 2006-08-01 20:41:52 +0000 |
commit | bebb3640698bf2c465b64d9565123ec699dac45d (patch) | |
tree | 01f62d8a964a8125b31a85c6c84b43a3cdc130ee /tests/java5 | |
parent | a89eac7f94cbea34f2ca76e49a1c42a594194080 (diff) | |
download | aspectj-bebb3640698bf2c465b64d9565123ec699dac45d.tar.gz aspectj-bebb3640698bf2c465b64d9565123ec699dac45d.zip |
Bug 151938 "Handle Duplicate -javaagent entries more gracefully" (ignore duplicate agents)
Diffstat (limited to 'tests/java5')
-rw-r--r-- | tests/java5/ataspectj/Aspect.aj | 5 | ||||
-rw-r--r-- | tests/java5/ataspectj/HelloWorld.java | 7 | ||||
-rw-r--r-- | tests/java5/ataspectj/MessageHandler.java | 27 | ||||
-rw-r--r-- | tests/java5/ataspectj/ajc-ant.xml | 19 | ||||
-rw-r--r-- | tests/java5/ataspectj/aop-messagehandler.xml | 3 |
5 files changed, 61 insertions, 0 deletions
diff --git a/tests/java5/ataspectj/Aspect.aj b/tests/java5/ataspectj/Aspect.aj new file mode 100644 index 000000000..03a4403a3 --- /dev/null +++ b/tests/java5/ataspectj/Aspect.aj @@ -0,0 +1,5 @@ +public aspect Aspect { + before () : execution(public static void main(String[])) { + System.out.println(thisJoinPoint); + } +}
\ No newline at end of file diff --git a/tests/java5/ataspectj/HelloWorld.java b/tests/java5/ataspectj/HelloWorld.java new file mode 100644 index 000000000..58cd14253 --- /dev/null +++ b/tests/java5/ataspectj/HelloWorld.java @@ -0,0 +1,7 @@ +public class HelloWorld { + + public static void main (String[] args) { + System.out.println("Hello World!"); + } + +}
\ No newline at end of file diff --git a/tests/java5/ataspectj/MessageHandler.java b/tests/java5/ataspectj/MessageHandler.java new file mode 100644 index 000000000..111b32fc0 --- /dev/null +++ b/tests/java5/ataspectj/MessageHandler.java @@ -0,0 +1,27 @@ +import org.aspectj.bridge.AbortException; +import org.aspectj.bridge.IMessage; +import org.aspectj.bridge.IMessageHandler; +import org.aspectj.bridge.IMessage.Kind; + +public class MessageHandler implements IMessageHandler { + + public boolean handleMessage(IMessage message) throws AbortException { + System.out.println(message); + if (message.getKind() == IMessage.ERROR) { + System.exit(-1); + } + else if (message.getKind() == IMessage.ABORT) { + throw new AbortException(message.toString()); + } + return true; + } + + public boolean isIgnoring(IMessage.Kind kind) { + return false; + } + + public void dontIgnore(IMessage.Kind kind) { + + } + +}
\ No newline at end of file diff --git a/tests/java5/ataspectj/ajc-ant.xml b/tests/java5/ataspectj/ajc-ant.xml index 695e8ac07..8dccebac7 100644 --- a/tests/java5/ataspectj/ajc-ant.xml +++ b/tests/java5/ataspectj/ajc-ant.xml @@ -221,4 +221,23 @@ </java> </target> + <target name="Duplicate JVMTI agents"> + <copy file="${aj.root}/tests/java5/ataspectj/aop-messagehandler.xml" + tofile="${aj.sandbox}/META-INF/aop.xml"/> + <java fork="yes" classname="HelloWorld" failonerror="yes"> + <classpath refid="aj.path"/> + <!-- use META-INF/aop.xml style --> + <classpath> + <pathelement path="${aj.sandbox}/aspects.jar"/> + </classpath> + <jvmarg value="-javaagent:${aj.root}/lib/test/loadtime5.jar"/> +<!-- +--> + <jvmarg value="-javaagent:${aj.root}/lib/test/loadtime5.jar"/> + <jvmarg value="-Daj.weaving.verbose=true"/> + <jvmarg value="-Djava.util.logging.config.file=${aj.root}/weaver5/testdata/logging.properties"/> +<!-- <jvmarg line="${jdwp}"/>--> + </java> + </target> + </project>
\ No newline at end of file diff --git a/tests/java5/ataspectj/aop-messagehandler.xml b/tests/java5/ataspectj/aop-messagehandler.xml new file mode 100644 index 000000000..9d7c34be0 --- /dev/null +++ b/tests/java5/ataspectj/aop-messagehandler.xml @@ -0,0 +1,3 @@ +<aspectj> + <weaver options="-XmessageHandlerClass:MessageHandler"/> +</aspectj>
\ No newline at end of file |