| java.lang.Object org.sape.carbon.core.util.reflection.GenericProxy
All known Subclasses: org.sape.carbon.services.jmx.server.mx4j.RemoteMBeanServerProxy, org.sape.carbon.core.component.proxy.DefaultComponentProxyInvocationHandler, org.sape.carbon.core.config.format.AbstractConfigurationProxy, org.sape.carbon.core.config.interceptor.DefaultConfigurationInterceptor,
GenericProxy | abstract public class GenericProxy implements InvocationHandler(Code) | | This generic implementation of a DynamicProxy
invocation handler will provide the basics of object method handling
for the methods hashCode, equals and toString. Any other method calls
will be forwarded to subclasses for implementation.
Invocation handlers wishing to provide specialized implementations of
the follow methods: { hashCode, toString, equals} should override those
versions of the methods defined in this class that start with the
key proxy .
Copyright 2002 Sapient
author: Greg Hinkle, December 2001 version: $Revision: 1.3 $($Author: dvoet $ / $Date: 2003/05/05 21:21:23 $) |
Method Summary | |
abstract protected Object | handleInvoke(Object proxy, Method m, Object[] args) This abstract method should be implemented to handle the specific
functionality for an invocation handler.
Parameters: proxy - the object that is being represented Parameters: m - the method descriptor for the method called Parameters: args - an array of arguments passed to that method throws: java.lang.Throwable - when there is an exception thrown from thedelegated method. | public Object | invoke(Object proxy, Method m, Object[] args) This method is called through by the JVM generated
DynamicProxy for all calls to the represented object.
This method then manages delegating those calls the
appropriate implementation. | protected Boolean | proxyEquals(Object proxy, Object other) This method implements the standard proxyEquals
method for subclassed invocation handler
dynamic proxies. | protected Integer | proxyHashCode(Object proxy) Implements the standard hashCode method with a
simple call to System.identityHashCode(). | protected String | proxyToString(Object proxy) |
handleInvoke | abstract protected Object handleInvoke(Object proxy, Method m, Object[] args) throws Throwable(Code) | | This abstract method should be implemented to handle the specific
functionality for an invocation handler.
Parameters: proxy - the object that is being represented Parameters: m - the method descriptor for the method called Parameters: args - an array of arguments passed to that method throws: java.lang.Throwable - when there is an exception thrown from thedelegated method. This may be a Checkedexception if the implemented interface declaresthe exception. Otherwise checked exceptions willbe automatically wrapped in anUndeclaredThrowableException .Runtime exceptions are thrown as is. the return value of the delegated method. |
invoke | public Object invoke(Object proxy, Method m, Object[] args) throws Throwable(Code) | | This method is called through by the JVM generated
DynamicProxy for all calls to the represented object.
This method then manages delegating those calls the
appropriate implementation. This implementation
specially handles the default Object
class methods and forwards all other method calls to
the abstract handleInvoke method.
Parameters: proxy - the object that is being represented Parameters: m - the method descriptor for the method called Parameters: args - an array of arguments passed to that method throws: java.lang.Throwable - when there is an exception thrown from thedelegated method. This may be a Checkedexception if the implemented interface declaresthe exception. Otherwise checked exceptions willbe automatically wrapped in anUndeclaredThrowableException .Runtime exceptions are thrown as is. the return value of the delegated method. |
proxyEquals | protected Boolean proxyEquals(Object proxy, Object other)(Code) | | This method implements the standard proxyEquals
method for subclassed invocation handler
dynamic proxies.
Parameters: proxy - the proxy object for which equals isbeing handled Parameters: other - the other object being compared too true if they are symantically equal,false otherwise |
proxyHashCode | protected Integer proxyHashCode(Object proxy)(Code) | | Implements the standard hashCode method with a
simple call to System.identityHashCode().
Parameters: proxy - the object for which a hashcode shouldbe returned the hash code of the provided object |
proxyToString | protected String proxyToString(Object proxy)(Code) | | Prints out a string representation of the proxy object in the
standard Java Object toString format of
<classname>@<hashcode>
Parameters: proxy - the proxy object to toString the String representation of the proxy object |
|
|