Package org.eclipse.ecf.remoteservice
Class RemoteServiceHelper
java.lang.Object
org.eclipse.ecf.remoteservice.RemoteServiceHelper
Helper class for making it easier to call a remote service with method name and optional parameters.
- Since:
- 3.0
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic voidasyncExec(IRemoteService remoteService, String method, Object[] parameters, long timeout, IRemoteCallListener listener) Invoke given method asynchronously, and call listener upon successful completion.static voidasyncExec(IRemoteService remoteService, String method, Object[] parameters, IRemoteCallListener listener) Invoke given method asynchronously, and call listener upon successful completion.static org.eclipse.equinox.concurrent.future.IFuturefutureExec(IRemoteService remoteService, String method, Object[] parameters) Invoke given method asynchronously, return an IFuture immediately that can be subsequently queried for completion.static org.eclipse.equinox.concurrent.future.IFuturefutureExec(IRemoteService remoteService, String method, Object[] parameters, long timeout) Invoke given method asynchronously, return an IFuture immediately that can be subsequently queried for completion.static longstatic voidsetDefaultTimeout(long timeout) static ObjectsyncExec(IRemoteService remoteService, String method, Object[] parameters) Invoke given method synchronously, blocking the calling thread until a result is received or timeout.static ObjectsyncExec(IRemoteService remoteService, String method, Object[] parameters, long timeout) Invoke given method synchronously, blocking the calling thread until a result is received or timeout.
-
Field Details
-
defaultTimeout
public static long defaultTimeout -
EMPTY_PARAMS
-
-
Constructor Details
-
RemoteServiceHelper
public RemoteServiceHelper()
-
-
Method Details
-
getDefaultTimeout
public static long getDefaultTimeout() -
setDefaultTimeout
public static void setDefaultTimeout(long timeout) -
asyncExec
public static void asyncExec(IRemoteService remoteService, String method, Object[] parameters, IRemoteCallListener listener) Invoke given method asynchronously, and call listener upon successful completion. Uses default timeout.- Parameters:
remoteService- the IRemoteService to invoke. Must not benull.method- the method to invoke. Must not benull.parameters- the parameters associated with the method to invoke. May benull(no parameters).listener- the listener to call back when remote call initiated and completed. Must not benull.
-
asyncExec
public static void asyncExec(IRemoteService remoteService, String method, Object[] parameters, long timeout, IRemoteCallListener listener) Invoke given method asynchronously, and call listener upon successful completion.- Parameters:
remoteService- the IRemoteService to invoke. Must not benull.method- the method to invoke. Must not benull.parameters- the parameters associated with the method to invoke. May benull(no parameters).timeout- the timeout (in ms) for the remote call.listener- the listener to call back when remote call initiated and completed. Must not benull.
-
futureExec
public static org.eclipse.equinox.concurrent.future.IFuture futureExec(IRemoteService remoteService, String method, Object[] parameters, long timeout) Invoke given method asynchronously, return an IFuture immediately that can be subsequently queried for completion.- Parameters:
remoteService- the IRemoteService to invoke. Must not benull.method- the method to invoke. Must not benull.parameters- the parameters associated with the method to invoke. May benull(no parameters).timeout- the timeout (in ms) for the remote call.- Returns:
- IFuture the future created
-
futureExec
public static org.eclipse.equinox.concurrent.future.IFuture futureExec(IRemoteService remoteService, String method, Object[] parameters) Invoke given method asynchronously, return an IFuture immediately that can be subsequently queried for completion. Uses default timeout.- Parameters:
remoteService- the IRemoteService to invoke. Must not benull.method- the method to invoke. Must not benull.parameters- the parameters associated with the method to invoke. May benull(no parameters).- Returns:
- IFuture the future created
-
syncExec
public static Object syncExec(IRemoteService remoteService, String method, Object[] parameters, long timeout) throws ECFException Invoke given method synchronously, blocking the calling thread until a result is received or timeout.- Parameters:
remoteService- the IRemoteService to invoke. Must not benull.method- the method to invoke. Must not benull.parameters- the parameters associated with the method to invoke. May benull(no parameters).timeout- the timeout (in ms) for the remote call.- Returns:
- Object the result of this synchronous execution
- Throws:
ECFException- if some problem with execution
-
syncExec
public static Object syncExec(IRemoteService remoteService, String method, Object[] parameters) throws ECFException Invoke given method synchronously, blocking the calling thread until a result is received or timeout. Uses default timeout.- Parameters:
remoteService- the IRemoteService to invoke. Must not benull.method- the method to invoke. Must not benull.parameters- the parameters associated with the method to invoke. May benull(no parameters).- Returns:
- Object the result of this synchronous execution
- Throws:
ECFException- if some problem with execution
-