com.google.api.client.http
Class HttpTransport

java.lang.Object
  extended by com.google.api.client.http.HttpTransport
Direct Known Subclasses:
ApacheHttpTransport, MockHttpTransport, NetHttpTransport

public abstract class HttpTransport
extends Object

Thread-safe abstract HTTP transport.

The recommended concrete implementation HTTP transport library to use depends on what environment you are running in:

Upgrade warning: users of prior version 1.3 can continue to use the deprecated fields and methods in this class. However, that invalidates the thread safety claims on this class, thus making this class potentially unsafe to share between threads.

Since:
1.0
Author:
Yaniv Inbar

Field Summary
 HttpHeaders defaultHeaders
          Deprecated. (scheduled to be removed in 1.5) Use HttpRequest.headers in an HttpRequestInitializer
 List<HttpExecuteIntercepter> intercepters
          Deprecated. (scheduled to be removed in 1.5) Use HttpRequest.interceptor
 
Constructor Summary
HttpTransport()
           
 
Method Summary
 void addParser(HttpParser parser)
          Deprecated. (scheduled to be removed in 1.5) Use HttpRequest.addParser(HttpParser) in an HttpRequestInitializer
 HttpRequest buildDeleteRequest()
          Deprecated. (scheduled to be removed in 1.5) Use HttpRequestFactory.buildDeleteRequest(GenericUrl)
protected abstract  LowLevelHttpRequest buildDeleteRequest(String url)
          Builds a DELETE request.
 HttpRequest buildGetRequest()
          Deprecated. (scheduled to be removed in 1.5) Use HttpRequestFactory.buildGetRequest(GenericUrl)
protected abstract  LowLevelHttpRequest buildGetRequest(String url)
          Builds a GET request.
 HttpRequest buildHeadRequest()
          Deprecated. (scheduled to be removed in 1.5) Use HttpRequestFactory.buildHeadRequest(GenericUrl)
protected  LowLevelHttpRequest buildHeadRequest(String url)
          Builds a HEAD request.
 HttpRequest buildPatchRequest()
          Deprecated. (scheduled to be removed in 1.5) Use HttpRequestFactory.buildPatchRequest(GenericUrl, HttpContent)
protected  LowLevelHttpRequest buildPatchRequest(String url)
          Builds a PATCH request.
 HttpRequest buildPostRequest()
          Deprecated. (scheduled to be removed in 1.5) Use HttpRequestFactory.buildPostRequest(GenericUrl, HttpContent)
protected abstract  LowLevelHttpRequest buildPostRequest(String url)
          Builds a POST request.
 HttpRequest buildPutRequest()
          Deprecated. (scheduled to be removed in 1.5) Use HttpRequestFactory.buildPutRequest(GenericUrl, HttpContent)
protected abstract  LowLevelHttpRequest buildPutRequest(String url)
          Builds a PUT request.
 HttpRequest buildRequest()
          Deprecated. (scheduled to be made package private in 1.5) Use HttpRequestFactory.buildRequest(HttpMethod, GenericUrl, HttpContent)
 HttpRequestFactory createRequestFactory()
          Returns a new instance of an HTTP request factory based on this HTTP transport.
 HttpRequestFactory createRequestFactory(HttpRequestInitializer initializer)
          Returns a new instance of an HTTP request factory based on this HTTP transport with the given HTTP request initializer.
 HttpParser getParser(String contentType)
          Deprecated. (scheduled to be removed in 1.5) Use HttpRequest.getParser(String) in an HttpRequestInitializer
 void removeIntercepters(Class<?> intercepterClass)
          Deprecated. (scheduled to be removed in 1.5) Use HttpRequest.interceptor
 void shutdown()
          Default implementation does nothing, but subclasses may override to possibly release allocated system resources or close connections.
 boolean supportsHead()
          Returns whether this HTTP transport implementation supports the HEAD request method.
 boolean supportsPatch()
          Returns whether this HTTP transport implementation supports the PATCH request method.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

defaultHeaders

@Deprecated
public HttpHeaders defaultHeaders
Deprecated. (scheduled to be removed in 1.5) Use HttpRequest.headers in an HttpRequestInitializer
Default HTTP headers. These transport default headers are put into a request's headers when its build method is called.


intercepters

@Deprecated
public List<HttpExecuteIntercepter> intercepters
Deprecated. (scheduled to be removed in 1.5) Use HttpRequest.interceptor
HTTP request execute intercepters. The intercepters will be invoked in the order of the List.iterator().

Constructor Detail

HttpTransport

public HttpTransport()
Method Detail

createRequestFactory

public final HttpRequestFactory createRequestFactory()
Returns a new instance of an HTTP request factory based on this HTTP transport.

Returns:
new instance of an HTTP request factory
Since:
1.4

createRequestFactory

public final HttpRequestFactory createRequestFactory(HttpRequestInitializer initializer)
Returns a new instance of an HTTP request factory based on this HTTP transport with the given HTTP request initializer.

Parameters:
initializer - HTTP request initializer or null for none
Returns:
new instance of an HTTP request factory
Since:
1.4

addParser

@Deprecated
public final void addParser(HttpParser parser)
Deprecated. (scheduled to be removed in 1.5) Use HttpRequest.addParser(HttpParser) in an HttpRequestInitializer

Adds an HTTP response content parser.

If there is already a previous parser defined for this new parser (as defined by getParser(String) then the previous parser will be removed.


getParser

@Deprecated
public final HttpParser getParser(String contentType)
Deprecated. (scheduled to be removed in 1.5) Use HttpRequest.getParser(String) in an HttpRequestInitializer

Returns the HTTP response content parser to use for the given content type or null if none is defined.

Parameters:
contentType - content type or null for null result

buildRequest

@Deprecated
public final HttpRequest buildRequest()
Deprecated. (scheduled to be made package private in 1.5) Use HttpRequestFactory.buildRequest(HttpMethod, GenericUrl, HttpContent)

Builds a request without specifying the HTTP method.

Returns:
new HTTP request

buildDeleteRequest

@Deprecated
public final HttpRequest buildDeleteRequest()
Deprecated. (scheduled to be removed in 1.5) Use HttpRequestFactory.buildDeleteRequest(GenericUrl)

Builds a DELETE request.


buildGetRequest

@Deprecated
public final HttpRequest buildGetRequest()
Deprecated. (scheduled to be removed in 1.5) Use HttpRequestFactory.buildGetRequest(GenericUrl)

Builds a GET request.


buildPostRequest

@Deprecated
public final HttpRequest buildPostRequest()
Deprecated. (scheduled to be removed in 1.5) Use HttpRequestFactory.buildPostRequest(GenericUrl, HttpContent)

Builds a POST request.


buildPutRequest

@Deprecated
public final HttpRequest buildPutRequest()
Deprecated. (scheduled to be removed in 1.5) Use HttpRequestFactory.buildPutRequest(GenericUrl, HttpContent)

Builds a PUT request.


buildPatchRequest

@Deprecated
public final HttpRequest buildPatchRequest()
Deprecated. (scheduled to be removed in 1.5) Use HttpRequestFactory.buildPatchRequest(GenericUrl, HttpContent)

Builds a PATCH request.


buildHeadRequest

@Deprecated
public final HttpRequest buildHeadRequest()
Deprecated. (scheduled to be removed in 1.5) Use HttpRequestFactory.buildHeadRequest(GenericUrl)

Builds a HEAD request.


removeIntercepters

@Deprecated
public final void removeIntercepters(Class<?> intercepterClass)
Deprecated. (scheduled to be removed in 1.5) Use HttpRequest.interceptor

Removes HTTP request execute intercepters of the given class or subclasses.

Parameters:
intercepterClass - intercepter class

supportsHead

public boolean supportsHead()
Returns whether this HTTP transport implementation supports the HEAD request method.

Default implementation returns false.

Since:
1.3

supportsPatch

public boolean supportsPatch()
Returns whether this HTTP transport implementation supports the PATCH request method.

Default implementation returns false.

Since:
1.3

buildDeleteRequest

protected abstract LowLevelHttpRequest buildDeleteRequest(String url)
                                                   throws IOException
Builds a DELETE request.

Parameters:
url - URL
Throws:
IOException - I/O exception
Since:
1.3

buildGetRequest

protected abstract LowLevelHttpRequest buildGetRequest(String url)
                                                throws IOException
Builds a GET request.

Parameters:
url - URL
Throws:
IOException - I/O exception
Since:
1.3

buildHeadRequest

protected LowLevelHttpRequest buildHeadRequest(String url)
                                        throws IOException
Builds a HEAD request. Won't be called if supportsHead() returns false .

Default implementation throws an UnsupportedOperationException.

Parameters:
url - URL
Throws:
IOException - I/O exception
Since:
1.3

buildPatchRequest

protected LowLevelHttpRequest buildPatchRequest(String url)
                                         throws IOException
Builds a PATCH request. Won't be called if supportsPatch() returns false.

Default implementation throws an UnsupportedOperationException.

Parameters:
url - URL
Throws:
IOException - I/O exception
Since:
1.3

buildPostRequest

protected abstract LowLevelHttpRequest buildPostRequest(String url)
                                                 throws IOException
Builds a POST request.

Parameters:
url - URL
Throws:
IOException - I/O exception
Since:
1.3

buildPutRequest

protected abstract LowLevelHttpRequest buildPutRequest(String url)
                                                throws IOException
Builds a PUT request.

Parameters:
url - URL
Throws:
IOException - I/O exception
Since:
1.3

shutdown

public void shutdown()
              throws IOException
Default implementation does nothing, but subclasses may override to possibly release allocated system resources or close connections.

Throws:
IOException - I/O exception
Since:
1.4


Copyright © 2010-2011 Google. All Rights Reserved.