Class JettyConnectorProvider

java.lang.Object
org.glassfish.jersey.jetty.connector.JettyConnectorProvider
All Implemented Interfaces:
ConnectorProvider

public class JettyConnectorProvider extends Object implements ConnectorProvider
A ConnectorProvider for Jersey connector instances that utilize the Jetty HTTP Client to send and receive HTTP request and responses.

The following connector configuration properties are supported:

This transport supports both synchronous and asynchronous processing of client requests. The following methods are supported: GET, POST, PUT, DELETE, HEAD, OPTIONS, TRACE, CONNECT and MOVE.

Typical usage:

 
 ClientConfig config = new ClientConfig();
 config.connectorProvider(new JettyConnectorProvider());
 Client client = ClientBuilder.newClient(config);

 // async request
 WebTarget target = client.target("http://localhost:8080");
 Future<Response> future = target.path("resource").request().async().get();

 // wait for 3 seconds
 Response response = future.get(3, TimeUnit.SECONDS);
 String entity = response.readEntity(String.class);
 client.close();
 
 

Connector instances created via Jetty HTTP Client-based connector provider support only entity buffering. Defining the property ClientProperties.REQUEST_ENTITY_PROCESSING has no effect on Jetty HTTP Client-based connectors.

Since:
2.5
Author:
Arul Dhesiaseelan (aruld at acm.org), Marek Potociar
  • Constructor Details

    • JettyConnectorProvider

      public JettyConnectorProvider()
  • Method Details

    • getConnector

      public Connector getConnector(Client client, Configuration runtimeConfig)
      Specified by:
      getConnector in interface ConnectorProvider
    • getHttpClient

      public static org.eclipse.jetty.client.HttpClient getHttpClient(Configurable<?> component)
      Retrieve the underlying Jetty HttpClient instance from JerseyClient or JerseyWebTarget configured to use JettyConnectorProvider.
      Parameters:
      component - JerseyClient or JerseyWebTarget instance that is configured to use JettyConnectorProvider.
      Returns:
      underlying Jetty HttpClient instance.
      Throws:
      IllegalArgumentException - in case the component is neither JerseyClient nor JerseyWebTarget instance or in case the component is not configured to use a JettyConnectorProvider.
      Since:
      2.8