Interface Client

  • All Superinterfaces:
    Configurable<Client>

    public interface Client
    extends Configurable<Client>
    Client is the main entry point to the fluent API used to build and execute client requests in order to consume responses returned.

    Clients are heavy-weight objects that manage the client-side communication infrastructure. Initialization as well as disposal of a Client instance may be a rather expensive operation. It is therefore advised to construct only a small number of Client instances in the application. Client instances must be properly closed before being disposed to avoid leaking resources.

    Since:
    2.0
    Author:
    Marek Potociar
    See Also:
    Configurable
    • Method Detail

      • close

        void close()
        Close client instance and all it's associated resources. Subsequent calls have no effect and are ignored. Once the client is closed, invoking any other method on the client instance would result in an IllegalStateException being thrown.

        Calling this method effectively invalidates all resource targets produced by the client instance. Invoking any method on such targets once the client is closed would result in an IllegalStateException being thrown.

      • target

        WebTarget target​(String uri)
        Build a new web resource target.
        Parameters:
        uri - web resource URI. May contain template parameters. Must not be null.
        Returns:
        web resource target bound to the provided URI.
        Throws:
        IllegalArgumentException - in case the supplied string is not a valid URI template.
        NullPointerException - in case the supplied argument is null.
      • target

        WebTarget target​(URI uri)
        Build a new web resource target.
        Parameters:
        uri - web resource URI. Must not be null.
        Returns:
        web resource target bound to the provided URI.
        Throws:
        NullPointerException - in case the supplied argument is null.
      • target

        WebTarget target​(UriBuilder uriBuilder)
        Build a new web resource target.
        Parameters:
        uriBuilder - web resource URI represented as URI builder. Must not be null.
        Returns:
        web resource target bound to the provided URI.
        Throws:
        NullPointerException - in case the supplied argument is null.
      • target

        WebTarget target​(Link link)
        Build a new web resource target.
        Parameters:
        link - link to a web resource. Must not be null.
        Returns:
        web resource target bound to the linked web resource.
        Throws:
        NullPointerException - in case the supplied argument is null.
      • invocation

        Invocation.Builder invocation​(Link link)

        Build an invocation builder from a link. It uses the URI and the type of the link to initialize the invocation builder. The type is used as the initial value for the HTTP Accept header, if present.

        Parameters:
        link - link to build invocation from. Must not be null.
        Returns:
        newly created invocation builder.
        Throws:
        NullPointerException - in case link is null.
      • getSslContext

        SSLContext getSslContext()
        Get the SSL context configured to be used with the current client run-time.
        Returns:
        SSL context configured to be used with the current client run-time.
      • getHostnameVerifier

        HostnameVerifier getHostnameVerifier()
        Get the hostname verifier configured in the client or null in case no hostname verifier has been configured.
        Returns:
        client hostname verifier or null if not set.