Part of bzrlib.transport.http._pycurl View In Hierarchy
PyCurl is a Python binding to the C "curl" multiprotocol client.
This transport can be significantly faster than the builtin Python client. Advantages include: DNS caching.
Method | __init__ | Set the base path where files will be stored. |
Method | disconnect | Disconnect the transport. |
Method | has | See Transport.has() |
Method | _get_curl | Undocumented |
Method | _get | Get a file, or part of a file. |
Method | _setup_get_request | Undocumented |
Method | _setup_request | Do the common setup stuff for making a request |
Method | _get_full | Make a request for the entire file |
Method | _get_ranged | Make a request for just part of the file. |
Method | _parse_headers | Transform the headers provided by curl into an HTTPMessage |
Method | _post | POST body_bytes to .bzr/smart on this transport. |
Method | _raise_curl_http_error | Common curl->bzrlib error translation. |
Method | _debug_cb | Undocumented |
Method | _set_curl_options | Set options for all requests |
Method | _curl_perform | Perform curl operation and translate exceptions. |
Inherited from HttpTransportBase:
Method | get | Get the file at the given relative path. |
Method | get_smart_medium | See Transport.get_smart_medium. |
Method | recommended_page_size | See Transport.recommended_page_size(). |
Method | put_file | Copy the file-like object into the location. |
Method | mkdir | Create a directory at the given path. |
Method | rmdir | See Transport.rmdir. |
Method | append_file | Append the text in the file-like object into the final |
Method | copy | Copy the item at rel_from to the location at rel_to |
Method | copy_to | Copy a set of entries from self into another Transport. |
Method | move | Move the item at rel_from to the location at rel_to |
Method | delete | Delete the item at relpath |
Method | external_url | See bzrlib.transport.Transport.external_url. |
Method | is_readonly | See Transport.is_readonly. |
Method | listable | See Transport.listable. |
Method | stat | Return the stat information for a file. |
Method | lock_read | Lock the given file for shared (read) access. |
Method | lock_write | Lock the given file for exclusive (write) access. |
Method | _remote_path | See ConnectedTransport._remote_path. |
Method | _create_auth | Returns a dict containing the credentials provided at build time. |
Method | _degrade_range_hint | Undocumented |
Method | _readv | Get parts of the file at the given relative path. |
Method | _coalesce_readv | Issue several GET requests to satisfy the coalesced offsets |
Method | _attempted_range_header | Prepare a HTTP Range header at a level the server should accept. |
Static Method | _range_header | Turn a list of bytes ranges into a HTTP Range header value. |
Method | _redirected_to | Returns a transport suitable to re-issue a redirected request. |
Inherited from ConnectedTransport (via HttpTransportBase):
Method | clone | Return a new transport with root at self.base + offset |
Method | relpath | Return the local path portion from a given absolute path |
Method | abspath | Return the full url to the given relative path. |
Method | _user | Undocumented |
Method | _password | Undocumented |
Method | _host | Undocumented |
Method | _port | Undocumented |
Method | _path | Undocumented |
Method | _scheme | Undocumented |
Static Method | _split_url | Undocumented |
Static Method | _unsplit_url | Build the full URL for the given already URL encoded path. |
Method | _get_shared_connection | Get the object shared amongst cloned transports. |
Method | _set_connection | Record a newly created connection with its associated credentials. |
Method | _get_connection | Returns the transport specific connection object. |
Method | _get_credentials | Returns the credentials used to establish the connection. |
Method | _update_credentials | Update the credentials of the current connection. |
Method | _reuse_for | Returns a transport sharing the same connection if possible. |
Inherited from Transport (via HttpTransportBase, ConnectedTransport):
Method | create_prefix | Create all the directories leading down to self.base. |
Method | ensure_base | Ensure that the directory this transport references exists. |
Method | get_segment_parameters | Return the segment parameters for the top segment of the URL. |
Method | local_abspath | Return the absolute path on the local filesystem. |
Method | has_multi | Return True/False for each entry in relpaths |
Method | has_any | Return True if any of the paths exist. |
Method | iter_files_recursive | Iter the relative paths of files in the transports sub-tree. |
Method | get_bytes | Get a raw string of the bytes for a file at the given location. |
Method | readv | Get parts of the file at the given relative path. |
Method | get_multi | Get a list of file-like objects, one for each entry in relpaths. |
Method | put_bytes | Atomically put the supplied bytes into the given location. |
Method | put_bytes_non_atomic | Copy the string into the target location. |
Method | put_file_non_atomic | Copy the file-like object into the target location. |
Method | mkdir_multi | Create a group of directories |
Method | open_write_stream | Open a writable file stream at relpath. |
Method | append_bytes | Append bytes to a file at relpath. |
Method | append_multi | Append the text in each file-like or string object to |
Method | copy_multi | Copy a bunch of entries. |
Method | copy_tree | Copy a subtree from one relpath to another. |
Method | copy_tree_to_transport | Copy a subtree from one transport to another. |
Method | rename | Rename a file or directory. |
Method | move_multi | Move a bunch of entries. |
Method | move_multi_to | Move a bunch of entries to a single location. |
Method | delete_multi | Queue up a bunch of deletes to be done. |
Method | delete_tree | Delete an entire tree. This may require a listable transport. |
Method | __repr__ | Undocumented |
Method | stat_multi | Stat multiple files and return the information. |
Method | readlink | Return a string representing the path to which the symbolic link points. |
Method | hardlink | Create a hardlink pointing to source named link_name. |
Method | symlink | Create a symlink pointing to source named link_name. |
Method | list_dir | Return a list of all files at the given location. |
Method | _translate_error | Translate an IOError or OSError into an appropriate bzr error. |
Method | _pump | Most children will need to copy from one file-like |
Method | _get_total | Try to figure out how many entries are in multi, |
Method | _report_activity | Notify that this transport has activity. |
Method | _update_pb | Update the progress bar based on the current count |
Method | _iterate_over | Iterate over all entries in multi, passing them to func, |
Method | _seek_and_read | An implementation of readv that uses fp.seek and fp.read. |
Method | _sort_expand_and_combine | Helper for readv. |
Static Method | _coalesce_offsets | Yield coalesced offsets. |
Method | _can_roundtrip_unix_modebits | Return true if this transport can store and retrieve unix modebits. |
If and when required the transport willl reconnect automatically.
Parameters | relpath | Path relative to transport base URL |
ranges | None to get the whole file; or a list of _CoalescedOffset to fetch parts of a file. | |
tail_amount | The amount to get from the end of the file. | |
Returns | (http_code, result_file) |
Parameters | curl | The curl object to place the request on |
relpath | The relative path that we want to get | |
Returns | (abspath, data, header) abspath: full url data: file that will be filled with the body header: file that will be filled with the headers |
Returns | (response code, response body file-like object). |
Some methods may choose to override this for particular cases.
The URL and code are automatically included as appropriate.
Parameters | info | Extra information to include in the message. |
body | File-like object from which the body of the page can be read. |