A bunch of more changes for the raw reader

* send end_of_data event for all kind of streams
* send process_finished event containing exit code of child process for executed programs
* move raw-tests to separate directory
* expose name of input stream to readers
* better handling of some error cases in raw reader
* new force_kill option for raw reader which SIGKILLs progesses on exit

The ordering of events how they arrive in the main loop is a bit peculiar at the moment.
The process_finished event arrives in scriptland before all of the other events, even though
it should be sent last. I have not yet fully figured that out.
This commit is contained in:
Bernhard Amann 2013-03-18 21:49:16 -07:00
parent f1c91f02ce
commit 8875953751
21 changed files with 166 additions and 174 deletions

View file

@ -85,6 +85,11 @@ public:
*/
const char* source;
/**
* The name of the input stream.
*/
const char* name;
/**
* A map of key/value pairs corresponding to the relevant
* filter's "config" table.
@ -99,12 +104,14 @@ public:
ReaderInfo()
{
source = 0;
name = 0;
mode = MODE_NONE;
}
ReaderInfo(const ReaderInfo& other)
{
source = other.source ? copy_string(other.source) : 0;
name = other.name ? copy_string(other.name) : 0;
mode = other.mode;
for ( config_map::const_iterator i = other.config.begin(); i != other.config.end(); i++ )