atom.http_core | index /usr/local/svn/gdata-python-client/src/atom/http_core.py

`# Copyright (C) 2009 Google Inc.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.`

Modules
`` |  |
StringIO httplib | os ssl | urllib urlparse |

Classes
`` |  | __builtin__.object HttpClient ProxiedHttpClient HttpRequest HttpResponse Uri exceptions.Exception(exceptions.BaseException) Error ProxyError UnknownSize
class Error(exceptions.Exception)
`` |  | Method resolution order: Error exceptions.Exception exceptions.BaseException __builtin__.object Data descriptors defined here: __weakref__ `list of weak references to the object (if defined)` Methods inherited from exceptions.Exception: __init__(...) `x.__init__(...) initializes x; see x.__class__.__doc__ for signature` Data and other attributes inherited from exceptions.Exception: __new__ = <built-in method __new__ of type object at 0x74d100> `T.__new__(S, ...) -> a new object with type S, a subtype of T` Methods inherited from exceptions.BaseException: __delattr__(...) `x.__delattr__('name') <==> del x.name` __getattribute__(...) `x.__getattribute__('name') <==> x.name` __getitem__(...) `x.__getitem__(y) <==> x[y]` __getslice__(...) `x.__getslice__(i, j) <==> x[i:j] Use of negative indices is not supported.` __reduce__(...) __repr__(...) `x.__repr__() <==> repr(x)` __setattr__(...) `x.__setattr__('name', value) <==> x.name = value` __setstate__(...) __str__(...) `x.__str__() <==> str(x)` __unicode__(...) Data descriptors inherited from exceptions.BaseException: __dict__ args message
class HttpClient(__builtin__.object)
`` | `Performs HTTP requests using httplib.`
| Methods defined here: Request = request(self, http_request) request(self, http_request) Data descriptors defined here: __dict__ `dictionary for instance variables (if defined)` __weakref__ `list of weak references to the object (if defined)` Data and other attributes defined here: debug = None
class HttpRequest(__builtin__.object)
`` | `Contains all of the parameters for an HTTP 1.1 request. The HTTP headers are represented by a dictionary, and it is the responsibility of the user to ensure that duplicate field names are combined into one header value according to the rules in section 4.2 of RFC 2616.`
| Methods defined here: AddBodyPart = add_body_part(self, data, mime_type, size=None) AddFormInputs = add_form_inputs(self, form_data, mime_type='application/x-www-form-urlencoded') __init__(self, uri=None, method=None, headers=None) `Construct an HTTP request. Args: uri: The full path or partial path as a Uri object or a string. method: The HTTP method for the request, examples include 'GET', 'POST', etc. headers: dict of strings The HTTP headers to include in the request.` add_body_part(self, data, mime_type, size=None) `Adds data to the HTTP request body. If more than one part is added, this is assumed to be a mime-multipart request. This method is designed to create MIME 1.0 requests as specified in RFC 1341. Args: data: str or a file-like object containing a part of the request body. mime_type: str The MIME type describing the data size: int Required if the data is a file like object. If the data is a string, the size is calculated so this parameter is ignored.` add_form_inputs(self, form_data, mime_type='application/x-www-form-urlencoded') `Form-encodes and adds data to the request body. Args: form_data: dict or sequnce or two member tuples which contains the form keys and values. mime_type: str The MIME type of the form data being sent. Defaults to 'application/x-www-form-urlencoded'.` Data descriptors defined here: __dict__ `dictionary for instance variables (if defined)` __weakref__ `list of weak references to the object (if defined)` Data and other attributes defined here: method = None uri = None
class HttpResponse(__builtin__.object)
`` |  | Methods defined here: __init__(self, status=None, reason=None, headers=None, body=None) getheader(self, name, default=None) getheaders(self) read(self, amt=None) Data descriptors defined here: __dict__ `dictionary for instance variables (if defined)` __weakref__ `list of weak references to the object (if defined)` Data and other attributes defined here: reason = None status = None
class ProxiedHttpClient(HttpClient)
`` |  | Method resolution order: ProxiedHttpClient HttpClient __builtin__.object Methods inherited from HttpClient: Request = request(self, http_request) request(self, http_request) Data descriptors inherited from HttpClient: __dict__ `dictionary for instance variables (if defined)` __weakref__ `list of weak references to the object (if defined)` Data and other attributes inherited from HttpClient: debug = None
class ProxyError(Error)
`` |  | Method resolution order: ProxyError Error exceptions.Exception exceptions.BaseException __builtin__.object Data descriptors inherited from Error: __weakref__ `list of weak references to the object (if defined)` Methods inherited from exceptions.Exception: __init__(...) `x.__init__(...) initializes x; see x.__class__.__doc__ for signature` Data and other attributes inherited from exceptions.Exception: __new__ = <built-in method __new__ of type object at 0x74d100> `T.__new__(S, ...) -> a new object with type S, a subtype of T` Methods inherited from exceptions.BaseException: __delattr__(...) `x.__delattr__('name') <==> del x.name` __getattribute__(...) `x.__getattribute__('name') <==> x.name` __getitem__(...) `x.__getitem__(y) <==> x[y]` __getslice__(...) `x.__getslice__(i, j) <==> x[i:j] Use of negative indices is not supported.` __reduce__(...) __repr__(...) `x.__repr__() <==> repr(x)` __setattr__(...) `x.__setattr__('name', value) <==> x.name = value` __setstate__(...) __str__(...) `x.__str__() <==> str(x)` __unicode__(...) Data descriptors inherited from exceptions.BaseException: __dict__ args message
class UnknownSize(Error)
`` |  | Method resolution order: UnknownSize Error exceptions.Exception exceptions.BaseException __builtin__.object Data descriptors inherited from Error: __weakref__ `list of weak references to the object (if defined)` Methods inherited from exceptions.Exception: __init__(...) `x.__init__(...) initializes x; see x.__class__.__doc__ for signature` Data and other attributes inherited from exceptions.Exception: __new__ = <built-in method __new__ of type object at 0x74d100> `T.__new__(S, ...) -> a new object with type S, a subtype of T` Methods inherited from exceptions.BaseException: __delattr__(...) `x.__delattr__('name') <==> del x.name` __getattribute__(...) `x.__getattribute__('name') <==> x.name` __getitem__(...) `x.__getitem__(y) <==> x[y]` __getslice__(...) `x.__getslice__(i, j) <==> x[i:j] Use of negative indices is not supported.` __reduce__(...) __repr__(...) `x.__repr__() <==> repr(x)` __setattr__(...) `x.__setattr__('name', value) <==> x.name = value` __setstate__(...) __str__(...) `x.__str__() <==> str(x)` __unicode__(...) Data descriptors inherited from exceptions.BaseException: __dict__ args message
class Uri(__builtin__.object)
`` | `A URI as used in HTTP 1.1`
| Methods defined here: ModifyRequest = modify_request(self, http_request=None) __init__(self, scheme=None, host=None, port=None, path=None, query=None) `Constructor for a URI. Args: scheme: str This is usually 'http' or 'https'. host: str The host name or IP address of the desired server. post: int The server's port number. path: str The path of the resource following the host. This begins with a /, example: '/calendar/feeds/default/allcalendars/full' query: dict of strings The URL query parameters. The keys and values are both escaped so this dict should contain the unescaped values. For example {'my key': 'val', 'second': '!!!'} will become '?my+key=val&second=%21%21%21' which is appended to the path.` __str__(self) modify_request(self, http_request=None) `Sets HTTP request components based on the URI.` Static methods defined here: ParseUri = parse_uri(uri_string) `Creates a Uri object which corresponds to the URI string. This method can accept partial URIs, but it will leave missing members of the Uri unset.` parse_uri(uri_string) `Creates a Uri object which corresponds to the URI string. This method can accept partial URIs, but it will leave missing members of the Uri unset.` Data descriptors defined here: __dict__ `dictionary for instance variables (if defined)` __weakref__ `list of weak references to the object (if defined)` Data and other attributes defined here: host = None path = None port = None scheme = None

Functions
`` |  | ParseUri = parse_uri(uri_string) `Creates a Uri object which corresponds to the URI string. This method can accept partial URIs, but it will leave missing members of the Uri unset.` get_headers(http_response) `Retrieves all HTTP headers from an HTTP response from the server. This method is provided for backwards compatibility for Python2.2 and 2.3. The httplib.HTTPResponse object in 2.2 and 2.3 does not have a getheaders method so this function will use getheaders if available, but if not it will retrieve a few using getheader.` parse_uri(uri_string) `Creates a Uri object which corresponds to the URI string. This method can accept partial URIs, but it will leave missing members of the Uri unset.`

Data
`` |  | MIME_BOUNDARY = 'END_OF_PART' __author__ = 'j.s@google.com (Jeff Scudder)'

Author
`` |  | j.s@google.com (Jeff Scudder)