org.apache.tuscany.sca.core.invocation
Interface ProxyFactory

All Known Implementing Classes:
CglibProxyFactory, ExtensibleProxyFactory, JDKProxyFactory

public interface ProxyFactory

Creates proxies that implement Java interfaces and invocation handlers for fronting wires


Method Summary
<B,R extends org.osoa.sca.CallableReference<B>>
R
cast(B target)
          Cast a proxy to a CallableReference.
<T> T
createCallbackProxy(CallbackReferenceImpl<T> callbackReference)
          Creates a Java proxy for the given callback reference
<T> T
createCallbackProxy(java.lang.Class<T> interfaze, java.util.List<RuntimeWire> wires)
          Creates a Java proxy for the service contract callback
<T> T
createProxy(org.osoa.sca.CallableReference<T> callableReference)
          Creates a Java proxy for the given CallableReference
<T> T
createProxy(java.lang.Class<T> interfaze, RuntimeWire wire)
          Creates a Java proxy for the given wire
 boolean isProxyClass(java.lang.Class<?> clazz)
          Test if a given class is a generated proxy class by this factory
 

Method Detail

createProxy

<T> T createProxy(java.lang.Class<T> interfaze,
                  RuntimeWire wire)
              throws ProxyCreationException
Creates a Java proxy for the given wire

Parameters:
interfaze - the interface the proxy implements
wire - the wire to proxy
Returns:
the proxy
Throws:
ProxyCreationException

createProxy

<T> T createProxy(org.osoa.sca.CallableReference<T> callableReference)
              throws ProxyCreationException
Creates a Java proxy for the given CallableReference

Parameters:
callableReference - The CallableReference
Returns:
the proxy
Throws:
ProxyCreationException

createCallbackProxy

<T> T createCallbackProxy(java.lang.Class<T> interfaze,
                          java.util.List<RuntimeWire> wires)
                      throws ProxyCreationException
Creates a Java proxy for the service contract callback

Parameters:
interfaze - the interface the proxy should implement
Returns:
the proxy
Throws:
ProxyCreationException

createCallbackProxy

<T> T createCallbackProxy(CallbackReferenceImpl<T> callbackReference)
                      throws ProxyCreationException
Creates a Java proxy for the given callback reference

Parameters:
callableReference - The CallableReference
Returns:
the proxy
Throws:
ProxyCreationException

cast

<B,R extends org.osoa.sca.CallableReference<B>> R cast(B target)
                                                 throws java.lang.IllegalArgumentException
Cast a proxy to a CallableReference.

Parameters:
target - a proxy generated by this implementation
Returns:
a CallableReference (or subclass) equivalent to this proxy
Throws:
java.lang.IllegalArgumentException - if the object supplied is not a proxy

isProxyClass

boolean isProxyClass(java.lang.Class<?> clazz)
Test if a given class is a generated proxy class by this factory

Parameters:
clazz - A java class or interface
Returns:
true if the class is a generated proxy class by this factory