Class JerseyClient

java.lang.Object
org.glassfish.jersey.client.JerseyClient
All Implemented Interfaces:
javax.ws.rs.client.Client, javax.ws.rs.core.Configurable<javax.ws.rs.client.Client>, Initializable<JerseyClient>

public class JerseyClient extends Object implements javax.ws.rs.client.Client, Initializable<JerseyClient>
Jersey implementation of JAX-RS Client contract.
  • Field Details

  • Constructor Details

    • JerseyClient

      protected JerseyClient()
      Create a new Jersey client instance using a default configuration.
    • JerseyClient

      protected JerseyClient(javax.ws.rs.core.Configuration config, SSLContext sslContext, HostnameVerifier verifier)
      Create a new Jersey client instance.
      Parameters:
      config - jersey client configuration.
      sslContext - jersey client SSL context.
      verifier - jersey client host name verifier.
    • JerseyClient

      protected JerseyClient(javax.ws.rs.core.Configuration config, SSLContext sslContext, HostnameVerifier verifier, DefaultSslContextProvider defaultSslContextProvider)
      Create a new Jersey client instance.
      Parameters:
      config - jersey client configuration.
      sslContext - jersey client SSL context.
      verifier - jersey client host name verifier.
      defaultSslContextProvider - default SSL context provider.
    • JerseyClient

      protected JerseyClient(javax.ws.rs.core.Configuration config, UnsafeValue<SSLContext,IllegalStateException> sslContextProvider, HostnameVerifier verifier)
      Create a new Jersey client instance.
      Parameters:
      config - jersey client configuration.
      sslContextProvider - jersey client SSL context provider.
      verifier - jersey client host name verifier.
    • JerseyClient

      protected JerseyClient(javax.ws.rs.core.Configuration config, SSLContext sslContext, HostnameVerifier verifier, DefaultSslContextProvider defaultSslContextProvider, ExecutorService executorService, ScheduledExecutorService scheduledExecutorService)
      Create a new Jersey client instance.
      Parameters:
      config - jersey client configuration.
      sslContext - jersey client SSL context.
      verifier - jersey client host name verifier.
      defaultSslContextProvider - default SSL context provider.
    • JerseyClient

      protected JerseyClient(javax.ws.rs.core.Configuration config, UnsafeValue<SSLContext,IllegalStateException> sslContextProvider, HostnameVerifier verifier, ExecutorService executorService, ScheduledExecutorService scheduledExecutorService)
      Create a new Jersey client instance.
      Parameters:
      config - jersey client configuration.
      sslContextProvider - jersey client SSL context provider.
      verifier - jersey client host name verifier.
    • JerseyClient

      protected JerseyClient(javax.ws.rs.core.Configuration config, UnsafeValue<SSLContext,IllegalStateException> sslContextProvider, HostnameVerifier verifier, DefaultSslContextProvider defaultSslContextProvider)
      Create a new Jersey client instance.
      Parameters:
      config - jersey client configuration.
      sslContextProvider - jersey client SSL context provider. Non null provider is expected to return non-default value.
      verifier - jersey client host name verifier.
      defaultSslContextProvider - default SSL context provider.
    • JerseyClient

      protected JerseyClient(javax.ws.rs.core.Configuration config, UnsafeValue<SSLContext,IllegalStateException> sslContextProvider, HostnameVerifier verifier, DefaultSslContextProvider defaultSslContextProvider, ExecutorService executorService, ScheduledExecutorService scheduledExecutorService)
  • Method Details

    • close

      public void close()
      Specified by:
      close in interface javax.ws.rs.client.Client
    • release

      private void release()
    • createLazySslContext

      private UnsafeValue<SSLContext,IllegalStateException> createLazySslContext(DefaultSslContextProvider provider)
    • registerShutdownHook

      void registerShutdownHook(JerseyClient.ShutdownHook shutdownHook)
      Register a new client shutdown hook.
      Parameters:
      shutdownHook - client shutdown hook.
    • cleanUpShutdownHooks

      private void cleanUpShutdownHooks()
      Clean up shutdown hooks that have been garbage collected.
    • getDefaultScheduledExecutorService

      private ScheduledExecutorService getDefaultScheduledExecutorService()
    • isClosed

      public boolean isClosed()
      Check client state.
      Returns:
      true if current JerseyClient instance is closed, otherwise false.
      See Also:
    • checkNotClosed

      void checkNotClosed()
      Check that the client instance has not been closed.
      Throws:
      IllegalStateException - in case the client instance has been closed already.
    • isDefaultSslContext

      public boolean isDefaultSslContext()
      Get information about used SSLContext.
      Returns:
      true when used SSLContext is acquired from SslConfigurator.getDefaultContext(), false otherwise.
    • target

      public JerseyWebTarget target(String uri)
      Specified by:
      target in interface javax.ws.rs.client.Client
    • target

      public JerseyWebTarget target(URI uri)
      Specified by:
      target in interface javax.ws.rs.client.Client
    • target

      public JerseyWebTarget target(javax.ws.rs.core.UriBuilder uriBuilder)
      Specified by:
      target in interface javax.ws.rs.client.Client
    • target

      public JerseyWebTarget target(javax.ws.rs.core.Link link)
      Specified by:
      target in interface javax.ws.rs.client.Client
    • invocation

      public JerseyInvocation.Builder invocation(javax.ws.rs.core.Link link)
      Specified by:
      invocation in interface javax.ws.rs.client.Client
    • register

      public JerseyClient register(Class<?> providerClass)
      Specified by:
      register in interface javax.ws.rs.core.Configurable<javax.ws.rs.client.Client>
    • register

      public JerseyClient register(Object provider)
      Specified by:
      register in interface javax.ws.rs.core.Configurable<javax.ws.rs.client.Client>
    • register

      public JerseyClient register(Class<?> providerClass, int bindingPriority)
      Specified by:
      register in interface javax.ws.rs.core.Configurable<javax.ws.rs.client.Client>
    • register

      public JerseyClient register(Class<?> providerClass, Class<?>... contracts)
      Specified by:
      register in interface javax.ws.rs.core.Configurable<javax.ws.rs.client.Client>
    • register

      public JerseyClient register(Class<?> providerClass, Map<Class<?>,Integer> contracts)
      Specified by:
      register in interface javax.ws.rs.core.Configurable<javax.ws.rs.client.Client>
    • register

      public JerseyClient register(Object provider, int bindingPriority)
      Specified by:
      register in interface javax.ws.rs.core.Configurable<javax.ws.rs.client.Client>
    • register

      public JerseyClient register(Object provider, Class<?>... contracts)
      Specified by:
      register in interface javax.ws.rs.core.Configurable<javax.ws.rs.client.Client>
    • register

      public JerseyClient register(Object provider, Map<Class<?>,Integer> contracts)
      Specified by:
      register in interface javax.ws.rs.core.Configurable<javax.ws.rs.client.Client>
    • property

      public JerseyClient property(String name, Object value)
      Specified by:
      property in interface javax.ws.rs.core.Configurable<javax.ws.rs.client.Client>
    • getConfiguration

      public ClientConfig getConfiguration()
      Description copied from interface: Initializable
      Get a live view of an internal client configuration state of this initializable instance.
      Specified by:
      getConfiguration in interface javax.ws.rs.core.Configurable<javax.ws.rs.client.Client>
      Specified by:
      getConfiguration in interface Initializable<JerseyClient>
      Returns:
      configuration live view of the internal configuration state.
    • getSslContext

      public SSLContext getSslContext()
      Specified by:
      getSslContext in interface javax.ws.rs.client.Client
    • getHostnameVerifier

      public HostnameVerifier getHostnameVerifier()
      Specified by:
      getHostnameVerifier in interface javax.ws.rs.client.Client
    • getExecutorService

      public ExecutorService getExecutorService()
    • getScheduledExecutorService

      public ScheduledExecutorService getScheduledExecutorService()
    • preInitialize

      public JerseyClient preInitialize()
      Description copied from interface: Initializable
      Pre-initializes the runtime and runtime configuration of this component in order to improve performance during the first request.

      Once this method is called no other method implementing Configurable should be called on this pre initialized component, otherwise the initialized client runtime will be discarded and the configuration will change back to uninitialized.

      Specified by:
      preInitialize in interface Initializable<JerseyClient>
      Returns:
      pre-initialized Jersey client component.