javax.ws.rs.client
Interface Invocation


public interface Invocation

A client request invocation. An invocation is a request that has been prepared and is ready for execution. Invocations provide a generic (command) interface that enables a separation of concerns between the creator and the submitter. In particular, the submitter does not need to know how the invocation was prepared, but only how it should be executed (synchronously or asynchronously) and when.

Author:
Marek Potociar
See Also:
Invocation.Builder

Nested Class Summary
static interface Invocation.Builder
          A client request invocation builder.
 
Method Summary
 Configuration configuration()
          Get access to the underlying configuration.
 Response invoke()
          Synchronously invoke the request and receive a response back.
<T> T
invoke(java.lang.Class<T> responseType)
          Synchronously invoke the request and receive a response of the specified type back.
<T> T
invoke(GenericType<T> responseType)
          Synchronously invoke the request and receive a response of the specified generic type back.
 java.util.concurrent.Future<Response> submit()
          Submit the request for an asynchronous invocation and receive a future response back.
<T> java.util.concurrent.Future<T>
submit(java.lang.Class<T> responseType)
          Submit the request for an asynchronous invocation and receive a future response of the specified type back.
<T> java.util.concurrent.Future<T>
submit(GenericType<T> responseType)
          Submit the request for an asynchronous invocation and receive a future response of the specified generic type back.
<T> java.util.concurrent.Future<T>
submit(InvocationCallback<T> callback)
          Submit the request for an asynchronous invocation and register an InvocationCallback to process the future result of the invocation.
 

Method Detail

invoke

Response invoke()
                throws ClientException
Synchronously invoke the request and receive a response back.

Returns:
response object as a result of the request invocation.
Throws:
ClientException - in case the invocation processing has failed.

invoke

<T> T invoke(java.lang.Class<T> responseType)
         throws ClientException,
                WebApplicationException
Synchronously invoke the request and receive a response of the specified type back.

Type Parameters:
T - response type
Parameters:
responseType - Java type the response should be converted into.
Returns:
response object of the specified type as a result of the request invocation.
Throws:
ClientException - in case the invocation processing has failed.
WebApplicationException - in case the response status code of the response returned by the server is not successful.

invoke

<T> T invoke(GenericType<T> responseType)
         throws ClientException,
                WebApplicationException
Synchronously invoke the request and receive a response of the specified generic type back.

Type Parameters:
T - generic response type
Parameters:
responseType - type literal representing a generic Java type the response should be converted into.
Returns:
response object of the specified generic type as a result of the request invocation.
Throws:
ClientException - in case the invocation processing has failed.
WebApplicationException - in case the response status code of the response returned by the server is not successful.

submit

java.util.concurrent.Future<Response> submit()
Submit the request for an asynchronous invocation and receive a future response back.

Note that calling the Future.get() method on the returned Future instance may throw an ExecutionException that wraps an ClientException thrown in case of an invocation processing failure.

Returns:
future response object as a result of the request invocation.

submit

<T> java.util.concurrent.Future<T> submit(java.lang.Class<T> responseType)
Submit the request for an asynchronous invocation and receive a future response of the specified type back.

Note that calling the Future.get() method on the returned Future instance may throw an ExecutionException that wraps either an ClientException thrown in case of an invocation processing failure or a WebApplicationException or one of its subclasses thrown in case the received response status code is not successful and the specified response type is not Response.

Type Parameters:
T - response type
Parameters:
responseType - Java type the response should be converted into.
Returns:
future response object of the specified type as a result of the request invocation.

submit

<T> java.util.concurrent.Future<T> submit(GenericType<T> responseType)
Submit the request for an asynchronous invocation and receive a future response of the specified generic type back.

Note that calling the Future.get() method on the returned Future instance may throw an ExecutionException that wraps either an ClientException thrown in case of an invocation processing failure or a WebApplicationException or one of its subclasses thrown in case the received response status code is not successful and the specified response type is not Response.

Type Parameters:
T - generic response type
Parameters:
responseType - type literal representing a generic Java type the response should be converted into.
Returns:
future response object of the specified generic type as a result of the request invocation.

submit

<T> java.util.concurrent.Future<T> submit(InvocationCallback<T> callback)
Submit the request for an asynchronous invocation and register an InvocationCallback to process the future result of the invocation.

Note that calling the Future.get() method on the returned Future instance may throw an ExecutionException that wraps either an ClientException thrown in case of an invocation processing failure or a WebApplicationException or one of its subclasses thrown in case the received response status code is not successful and the generic type of the supplied response callback is not Response.

Type Parameters:
T - response type
Parameters:
callback - invocation callback for asynchronous processing of the request invocation result.
Returns:
future response object of the specified type as a result of the request invocation.

configuration

Configuration configuration()
Get access to the underlying configuration.

Returns:
a mutable configuration bound to the instance.


Copyright © 2007-2012 Oracle Corporation. All Rights Reserved. Use is subject to license terms.