12345678910111213141516171819202122232425262728293031323334353637 |
- import java.io.Serializable;
-
- abstract aspect Trace {
- abstract pointcut targets();
-
- /*
- * toString() can throw exceptions, so we'll print
- * the java.lang.Class instead.
- */
-
- before (): targets() {
- System.out.println("entering " + thisJoinPoint);
- }
- after (): targets() {
- System.out.println("exiting " +
- thisJoinPointStaticPart);
- }
-
- after () throwing (Throwable t): targets() {
- System.out.println("throwing " + t);
- }
-
- after () throwing (java.io.IOException ioe): targets() {
- System.out.println("throwing " + ioe);
- }
-
- after () returning (Object o): targets() {
- System.out.println("returning " + (o!=null ? o.getClass() : null));
- }
-
-
- private static int initCounter() {
- return 0;
- }
-
- //private int Serializable.counter = initCounter();
- }
|