You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
28 lines
904 B
28 lines
904 B
package sample.reflect;
|
|
|
|
import javassist.tools.reflect.*;
|
|
|
|
public class VerboseMetaobj extends Metaobject {
|
|
public VerboseMetaobj(Object self, Object[] args) {
|
|
super(self, args);
|
|
System.out.println("** constructed: " + self.getClass().getName());
|
|
}
|
|
|
|
public Object trapFieldRead(String name) {
|
|
System.out.println("** field read: " + name);
|
|
return super.trapFieldRead(name);
|
|
}
|
|
|
|
public void trapFieldWrite(String name, Object value) {
|
|
System.out.println("** field write: " + name);
|
|
super.trapFieldWrite(name, value);
|
|
}
|
|
|
|
public Object trapMethodcall(int identifier, Object[] args)
|
|
throws Throwable {
|
|
System.out.println("** trap: " + getMethodName(identifier) + "() in "
|
|
+ getClassMetaobject().getName());
|
|
return super.trapMethodcall(identifier, args);
|
|
}
|
|
}
|