/** * Returns a string representation for a proxy that uses this invocation * handler. **/ @Override protected String proxyToString(final Object proxy) { return "EJBHomeProxy[" + super.proxyToString(proxy) + ", remoteClass:" + remoteClass.getName() + ", ejbMetada:" + ejbMetaData + "]"; }
/** * Returns a string representation for a proxy that uses this invocation * handler. **/ @Override protected String proxyToString(final Object proxy) { return "HAEJBObjectProxy[" + super.proxyToString(proxy) + ", homeClass:" + homeClass.getName() + ", ejbHomeProxy:" + ejbHomeProxy + ", sessionId:" + sessionId + ", requestNb:" + requestNb + ", createMethodWrapper:" + createMethodWrapper + ", onFailover:" + onFailover + "]"; }
/** * Handles java.lang.Object methods. **/ private Object invokeObjectMethod(final Object proxy, final Method method, final Object... args) { String name = method.getName(); if (name.equals("hashCode")) { return Integer.valueOf(hashCode()); } else if (name.equals("equals")) { Object obj = args[0]; boolean b = proxy == obj || (obj != null && Proxy.isProxyClass(obj.getClass()) && equals(Proxy.getInvocationHandler(obj))); return Boolean.valueOf(b); } else if (name.equals("toString")) { return proxyToString(proxy); } else { logger.error("unexpected Object method: {0}", method); throw new IllegalArgumentException("unexpected Object method: " + method); } }