Class NetHttpTransport

java.lang.Object
com.google.api.client.http.HttpTransport
com.google.api.client.http.javanet.NetHttpTransport

public final class NetHttpTransport extends HttpTransport
Thread-safe HTTP low-level transport based on the java.net package.

Users should consider modifying the keep alive property on NetHttpTransport to control whether the socket should be returned to a pool of connected sockets. More information is available here.

We honor the default global caching behavior. To change the default behavior use URLConnection.setDefaultUseCaches(boolean).

Implementation is thread-safe. For maximum efficiency, applications should use a single globally-shared instance of the HTTP transport.

Since:
1.0
  • Field Details

  • Constructor Details

    • NetHttpTransport

      public NetHttpTransport()
      Constructor with the default behavior.

      Instead use NetHttpTransport.Builder to modify behavior.

    • NetHttpTransport

      NetHttpTransport(Proxy proxy, SSLSocketFactory sslSocketFactory, HostnameVerifier hostnameVerifier)
      Parameters:
      proxy - HTTP proxy or null to use the proxy settings from system properties
      sslSocketFactory - SSL socket factory or null for the default
      hostnameVerifier - host name verifier or null for the default
    • NetHttpTransport

      NetHttpTransport(ConnectionFactory connectionFactory, SSLSocketFactory sslSocketFactory, HostnameVerifier hostnameVerifier)
      Parameters:
      connectionFactory - factory to produce connections from URLs; if null then DefaultConnectionFactory is used
      sslSocketFactory - SSL socket factory or null for the default
      hostnameVerifier - host name verifier or null for the default
      Since:
      1.20
  • Method Details

    • supportsMethod

      public boolean supportsMethod(String method)
      Description copied from class: HttpTransport
      Returns whether a specified HTTP method is supported by this transport.

      Default implementation returns true if and only if the request method is "DELETE", "GET", "POST", or "PUT". Subclasses should override.

      Overrides:
      supportsMethod in class HttpTransport
      Parameters:
      method - HTTP method
    • buildRequest

      protected NetHttpRequest buildRequest(String method, String url) throws IOException
      Description copied from class: HttpTransport
      Builds a low level HTTP request for the given HTTP method.
      Specified by:
      buildRequest in class HttpTransport
      Parameters:
      method - HTTP method
      url - URL
      Returns:
      new low level HTTP request
      Throws:
      IOException