Slide 24
Slide 24 text
WatcherHandler
static class WatcherHandler implements InvocationHandler {
private final Class clazz;
WatcherHandler(Class clazz) {
this.clazz = clazz;
}
@Override
public Object invoke(Object proxy, Method method,
Object[] args) throws Throwable {
if (method.getDeclaringClass() == Object.class) {
return method.invoke(this, args);
}
instance.trigger(clazz, method, args);
return null;
}
}
static class WatcherHandler implements InvocationHandler {
private final Class clazz;
WatcherHandler(Class clazz) {
this.clazz = clazz;
}
@Override
public Object invoke(Object proxy, Method method,
Object[] args) throws Throwable {
if (method.getDeclaringClass() == Object.class) {
return method.invoke(this, args);
}
instance.trigger(clazz, method, args);
return null;
}
}
EventBus