spin
Class ProxyFactory
public abstract class ProxyFactory
extends java.lang.Object
A factory of proxies which intercept invocations, using Evaluators to
evaluate them.
protected abstract boolean | areProxyEqual(Object proxy1, Object proxy2) - Test if the given proxies of this factory are intercepting the same
object.
|
abstract Object | createProxy(Object object, Evaluator evaluator) - Create a proxy for the given object that evaluates invocations with the
given evaluator.
|
protected Object | evaluteInvocation(Evaluator evaluator, Object proxy, Invocation invocation) - Evaluate the given invocation with the given evaluator.
|
abstract boolean | isProxy(Object object) - Test if the given object is a proxy created by this factory.
|
areProxyEqual
protected abstract boolean areProxyEqual(Object proxy1,
Object proxy2)
Test if the given proxies of this factory are intercepting the same
object.
proxy1
- first proxyproxy2
- second proxy
- true if both proxies are intercepting the same object
createProxy
public abstract Object createProxy(Object object,
Evaluator evaluator)
Create a proxy for the given object that evaluates invocations with the
given evaluator.
object
- object to create proxy forevaluator
- evaluator to evaluate invocations with
evaluteInvocation
protected Object evaluteInvocation(Evaluator evaluator,
Object proxy,
Invocation invocation)
throws Throwable
Evaluate the given invocation with the given evaluator.
evaluator
- evaluator to evaluate withproxy
- proxy that intcepted the invocationinvocation
- the invocation to evaluate
isProxy
public abstract boolean isProxy(Object object)
Test if the given object is a proxy created by this factory.
true
if given object is a Spin proxy,
false
otherwise