diff --git a/TODO.rst b/TODO.rst index d998844..241084e 100644 --- a/TODO.rst +++ b/TODO.rst @@ -8,6 +8,28 @@ Core #### +New feature: sources +==================== + +Currently the way we get data into HSSG is a mess without any consistency. I +propose the idea of "sources", "processors" and "sinks". + +- A source is some object which represents the initial point of data +- A processor is some object which transforms data into other data +- A sink is the final destination of the data which produces the actual output + file + +We already have artifacts as sinks and templates as filters. This only leaves +sources to be implemented. A source is some object which implements the source +protocol: + +- `GET-DATA`: Returns the data for further processing + +It is up to the source to implement for example some form of caching. A source +could read data from a file, it could be hard-coded data, or it could use OCR +to parse a message delivered by carrier pigeon. + + Cleanup =======