Example #1
0
  public Object invoke(Object proxy, Method method, Object[] args) throws Throwable {
    if (objectMethodsGuru.isEqualsMethod(method)) {
      return proxy == args[0];
    } else if (objectMethodsGuru.isHashCodeMethod(method)) {
      return System.identityHashCode(proxy);
    }

    ProxiedMethod proxiedMethod = new ProxiedMethod(method);
    return handler.handle(
        new InvocationImpl(proxy, proxiedMethod, args, SequenceNumber.next(), proxiedMethod));
  }