Class NetHttpTransport
java.lang.Object
com.google.api.client.http.HttpTransport
com.google.api.client.http.javanet.NetHttpTransport
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
-
Nested Class Summary
Nested Classes -
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final ConnectionFactoryprivate final HostnameVerifierHost name verifier ornullfor the default.private final booleanWhether the transport is mTLS.private static final Stringprivate final SSLSocketFactorySSL socket factory ornullfor the default.private static final String[]All valid request methods as specified inHttpURLConnection.setRequestMethod(String), sorted in ascending alphabetical order. -
Constructor Summary
ConstructorsConstructorDescriptionConstructor with the default behavior.NetHttpTransport(ConnectionFactory connectionFactory, SSLSocketFactory sslSocketFactory, HostnameVerifier hostnameVerifier, boolean isMtls) NetHttpTransport(Proxy proxy, SSLSocketFactory sslSocketFactory, HostnameVerifier hostnameVerifier, boolean isMtls) -
Method Summary
Modifier and TypeMethodDescriptionprotected NetHttpRequestbuildRequest(String method, String url) Builds a low level HTTP request for the given HTTP method.private static Proxyprivate ConnectionFactorygetConnectionFactory(ConnectionFactory connectionFactory) booleanisMtls()Returns whether the transport is mTLS.booleansupportsMethod(String method) Returns whether a specified HTTP method is supported by this transport.Methods inherited from class HttpTransport
createRequestFactory, createRequestFactory, isShutdown, shutdown
-
Field Details
-
SUPPORTED_METHODS
All valid request methods as specified inHttpURLConnection.setRequestMethod(String), sorted in ascending alphabetical order. -
SHOULD_USE_PROXY_FLAG
- See Also:
-
connectionFactory
-
sslSocketFactory
SSL socket factory ornullfor the default. -
hostnameVerifier
Host name verifier ornullfor the default. -
isMtls
private final boolean isMtlsWhether the transport is mTLS. Default value isfalse.
-
-
Constructor Details
-
NetHttpTransport
public NetHttpTransport()Constructor with the default behavior.Instead use
NetHttpTransport.Builderto modify behavior. -
NetHttpTransport
NetHttpTransport(Proxy proxy, SSLSocketFactory sslSocketFactory, HostnameVerifier hostnameVerifier, boolean isMtls) - Parameters:
proxy- HTTP proxy ornullto use the proxy settings from system propertiessslSocketFactory- SSL socket factory ornullfor the defaulthostnameVerifier- host name verifier ornullfor the defaultisMtls- Whether the transport is mTLS. Default value isfalse- Since:
- 1.38
-
NetHttpTransport
NetHttpTransport(ConnectionFactory connectionFactory, SSLSocketFactory sslSocketFactory, HostnameVerifier hostnameVerifier, boolean isMtls) - Parameters:
connectionFactory- factory to produce connections fromURLs; ifnullthenDefaultConnectionFactoryis usedsslSocketFactory- SSL socket factory ornullfor the defaulthostnameVerifier- host name verifier ornullfor the defaultisMtls- Whether the transport is mTLS. Default value isfalse- Since:
- 1.38
-
-
Method Details
-
defaultProxy
-
getConnectionFactory
-
supportsMethod
Description copied from class:HttpTransportReturns 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:
supportsMethodin classHttpTransport- Parameters:
method- HTTP method
-
isMtls
public boolean isMtls()Description copied from class:HttpTransportReturns whether the transport is mTLS.- Overrides:
isMtlsin classHttpTransport- Returns:
- boolean indicating if the transport is mTLS.
-
buildRequest
Description copied from class:HttpTransportBuilds a low level HTTP request for the given HTTP method.- Specified by:
buildRequestin classHttpTransport- Parameters:
method- HTTP methodurl- URL- Returns:
- new low level HTTP request
- Throws:
IOException
-