private <T> Future<T> handle(final Class<T> c, final ClientRequest request) { setProperties(request); final FutureClientResponseListener<T> ftw = new FutureClientResponseListener<T>() { protected T get(ClientResponse response) { if (c == ClientResponse.class) return c.cast(response); if (response.getStatus() < 300) return response.getEntity(c); throw new UniformInterfaceException(response, request.getPropertyAsFeature(ClientConfig.PROPERTY_BUFFER_RESPONSE_ENTITY_ON_EXCEPTION, true)); } }; ftw.setCancelableFuture(handle(request, ftw)); return ftw; }
private <T> Future<T> handle(final Class<T> c, final ClientRequest request) { setProperties(request); final FutureClientResponseListener<T> ftw = new FutureClientResponseListener<T>() { protected T get(ClientResponse response) { if (c == ClientResponse.class) return c.cast(response); if (response.getStatus() < 300) return response.getEntity(c); throw new UniformInterfaceException(response, request.getPropertyAsFeature(ClientConfig.PROPERTY_BUFFER_RESPONSE_ENTITY_ON_EXCEPTION, true)); } }; ftw.setCancelableFuture(handle(request, ftw)); return ftw; }
public <T> Future<T> options(GenericType<T> gt) { return handle(gt, new ClientRequestImpl(getURI(), "OPTIONS")); }
public <T> Future<T> get(ITypeListener<T> l) { return handle(l, new ClientRequestImpl(getURI(), "GET")); }
public <T> Future<T> put(ITypeListener<T> l, Object requestEntity) { return handle(l, new ClientRequestImpl(getURI(), "PUT", requestEntity)); }
public <T> Future<T> post(GenericType<T> gt, Object requestEntity) throws UniformInterfaceException { return handle(gt, new ClientRequestImpl(getURI(), "POST", requestEntity)); }
private <T> Future<T> handle(final GenericType<T> gt, final ClientRequest request) { setProperties(request); final FutureClientResponseListener<T> ftw = new FutureClientResponseListener<T>() { protected T get(ClientResponse response) { if (gt.getRawClass() == ClientResponse.class) return gt.getRawClass().cast(response); if (response.getStatus() < 300) return response.getEntity(gt); throw new UniformInterfaceException(response, request.getPropertyAsFeature(ClientConfig.PROPERTY_BUFFER_RESPONSE_ENTITY_ON_EXCEPTION, true)); } }; ftw.setCancelableFuture(handle(request, ftw)); return ftw; }
public <T> Future<T> options(Class<T> c) { return handle(c, new ClientRequestImpl(getURI(), "OPTIONS")); }
public <T> Future<T> put(Class<T> c) throws UniformInterfaceException { return handle(c, new ClientRequestImpl(getURI(), "PUT")); }
public <T> Future<T> put(GenericType<T> gt) throws UniformInterfaceException { return handle(gt, new ClientRequestImpl(getURI(), "PUT")); }
public <T> Future<T> put(Class<T> c, Object requestEntity) throws UniformInterfaceException { return handle(c, new ClientRequestImpl(getURI(), "PUT", requestEntity)); }
public <T> Future<T> post(GenericType<T> gt) throws UniformInterfaceException { return handle(gt, new ClientRequestImpl(getURI(), "POST")); }
public <T> Future<T> delete(GenericType<T> gt) throws UniformInterfaceException { return handle(gt, new ClientRequestImpl(getURI(), "DELETE")); }
public <T> Future<T> delete(ITypeListener<T> l, Object requestEntity) { return handle(l, new ClientRequestImpl(getURI(), "DELETE", requestEntity)); }
public <T> Future<T> method(String method, Class<T> c) throws UniformInterfaceException { return handle(c, new ClientRequestImpl(getURI(), method)); }
private Future<?> voidHandle(final ClientRequest request) { setProperties(request); final FutureClientResponseListener<?> ftw = new FutureClientResponseListener() { protected Object get(ClientResponse response) { if (response.getStatus() >= 300) throw new UniformInterfaceException(response, request.getPropertyAsFeature(ClientConfig.PROPERTY_BUFFER_RESPONSE_ENTITY_ON_EXCEPTION, true)); response.close(); return null; } }; ftw.setCancelableFuture(handle(request, ftw)); return ftw; }
public Future<ClientResponse> head(ITypeListener<ClientResponse> l) { return handle(l, new ClientRequestImpl(getURI(), "HEAD")); }
public <T> Future<T> options(ITypeListener<T> l) { return handle(l, new ClientRequestImpl(getURI(), "OPTIONS")); }
public <T> Future<T> put(GenericType<T> gt, Object requestEntity) throws UniformInterfaceException { return handle(gt, new ClientRequestImpl(getURI(), "PUT", requestEntity)); }
public <T> Future<T> method(String method, GenericType<T> gt) throws UniformInterfaceException { return handle(gt, new ClientRequestImpl(getURI(), method)); }