|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES All Classes | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.commons.proxy.ProxyFactory
public class ProxyFactory
A ProxyFactory
can be used to create three different "flavors" of proxy objects.
ObjectProvider
Interceptor
Invoker
to handle all method invocationsOriginally, the ProxyFactory class was an interface. However, to allow for future changes to the class without breaking binary or semantic compatibility, it has been changed to a concrete class.
Note: This class uses Java reflection. For more efficient proxies, try using either
CglibProxyFactory
or
JavassistProxyFactory
instead.
Constructor Summary | |
---|---|
ProxyFactory()
|
Method Summary | |
---|---|
boolean |
canProxy(Class[] proxyClasses)
Returns true if all proxyClasses are interfaces. |
Object |
createDelegatorProxy(ClassLoader classLoader,
ObjectProvider delegateProvider,
Class[] proxyClasses)
Creates a proxy which delegates to the object provided by delegateProvider . |
Object |
createDelegatorProxy(ObjectProvider delegateProvider,
Class[] proxyClasses)
Creates a proxy which delegates to the object provided by delegateProvider . |
Object |
createInterceptorProxy(ClassLoader classLoader,
Object target,
Interceptor interceptor,
Class[] proxyClasses)
Creates a proxy which passes through a interceptor before eventually reaching the
target object. |
Object |
createInterceptorProxy(Object target,
Interceptor interceptor,
Class[] proxyClasses)
Creates a proxy which passes through a interceptor before eventually reaching the
target object. |
Object |
createInvokerProxy(ClassLoader classLoader,
Invoker invoker,
Class[] proxyClasses)
Creates a proxy which uses the provided Invoker to handle all method invocations. |
Object |
createInvokerProxy(Invoker invoker,
Class[] proxyClasses)
Creates a proxy which uses the provided Invoker to handle all method invocations. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public ProxyFactory()
Method Detail |
---|
public boolean canProxy(Class[] proxyClasses)
proxyClasses
are interfaces.
proxyClasses
- the proxy classes
proxyClasses
are interfacespublic Object createDelegatorProxy(ObjectProvider delegateProvider, Class[] proxyClasses)
delegateProvider
. The proxy will be
generated using the current thread's "context class loader."
delegateProvider
- the delegate providerproxyClasses
- the interfaces that the proxy should implement
public Object createDelegatorProxy(ClassLoader classLoader, ObjectProvider delegateProvider, Class[] proxyClasses)
delegateProvider
.
classLoader
- the class loader to use when generating the proxydelegateProvider
- the delegate providerproxyClasses
- the interfaces that the proxy should implement
delegateProvider>
createInterceptorProxy
public Object createInterceptorProxy(Object target,
Interceptor interceptor,
Class[] proxyClasses)
- Creates a proxy which passes through a
interceptor
before eventually reaching the
target
object. The proxy will be generated using the current thread's "context class loader."
- Parameters:
target
- the target objectinterceptor
- the method interceptorproxyClasses
- the interfaces that the proxy should implement
- Returns:
- a proxy which passes through a
interceptor
before eventually reaching the
target
object.
createInterceptorProxy
public Object createInterceptorProxy(ClassLoader classLoader,
Object target,
Interceptor interceptor,
Class[] proxyClasses)
- Creates a proxy which passes through a
interceptor
before eventually reaching the
target
object.
- Parameters:
classLoader
- the class loader to use when generating the proxytarget
- the target objectinterceptor
- the method interceptorproxyClasses
- the interfaces that the proxy should implement.
- Returns:
- a proxy which passes through a
interceptor
before eventually reaching the
target
object.
createInvokerProxy
public Object createInvokerProxy(Invoker invoker,
Class[] proxyClasses)
- Creates a proxy which uses the provided
Invoker
to handle all method invocations. The proxy will be
generated using the current thread's "context class loader."
- Parameters:
invoker
- the invokerproxyClasses
- the interfaces that the proxy should implement
- Returns:
- a proxy which uses the provided
Invoker
to handle all method invocations
createInvokerProxy
public Object createInvokerProxy(ClassLoader classLoader,
Invoker invoker,
Class[] proxyClasses)
- Creates a proxy which uses the provided
Invoker
to handle all method invocations.
- Parameters:
classLoader
- the class loader to use when generating the proxyinvoker
- the invokerproxyClasses
- the interfaces that the proxy should implement
- Returns:
- a proxy which uses the provided
Invoker
to handle all method invocations
Overview
Package
Class
Use
Tree
Deprecated
Index
Help
PREV CLASS
NEXT CLASS
FRAMES
NO FRAMES
All Classes
SUMMARY: NESTED | FIELD | CONSTR | METHOD
DETAIL: FIELD | CONSTR | METHOD
Copyright © 2005-2008 The Apache Software Foundation. All Rights Reserved.