travis-ci/travis-watcher-macosx — pull request #14 by henrikhodne (2012-12-01 23:03:37+00:00)
Title: [WIP] Rewrite Notification part of app

This is mostly a brain-dump right now, putting it here in case someone has comments.

I've come to the realisation that the notification part of the app is like a stream or pipeline starting with the Pusher stream and ending in Notification Center. After a bit of notepaper scribbling, I ended up with something like this for the stream:

1. `BuildEventStream` emits `BuildEvent` objects from the Pusher stream.
2. `EventFilter` consumes these, filters according to a `FilterPreferences` object and emits `BuildEvent` objects
3. `EventConverter` consumes the filtered `BuildEvent` objects and emits `Notification` objects
4. `UserNotifier` consumes the `Notification` objects and shows the notifications to the user through Notification Center

I'm working on the code for this now, and I'll convert this issue into a pull request once I have something that works.