libzypp 17.31.23
|
Bidirectional stream to external data. More...
#include <base/ExternalDataSource.h>
Public Member Functions | |
ExternalDataSource (FILE *inputfile=0, FILE *outputfile=0) | |
Create a new instance. | |
virtual | ~ExternalDataSource () |
Implicitly close the connection. | |
bool | send (const char *buffer, size_t length) |
Send some data to the output stream. | |
bool | send (std::string s) |
Send some data down the stream. | |
size_t | receive (char *buffer, size_t length) |
Read some data from the input stream. | |
std::string | receiveLine () |
Read one line from the input stream. | |
std::string | receiveLine (io::timeout_type timeout) |
Read one line from the input stream. | |
std::string | receiveUpto (char c) |
Read characters into a string until delimiter c or EOF is read. | |
std::string | receiveUpto (char c, io::timeout_type timeout) |
Read characters into a string until delimiter c or EOF is read or the timeout is reached. | |
void | setBlocking (bool mode) |
Set the blocking mode of the input stream. | |
virtual int | close () |
Close the input and output streams. | |
FILE * | inputFile () const |
Return the input stream. | |
FILE * | outputFile () const |
Return the output stream. | |
Protected Attributes | |
FILE * | inputfile |
FILE * | outputfile |
Private Attributes | |
char * | linebuffer |
size_t | linebuffer_size |
Bidirectional stream to external data.
Definition at line 27 of file ExternalDataSource.h.
zypp::externalprogram::ExternalDataSource::ExternalDataSource | ( | FILE * | inputfile = 0 , |
FILE * | outputfile = 0 |
||
) |
Create a new instance.
inputfile | The stream for reading |
outputfile | The stream for writing Either can be NULL if no reading/writing is allowed. |
Definition at line 34 of file ExternalDataSource.cc.
|
virtual |
Implicitly close the connection.
Definition at line 43 of file ExternalDataSource.cc.
bool zypp::externalprogram::ExternalDataSource::send | ( | const char * | buffer, |
size_t | length | ||
) |
Send some data to the output stream.
buffer | The data to send |
length | The size of it |
Definition at line 52 of file ExternalDataSource.cc.
bool zypp::externalprogram::ExternalDataSource::send | ( | std::string | s | ) |
Send some data down the stream.
string | The data to send |
Definition at line 65 of file ExternalDataSource.cc.
size_t zypp::externalprogram::ExternalDataSource::receive | ( | char * | buffer, |
size_t | length | ||
) |
Read some data from the input stream.
buffer | Where to put the data |
length | How much to read at most Returns the amount actually received |
Definition at line 101 of file ExternalDataSource.cc.
std::string zypp::externalprogram::ExternalDataSource::receiveLine | ( | ) |
Read one line from the input stream.
Returns the line read, including the terminator.
Definition at line 115 of file ExternalDataSource.cc.
std::string zypp::externalprogram::ExternalDataSource::receiveLine | ( | io::timeout_type | timeout | ) |
Read one line from the input stream.
Returns the line read, including the terminator.
io::TimeoutException | if the timeout is reached |
Definition at line 129 of file ExternalDataSource.cc.
std::string zypp::externalprogram::ExternalDataSource::receiveUpto | ( | char | c | ) |
Read characters into a string until delimiter c or EOF is read.
Definition at line 73 of file ExternalDataSource.cc.
std::string zypp::externalprogram::ExternalDataSource::receiveUpto | ( | char | c, |
io::timeout_type | timeout | ||
) |
Read characters into a string until delimiter c or EOF is read or the timeout is reached.
io::TimeoutException | if the timeout is reached |
Definition at line 90 of file ExternalDataSource.cc.
void zypp::externalprogram::ExternalDataSource::setBlocking | ( | bool | mode | ) |
Set the blocking mode of the input stream.
mode | True if the reader should be blocked waiting for input. This is the initial default. |
Definition at line 109 of file ExternalDataSource.cc.
|
virtual |
Close the input and output streams.
Reimplemented in zypp::ExternalProgram.
Definition at line 135 of file ExternalDataSource.cc.
|
inline |
Return the input stream.
Definition at line 118 of file ExternalDataSource.h.
|
inline |
Return the output stream.
Definition at line 123 of file ExternalDataSource.h.
|
protected |
Definition at line 30 of file ExternalDataSource.h.
|
protected |
Definition at line 31 of file ExternalDataSource.h.
|
private |
Definition at line 34 of file ExternalDataSource.h.
|
private |
Definition at line 35 of file ExternalDataSource.h.