|
Exiv2
|
Internal Pimpl structure of class HttpIo. More...
Inheritance diagram for Exiv2::HttpIo::HttpImpl:
Collaboration diagram for Exiv2::HttpIo::HttpImpl:Public Member Functions | |
| HttpImpl (const std::string &path, size_t blockSize) | |
| Constructor. | |
| long | getFileLength () |
| Get the length (in bytes) of the remote file. More... | |
| void | getDataByRange (long lowBlock, long highBlock, std::string &response) |
| Get the data by range. More... | |
| void | writeRemote (const byte *data, size_t size, long from, long to) |
| Submit the data to the remote machine. The data replace a part of the remote file. The replaced part of remote file is indicated by from and to parameters. More... | |
Public Member Functions inherited from Exiv2::RemoteIo::Impl | |
| Impl (const std::string &path, size_t blockSize) | |
| Constructor. | |
| virtual | ~Impl () |
| Destructor. Releases all managed memory. | |
| virtual size_t | populateBlocks (size_t lowBlock, size_t highBlock) |
| Get the data from the remote machine and write them to the memory blocks. More... | |
Public Attributes | |
| Exiv2::Uri | hostInfo_ |
| the host information extracted from the path | |
Public Attributes inherited from Exiv2::RemoteIo::Impl | |
| std::string | path_ |
| (Standard) path | |
| size_t | blockSize_ |
| Size of the block memory. | |
| BlockMap * | blocksMap_ |
| An array contains all blocksMap. | |
| size_t | size_ |
| The file size. | |
| long | idx_ |
| Index into the memory area. | |
| bool | isMalloced_ |
| Was the blocksMap_ allocated? | |
| bool | eof_ |
| EOF indicator. | |
| Protocol | protocol_ |
| the protocol of url | |
Protected Member Functions | |
| HttpImpl (const HttpImpl &rhs) | |
| Copy constructor. | |
| HttpImpl & | operator= (const HttpImpl &rhs) |
| Assignment. | |
|
virtual |
Get the data by range.
| lowBlock | The start block index. |
| highBlock | The end block index. |
| response | The data from the server. |
| Error | if the server returns the error code. |
Implements Exiv2::RemoteIo::Impl.
References Exiv2::RemoteIo::Impl::blockSize_, Exiv2::Uri::Host, hostInfo_, Exiv2::Uri::Path, Exiv2::Uri::Port, and Exiv2::string.
Referenced by Exiv2::HttpIo::HttpIo().
|
virtual |
Get the length (in bytes) of the remote file.
| Error | if the server returns the error code. |
Implements Exiv2::RemoteIo::Impl.
References Exiv2::Uri::Host, hostInfo_, Exiv2::Uri::Path, Exiv2::Uri::Port, and Exiv2::string.
Referenced by Exiv2::HttpIo::HttpIo().
|
virtual |
Submit the data to the remote machine. The data replace a part of the remote file. The replaced part of remote file is indicated by from and to parameters.
| data | The data are submitted to the remote machine. |
| size | The size of data. |
| from | The start position in the remote file where the data replace. |
| to | The end position in the remote file where the data replace. |
| Error | if it fails. |
Implements Exiv2::RemoteIo::Impl.
References Exiv2::base64encode(), Exiv2::getEnv(), Exiv2::Uri::Host, hostInfo_, Exiv2::Uri::Parse(), Exiv2::Uri::Path, Exiv2::Uri::Port, Exiv2::string, and Exiv2::urlencode().
Referenced by Exiv2::HttpIo::HttpIo().
1.8.13