## com.sun.jersey.api.client
Interface UniformInterface

All Known Implementing Classes:
  WebResource, WebResource.Builder

    public interface UniformInterface

A uniform interface for invoking HTTP requests.

Any Java type for a response entity, that is supported by the client configuration of the client, may be declared using `Class<T>` where `T` is the Java type, or using `GenericType` where the generic parameter is the Java type.

Any Java type instance for a request entity, that is supported by the client configuration of the client, can be passed. If generic information is required then an instance of `GenericEntity` may be used.

A type of `ClientResponse` declared for the response entity may be used to obtain the status, headers and response entity.

If any type, other than `ClientResponse`, is declared and the response status is greater than or equal to 300 then a `UniformInterfaceException` exception will be thrown, from which the `ClientResponse` instance can be accessed.

In the following cases it is necessary to close the response, when response processing has completed, to ensure that underlying resources are correctly released.

If a response entity is declared of the type `ClientResponse` or of a type that is assignable to `Closeable` (such as `InputStream`) then the response must be either: 1) closed by invoking the method `ClientResponse.close()` or `Closeable.close()`; or 2) all bytes of response entity must be read.

If a `UniformInterfaceException` is thrown then by default the response entity is automatically buffered and the underlying resources are correctly released. See the following property for more details: `ClientConfig.PROPERTY_BUFFER_RESPONSE_ENTITY_ON_EXCEPTION`.

Author:
  Paul.Sandoz@Sun.Com
See Also:
  `com.sun.jersey.api.client`

Method Summary
`void` | `delete()` Invoke the DELETE method with no request entity or response.

`

`<T> T`

`

`delete(java.lang.Class<T> c)`
Invoke the DELETE method with no request entity that returns a response.

`

`<T> T`

`

`delete(java.lang.Class<T> c, java.lang.Object requestEntity)`
Invoke the DELETE method with a request entity that returns a response.

`

`<T> T`

`

`delete(GenericType<T> gt)`
Invoke the DELETE method with a request entity that returns a response.

`

`<T> T`

`

`delete(GenericType<T> gt, java.lang.Object requestEntity)`
Invoke the DELETE method with a request entity that returns a response.

`void` | `delete(java.lang.Object requestEntity)` Invoke the DELETE method with a request entity but no response.

`

`<T> T`

`

`get(java.lang.Class<T> c)`
Invoke the GET method.

`

`<T> T`

`

`get(GenericType<T> gt)`
Invoke the GET method.

`ClientResponse` | `head()` Invoke the HEAD method.
`void` | `method(java.lang.String method)` Invoke a HTTP method with no request entity or response.

`

`<T> T`

`

`method(java.lang.String method, java.lang.Class<T> c)`
Invoke a HTTP method with no request entity that returns a response.

`

`<T> T`

`

`method(java.lang.String method, java.lang.Class<T> c, java.lang.Object requestEntity)`
Invoke a HTTP method with a request entity that returns a response.

`

`<T> T`

`

`method(java.lang.String method, GenericType<T> gt)`
Invoke a HTTP method with no request entity that returns a response.

`

`<T> T`

`

`method(java.lang.String method, GenericType<T> gt, java.lang.Object requestEntity)`
Invoke a HTTP method with a request entity that returns a response.

`void` | `method(java.lang.String method, java.lang.Object requestEntity)` Invoke a HTTP method with a request entity but no response.

`

`<T> T`

`

`options(java.lang.Class<T> c)`
Invoke the OPTIONS method.

`

`<T> T`

`

`options(GenericType<T> gt)`
Invoke the OPTIONS method.

`void` | `post()` Invoke the POST method with no request entity or response.

`

`<T> T`

`

`post(java.lang.Class<T> c)`
Invoke the POST method with no request entity that returns a response.

`

`<T> T`

`

`post(java.lang.Class<T> c, java.lang.Object requestEntity)`
Invoke the POST method with a request entity that returns a response.

`

`<T> T`

`

`post(GenericType<T> gt)`
Invoke the POST method with a request entity that returns a response.

`

`<T> T`

`

`post(GenericType<T> gt, java.lang.Object requestEntity)`
Invoke the POST method with a request entity that returns a response.

`void` | `post(java.lang.Object requestEntity)` Invoke the POST method with a request entity but no response.
`void` | `put()` Invoke the PUT method with no request entity or response.

`

`<T> T`

`

`put(java.lang.Class<T> c)`
Invoke the PUT method with no request entity that returns a response.

`

`<T> T`

`

`put(java.lang.Class<T> c, java.lang.Object requestEntity)`
Invoke the PUT method with a request entity that returns a response.

`

`<T> T`

`

`put(GenericType<T> gt)`
Invoke the PUT method with a request entity that returns a response.

`

`<T> T`

`

`put(GenericType<T> gt, java.lang.Object requestEntity)`
Invoke the PUT method with a request entity that returns a response.

`void` | `put(java.lang.Object requestEntity)` Invoke the PUT method with a request entity but no response.

Method Detail

### head

    ClientResponse head()
                        throws ClientHandlerException

  Invoke the HEAD method.

  Returns:
    the HTTP response.
  Throws:
    `ClientHandlerException` - if the client handler fails to process the request or response.

### options

    <T> T options(java.lang.Class<T> c)
              throws UniformInterfaceException,
                     ClientHandlerException

  Invoke the OPTIONS method.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `c` - the type of the returned response.
  Returns:
    an instance of type `c`.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `c` is not the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### options

    <T> T options(GenericType<T> gt)
              throws UniformInterfaceException,
                     ClientHandlerException

  Invoke the OPTIONS method.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `gt` - the generic type of the returned response.
  Returns:
    an instance of type represented by the generic type.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `gt` does not represent the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### get

    <T> T get(java.lang.Class<T> c)
          throws UniformInterfaceException,
                 ClientHandlerException

  Invoke the GET method.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `c` - the type of the returned response.
  Returns:
    an instance of type `c`.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `c` is not the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### get

    <T> T get(GenericType<T> gt)
          throws UniformInterfaceException,
                 ClientHandlerException

  Invoke the GET method.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `gt` - the generic type of the returned response.
  Returns:
    an instance of type represented by the generic type.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `gt` does not represent the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### put

    void put()
             throws UniformInterfaceException,
                    ClientHandlerException

  Invoke the PUT method with no request entity or response.

  If the status code is less than 300 and a representation is present then that representation is ignored.

  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### put

    void put(java.lang.Object requestEntity)
             throws UniformInterfaceException,
                    ClientHandlerException

  Invoke the PUT method with a request entity but no response.

  If the status code is less than 300 and a representation is present then that representation is ignored.

  Parameters:
    `requestEntity` - the request entity.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### put

    <T> T put(java.lang.Class<T> c)
          throws UniformInterfaceException,
                 ClientHandlerException

  Invoke the PUT method with no request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `c` - the type of the returned response.
  Returns:
    an instance of type `c`.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `c` is not the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### put

    <T> T put(GenericType<T> gt)
          throws UniformInterfaceException,
                 ClientHandlerException

  Invoke the PUT method with a request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `gt` - the generic type of the returned response.
  Returns:
    an instance of type represented by the generic type.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `gt` does not represent the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### put

    <T> T put(java.lang.Class<T> c,
              java.lang.Object requestEntity)
          throws UniformInterfaceException,
                 ClientHandlerException

  Invoke the PUT method with a request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `c` - the type of the returned response.
    `requestEntity` - the request entity.
  Returns:
    an instance of type `c`.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `c` is not the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### put

    <T> T put(GenericType<T> gt,
              java.lang.Object requestEntity)
          throws UniformInterfaceException,
                 ClientHandlerException

  Invoke the PUT method with a request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `gt` - the generic type of the returned response.
    `requestEntity` - the request entity.
  Returns:
    an instance of type represented by the generic type.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `gt` does not represent the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### post

    void post()
              throws UniformInterfaceException,
                     ClientHandlerException

  Invoke the POST method with no request entity or response.

  If the status code is less than 300 and a representation is present then that representation is ignored.

  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### post

    void post(java.lang.Object requestEntity)
              throws UniformInterfaceException,
                     ClientHandlerException

  Invoke the POST method with a request entity but no response.

  If the status code is less than 300 and a representation is present then that representation is ignored.

  Parameters:
    `requestEntity` - the request entity.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### post

    <T> T post(java.lang.Class<T> c)
           throws UniformInterfaceException,
                  ClientHandlerException

  Invoke the POST method with no request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `c` - the type of the returned response.
  Returns:
    an instance of type `c`.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `c` is not the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### post

    <T> T post(GenericType<T> gt)
           throws UniformInterfaceException,
                  ClientHandlerException

  Invoke the POST method with a request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `gt` - the generic type of the returned response.
  Returns:
    an instance of type represented by the generic type.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `gt` does not represent the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### post

    <T> T post(java.lang.Class<T> c,
               java.lang.Object requestEntity)
           throws UniformInterfaceException,
                  ClientHandlerException

  Invoke the POST method with a request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `c` - the type of the returned response.
    `requestEntity` - the request entity.
  Returns:
    an instance of type `c`.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `c` is not the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### post

    <T> T post(GenericType<T> gt,
               java.lang.Object requestEntity)
           throws UniformInterfaceException,
                  ClientHandlerException

  Invoke the POST method with a request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `gt` - the generic type of the returned response.
    `requestEntity` - the request entity.
  Returns:
    an instance of type represented by the generic type.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `gt` does not represent the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### delete

    void delete()
                throws UniformInterfaceException,
                       ClientHandlerException

  Invoke the DELETE method with no request entity or response.

  If the status code is less than 300 and a representation is present then that representation is ignored.

  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### delete

    void delete(java.lang.Object requestEntity)
                throws UniformInterfaceException,
                       ClientHandlerException

  Invoke the DELETE method with a request entity but no response.

  If the status code is less than 300 and a representation is present then that representation is ignored.

  Parameters:
    `requestEntity` - the request entity.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### delete

    <T> T delete(java.lang.Class<T> c)
             throws UniformInterfaceException,
                    ClientHandlerException

  Invoke the DELETE method with no request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `c` - the type of the returned response.
  Returns:
    an instance of type `c`.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `c` is not the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### delete

    <T> T delete(GenericType<T> gt)
             throws UniformInterfaceException,
                    ClientHandlerException

  Invoke the DELETE method with a request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `gt` - the generic type of the returned response.
  Returns:
    an instance of type represented by the generic type.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `gt` does not represent the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### delete

    <T> T delete(java.lang.Class<T> c,
                 java.lang.Object requestEntity)
             throws UniformInterfaceException,
                    ClientHandlerException

  Invoke the DELETE method with a request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `c` - the type of the returned response.
    `requestEntity` - the request entity.
  Returns:
    an instance of type `c`.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `c` is not the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### delete

    <T> T delete(GenericType<T> gt,
                 java.lang.Object requestEntity)
             throws UniformInterfaceException,
                    ClientHandlerException

  Invoke the DELETE method with a request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `gt` - the generic type of the returned response.
    `requestEntity` - the request entity.
  Returns:
    an instance of type represented by the generic type.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `gt` does not represent the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### method

    void method(java.lang.String method)
                throws UniformInterfaceException,
                       ClientHandlerException

  Invoke a HTTP method with no request entity or response.

  If the status code is less than 300 and a representation is present then that representation is ignored.

  Parameters:
    `method` - the HTTP method.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### method

    void method(java.lang.String method,
                java.lang.Object requestEntity)
                throws UniformInterfaceException,
                       ClientHandlerException

  Invoke a HTTP method with a request entity but no response.

  If the status code is less than 300 and a representation is present then that representation is ignored.

  Parameters:
    `method` - the HTTP method.
    `requestEntity` - the request entity.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### method

    <T> T method(java.lang.String method,
                 java.lang.Class<T> c)
             throws UniformInterfaceException,
                    ClientHandlerException

  Invoke a HTTP method with no request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `method` - the HTTP method.
    `c` - the type of the returned response.
  Returns:
    an instance of type `c`.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `c` is not the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### method

    <T> T method(java.lang.String method,
                 GenericType<T> gt)
             throws UniformInterfaceException,
                    ClientHandlerException

  Invoke a HTTP method with no request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `method` - the HTTP method.
    `gt` - the generic type of the returned response.
  Returns:
    an instance of type represented by the generic type.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `gt` does not represent the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### method

    <T> T method(java.lang.String method,
                 java.lang.Class<T> c,
                 java.lang.Object requestEntity)
             throws UniformInterfaceException,
                    ClientHandlerException

  Invoke a HTTP method with a request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `method` - the HTTP method.
    `c` - the type of the returned response.
    `requestEntity` - the request entity.
  Returns:
    an instance of type `c`.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `c` is not the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

### method

    <T> T method(java.lang.String method,
                 GenericType<T> gt,
                 java.lang.Object requestEntity)
             throws UniformInterfaceException,
                    ClientHandlerException

  Invoke a HTTP method with a request entity that returns a response.

  Type Parameters:
    `T` - the type of the response.
  Parameters:
    `method` - the HTTP method.
    `gt` - the generic type of the returned response.
    `requestEntity` - the request entity.
  Returns:
    an instance of type represented by the generic type.
  Throws:
    `UniformInterfaceException` - if the status of the HTTP response is greater than or equal to 300 and `gt` does not represent the type `ClientResponse`.
    `ClientHandlerException` - if the client handler fails to process the request or response.

Copyright © 2017 Oracle Corporation. All Rights Reserved.