aboutsummaryrefslogtreecommitdiffstats
path: root/docs/modules/ROOT/examples/ltw
diff options
context:
space:
mode:
Diffstat (limited to 'docs/modules/ROOT/examples/ltw')
-rw-r--r--docs/modules/ROOT/examples/ltw/HelloWorld.java16
-rw-r--r--docs/modules/ROOT/examples/ltw/README42
-rw-r--r--docs/modules/ROOT/examples/ltw/Tracing.aj23
3 files changed, 81 insertions, 0 deletions
diff --git a/docs/modules/ROOT/examples/ltw/HelloWorld.java b/docs/modules/ROOT/examples/ltw/HelloWorld.java
new file mode 100644
index 000000000..1d44b8b82
--- /dev/null
+++ b/docs/modules/ROOT/examples/ltw/HelloWorld.java
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) 2004 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
+ *
+ * Contributors:
+ * Matthew Webster initial implementation
+ */
+public class HelloWorld {
+
+ public static void main (String[] args) {
+ System.out.println("Hello World!");
+ }
+}
diff --git a/docs/modules/ROOT/examples/ltw/README b/docs/modules/ROOT/examples/ltw/README
new file mode 100644
index 000000000..43868a2e2
--- /dev/null
+++ b/docs/modules/ROOT/examples/ltw/README
@@ -0,0 +1,42 @@
+
+For users of JDK 1.4 the bin directory of your AspectJ distribution
+contains a script "aj" to perform load-time weaving. Java classes on
+the CLASSPATH are loaded and woven with aspects also on the CLASSPATH
+which are declared in an aop.xml file. This file is either created by
+the user or generated by the compiler. Alternatively aspects can be
+loaded from an explicitly defined ASPECTPATH.
+
+For users of JDK 1.5 the bin directory of your AspectJ distribution
+contains a script "aj5" to perform load-time weaving using an agent.
+This uses an aop.xml as described above.
+
+--To compile the HelloWorld program--
+
+ ajc -outjar hello.jar HelloWorld.java
+
+--To compile the Tracing aspect--
+
+ ajc -outjar tracing.jar -outxml Tracing.aj
+
+--To run the example--
+
+ set CLASSPATH to include hello.jar
+
+ aj HelloWorld
+
+--To run the example with tracing--
+
+ set CLASSPATH to include "tracing.jar"
+
+ aj HelloWorld
+
+--To run the example with tracing using ASPECTPATH--
+
+ set ASPECTPATH=tracing.jar
+
+ aj HelloWorld
+
+--To run the example with tracing using an agent--
+
+ aj5 HelloWorld
+
diff --git a/docs/modules/ROOT/examples/ltw/Tracing.aj b/docs/modules/ROOT/examples/ltw/Tracing.aj
new file mode 100644
index 000000000..de20c5403
--- /dev/null
+++ b/docs/modules/ROOT/examples/ltw/Tracing.aj
@@ -0,0 +1,23 @@
+/*
+ * Copyright (c) 2004 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v 2.0
+ * which accompanies this distribution, and is available at
+ * https://www.eclipse.org/org/documents/epl-2.0/EPL-2.0.txt
+ *
+ * Contributors:
+ * Matthew Webster initial implementation
+ */
+public aspect Tracing {
+
+ private pointcut mainMethod () :
+ execution(public static void main(String[]));
+
+ before () : mainMethod() {
+ System.out.println("> " + thisJoinPoint);
+ }
+
+ after () : mainMethod() {
+ System.out.println("< " + thisJoinPoint);
+ }
+}