public class ServiceInvocationContext
extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected java.util.List<java.util.List<java.lang.Object>> |
arguments
The invocation arguments.
|
protected IComponentIdentifier |
caller
The caller component.
|
protected static java.util.Map<IComponentIdentifier,java.util.Map<java.lang.reflect.Method,java.lang.Integer>> |
calls
Service calls per method, calculated separately per platform.
|
protected ServiceCall |
currentcall
The current service call (to be reestablished after call).
|
protected IServiceInvocationInterceptor[] |
interceptors
The service interceptors.
|
protected java.util.List<java.lang.reflect.Method> |
method
The method to be called.
|
protected ServiceCall |
nextcall
The next service call (will be current during call and last after call).
|
protected java.util.List<java.lang.Object> |
object
The object.
|
protected IComponentIdentifier |
platform
The platform identifier.
|
static long |
PRINT_DELAY
Print every 10 seconds.
|
static boolean |
PROFILING
Enable call profiling.
|
protected java.lang.Object |
proxy
The origin (proxy object).
|
protected java.util.List<java.lang.Object> |
result
The call result.
|
static java.lang.ThreadLocal<ServiceInvocationContext> |
SICS |
protected IServiceIdentifier |
sid |
protected java.util.List<java.lang.Integer> |
used
The stack of used interceptors.
|
Constructor and Description |
---|
ServiceInvocationContext(java.lang.Object proxy,
java.lang.reflect.Method method,
IServiceInvocationInterceptor[] interceptors,
IComponentIdentifier platform,
IServiceIdentifier sid)
Create a new context.
|
ServiceInvocationContext(ServiceInvocationContext context)
Create a copied context.
|
Modifier and Type | Method and Description |
---|---|
java.lang.Object[] |
getArgumentArray()
Get the args.
|
java.util.List<java.lang.Object> |
getArguments()
Get the args.
|
IComponentIdentifier |
getCaller()
Get the caller.
|
ServiceCall |
getCurrentServiceCall()
Get the last service call.
|
java.lang.reflect.Method |
getMethod()
Get the method.
|
IServiceInvocationInterceptor |
getNextInterceptor()
Get the next interceptor.
|
ServiceCall |
getNextServiceCall()
Get the service call.
|
java.lang.Object |
getObject()
Get the object.
|
java.lang.Object |
getProxy()
Get the proxy.
|
java.lang.Object |
getResult()
Get the result.
|
IServiceIdentifier |
getServiceIdentifier()
Get the service id.
|
java.lang.Object |
getTargetObject()
Get the real target object.
|
IFuture<java.lang.Void> |
invoke()
Invoke the next interceptor.
|
IFuture<java.lang.Void> |
invoke(java.lang.Object object,
java.lang.reflect.Method method,
java.util.List<java.lang.Object> args)
Invoke the next interceptor.
|
boolean |
isRemoteCall()
Test if a call is remote.
|
protected void |
pop()
Pop delete the top most set of values.
|
protected void |
push(java.lang.Object o,
java.lang.reflect.Method m,
java.util.List<java.lang.Object> args,
java.lang.Object res)
Push saves and copies the current set of values.
|
void |
setArguments(java.util.List<java.lang.Object> args)
Set the arguments.
|
void |
setMethod(java.lang.reflect.Method method)
Set the method.
|
void |
setNextCall(ServiceCall call)
Set the lastcall.
|
void |
setObject(java.lang.Object object)
Set the object.
|
void |
setProxy(java.lang.Object proxy)
Set the proxy.
|
void |
setResult(java.lang.Object result)
Set the result.
|
void |
setServiceIdentifier(IServiceIdentifier sid)
Set the service id.
|
java.lang.String |
toString()
String representation.
|
public static final java.lang.ThreadLocal<ServiceInvocationContext> SICS
public static final boolean PROFILING
public static final long PRINT_DELAY
protected static java.util.Map<IComponentIdentifier,java.util.Map<java.lang.reflect.Method,java.lang.Integer>> calls
protected java.lang.Object proxy
protected java.util.List<java.lang.Object> object
protected java.util.List<java.lang.reflect.Method> method
protected java.util.List<java.util.List<java.lang.Object>> arguments
protected java.util.List<java.lang.Object> result
protected IServiceInvocationInterceptor[] interceptors
protected java.util.List<java.lang.Integer> used
protected ServiceCall nextcall
protected ServiceCall currentcall
protected IComponentIdentifier caller
protected IComponentIdentifier platform
protected IServiceIdentifier sid
public ServiceInvocationContext(java.lang.Object proxy, java.lang.reflect.Method method, IServiceInvocationInterceptor[] interceptors, IComponentIdentifier platform, IServiceIdentifier sid)
public ServiceInvocationContext(ServiceInvocationContext context)
public java.lang.Object getProxy()
public void setProxy(java.lang.Object proxy)
proxy
- The proxy to set.public java.lang.Object getObject()
public void setObject(java.lang.Object object)
object
- The object to set.public java.lang.reflect.Method getMethod()
public void setMethod(java.lang.reflect.Method method)
method
- The method to set.public java.util.List<java.lang.Object> getArguments()
public java.lang.Object[] getArgumentArray()
public void setArguments(java.util.List<java.lang.Object> args)
args
- The arguments to set.public java.lang.Object getResult()
public void setResult(java.lang.Object result)
result
- The result to set.public IFuture<java.lang.Void> invoke(java.lang.Object object, java.lang.reflect.Method method, java.util.List<java.lang.Object> args)
public IServiceInvocationInterceptor getNextInterceptor()
public IFuture<java.lang.Void> invoke()
protected void push(java.lang.Object o, java.lang.reflect.Method m, java.util.List<java.lang.Object> args, java.lang.Object res)
protected void pop()
public boolean isRemoteCall()
public java.lang.Object getTargetObject()
public IComponentIdentifier getCaller()
public java.lang.String toString()
toString
in class java.lang.Object
public ServiceCall getNextServiceCall()
public ServiceCall getCurrentServiceCall()
public void setNextCall(ServiceCall call)
currentcall
- The lastcall to set.public IServiceIdentifier getServiceIdentifier()
public void setServiceIdentifier(IServiceIdentifier sid)