first version of the Stream Processor usign Observer pattern