org.apache.commons.proxy.factory.util
Class AbstractSubclassingProxyFactory
java.lang.Object
org.apache.commons.proxy.ProxyFactory
org.apache.commons.proxy.factory.util.AbstractSubclassingProxyFactory
- Direct Known Subclasses:
- CglibProxyFactory, JavassistProxyFactory
public abstract class AbstractSubclassingProxyFactory
- extends ProxyFactory
A useful superclass for a ProxyFactory which supports subclassing rather than merely implementing interfaces.
- Since:
- 1.0
- Author:
- James Carman
|
Method Summary |
boolean |
canProxy(Class[] proxyClasses)
Returns true if a suitable superclass can be found, given the desired proxyClasses. |
static Class |
getSuperclass(Class[] proxyClasses)
Returns either Object if all of the proxyClasses are interfaces or the single non-interface
class from proxyClasses. |
protected static Class[] |
toInterfaces(Class[] proxyClasses)
Returns the proxyClasses transformed into an array of only the interface classes. |
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
AbstractSubclassingProxyFactory
public AbstractSubclassingProxyFactory()
toInterfaces
protected static Class[] toInterfaces(Class[] proxyClasses)
- Returns the
proxyClasses transformed into an array of only the interface classes.
- Parameters:
proxyClasses - the proxy classes
- Returns:
- the
proxyClasses transformed into an array of only the interface classes
canProxy
public boolean canProxy(Class[] proxyClasses)
- Returns true if a suitable superclass can be found, given the desired
proxyClasses.
- Overrides:
canProxy in class ProxyFactory
- Parameters:
proxyClasses - the proxy classes
- Returns:
- true if a suitable superclass can be found, given the desired
proxyClasses
getSuperclass
public static Class getSuperclass(Class[] proxyClasses)
- Returns either
Object if all of the proxyClasses are interfaces or the single non-interface
class from proxyClasses.
- Parameters:
proxyClasses - the proxy classes
- Returns:
- either
Object if all of the proxyClasses are interfaces or the single non-interface
class from proxyClasses
- Throws:
ProxyFactoryException - if multiple non-interface classes are contained in proxyClasses or any
of the non-interface classes are final
Copyright © 2005-2008 The Apache Software Foundation. All Rights Reserved.