Part of libcloud.common.base View Source View In Hierarchy
Known subclasses: libcloud.common.base.PollingConnection, libcloud.common.xmlrpc.XMLRPCConnection, libcloud.compute.base.ConnectionKey
A Base Connection class to derive from.
Method | __init__ | Undocumented |
Method | set_context | Undocumented |
Method | connect | Establish a connection with the API server. |
Method | user_agent_append | Append a token to a user agent string. |
Method | request | Request a given `action`. |
Method | morph_action_hook | Undocumented |
Method | add_default_params | Adds default parameters (such as API key, version, etc.) to the passed `params` |
Method | add_default_headers | Adds default headers (such as Authorization, X-Foo-Bar) to the passed `headers` |
Method | pre_connect_hook | A hook which is called before connecting to the remote server. This hook can perform a final manipulation on the params, headers and url parameters. |
Method | encode_data | Encode body data. |
Method | _tuple_from_url | Undocumented |
Method | _user_agent | Undocumented |
Establish a connection with the API server. @type host: C{str} @param host: Optional host to override our default @type port: C{int} @param port: Optional port to override our default @returns: A connection
Append a token to a user agent string. Users of the library should call this to uniquely identify thier requests to a provider. @type token: C{str} @param token: Token to add to the user agent.
Request a given `action`. Basically a wrapper around the connection object's `request` that does some helpful pre-processing. @type action: C{str} @param action: A path. This can include arguments. If included, any extra parameters are appended to the existing ones. @type params: C{dict} @param params: Optional mapping of additional parameters to send. If None, leave as an empty C{dict}. @type data: C{unicode} @param data: A body of data to send with the request. @type headers: C{dict} @param headers: Extra headers to add to the request None, leave as an empty C{dict}. @type method: C{str} @param method: An HTTP method such as "GET" or "POST". @type raw: C{bool} @param raw: True to perform a "raw" request aka only send the headers and use the rawResponseCls class. This is used with storage API when uploading a file. @return: An instance of type I{responseCls}
Adds default parameters (such as API key, version, etc.) to the passed `params` Should return a dictionary.
Adds default headers (such as Authorization, X-Foo-Bar) to the passed `headers` Should return a dictionary.
A hook which is called before connecting to the remote server. This hook can perform a final manipulation on the params, headers and url parameters. @type params: C{dict} @param params: Request parameters. @type headers: C{dict} @param headers: Request headers.
Encode body data. Override in a provider's subclass.