use of org.eclipse.ecf.remoteservice.client.IRemoteCallParameter in project ecf by eclipse.
the class RestPutServiceTest method setUp.
@Override
protected void setUp() throws Exception {
super.setUp();
// Create container for service URI
container = createRestContainer(uri);
// Get adapter and set authentication info
IRemoteServiceClientContainerAdapter adapter = (IRemoteServiceClientContainerAdapter) getRemoteServiceClientContainerAdapter(container);
// Setup authentication
adapter.setConnectContextForAuthentication(ConnectContextFactory.createUsernamePasswordConnectContext(username, password));
// Setup response deserializer to do absolutely nothing (return null). Note this is specific to this service.
adapter.setResponseDeserializer(new IRemoteResponseDeserializer() {
public Object deserializeResponse(String endpoint, IRemoteCall call, IRemoteCallable callable, Map responseHeaders, byte[] responseBody) throws NotSerializableException {
return null;
}
});
// Create callable and register
IRemoteCallable callable = RestCallableFactory.createCallable(method, resourcePath, new IRemoteCallParameter[] { new RemoteCallParameter("body") }, new HttpPutRequestType(HttpPutRequestType.STRING_REQUEST_ENTITY, "application/xml", -1, "UTF-8"));
// register callable
registration = adapter.registerCallables(new IRemoteCallable[] { callable }, null);
}
use of org.eclipse.ecf.remoteservice.client.IRemoteCallParameter in project ecf by eclipse.
the class RpcRemoteServiceTest method setUp.
protected void setUp() throws Exception {
container = createRpcContainer(RpcConstants.TEST_ECHO_TARGET);
IRemoteCallable callableEcho = RemoteCallableFactory.createCallable(RpcConstants.TEST_ECHO_METHOD_NAME, RpcConstants.TEST_ECHO_METHOD, new IRemoteCallParameter[] { new RemoteCallParameter(RpcConstants.TEST_ECHO_METHOD_PARAM) });
registrationEcho = registerCallable(container, callableEcho, null);
IRemoteCallable callableEchoProxy = RemoteCallableFactory.createCallable(IEcho.class.getName());
registrationEchoProxy = registerCallable(container, callableEchoProxy, null);
IRemoteCallable callableCalc = RemoteCallableFactory.createCallable(RpcConstants.TEST_CALC_PLUS_METHOD_NAME, RpcConstants.TEST_CALC_PLUS_METHOD, new IRemoteCallParameter[] { new RemoteCallParameter(RpcConstants.TEST_CALC_PLUS_METHOD_PARAM1), new RemoteCallParameter(RpcConstants.TEST_CALC_PLUS_METHOD_PARAM2) });
registrationCalc = registerCallable(container, callableCalc, null);
}
use of org.eclipse.ecf.remoteservice.client.IRemoteCallParameter in project ecf by eclipse.
the class TwitterRemoteServiceTest method setUp.
protected void setUp() throws Exception {
// Create container
container = createRestContainer(RestConstants.TEST_TWITTER_TARGET);
// Get adapter
IRemoteServiceClientContainerAdapter adapter = (IRemoteServiceClientContainerAdapter) getRemoteServiceClientContainerAdapter(container);
// Setup authentication info
adapter.setConnectContextForAuthentication(ConnectContextFactory.createUsernamePasswordConnectContext(username, password));
// Setup resource handler
adapter.setResponseDeserializer(createRestResource());
// Create and register callable to register service
IRemoteCallParameter[] parameters1 = RemoteCallParameterFactory.createParameters("count", null);
// Setup callable
IRemoteCallable callable1 = RestCallableFactory.createCallable("getUserStatuses", "/statuses/user_timeline.json", parameters1);
IRemoteCallParameter[] parameters2 = RemoteCallParameterFactory.createParameters("body", null);
HttpPostRequestType requestType2 = new HttpPostRequestType(HttpPostRequestType.STRING_REQUEST_ENTITY);
IRemoteCallable callable2 = RestCallableFactory.createCallable("postMethodString", "/statuses/user_timeline.json", parameters2, requestType2);
IRemoteCallParameter[] parameters3 = RemoteCallParameterFactory.createParameters("body", null);
HttpPostRequestType requestType3 = new HttpPostRequestType(HttpPostRequestType.INPUT_STREAM_REQUEST_ENTITY);
IRemoteCallable callable3 = RestCallableFactory.createCallable("postMethodInputStream", "/statuses/user_timeline.json", parameters3, requestType3);
IRemoteCallParameter[] parameters4 = RemoteCallParameterFactory.createParameters("body", null);
HttpPostRequestType requestType4 = new HttpPostRequestType(HttpPostRequestType.BYTEARRAY_REQUEST_ENTITY);
IRemoteCallable callable4 = RestCallableFactory.createCallable("postMethodByteArray", "/statuses/user_timeline.json", parameters4, requestType4);
registration = adapter.registerCallables(new String[] { IUserTimeline.class.getName() }, new IRemoteCallable[][] { { callable1, callable2, callable3, callable4 } }, null);
}
use of org.eclipse.ecf.remoteservice.client.IRemoteCallParameter in project ecf by eclipse.
the class TwitterRemoteServiceTest method testSyncCallWithCountParameter.
public void testSyncCallWithCountParameter() {
IRemoteService restClientService = getRemoteServiceClientContainerAdapter(container).getRemoteService(registration.getReference());
try {
Object result = restClientService.callSync(RestCallFactory.createRestCall(IUserTimeline.class.getName() + ".getUserStatuses", new IRemoteCallParameter[] { new RemoteCallParameter("count", "1") }));
assertNotNull(result);
assertTrue(result instanceof IUserStatus[]);
assertTrue(((IUserStatus[]) result).length == 1);
} catch (ECFException e) {
fail("Could not contact the service");
}
}
Aggregations