def __init__(self, app):
     """
     Construction
     """
     self._app = app
     # Get the task daa required
     task = self._find_task(self._app.context.task['id'])
     # Initialize the event filter instance
     self._event_filter = EventsFilter(self._app.shotgun, task)
     self._event_filter.add_filter(TaskStatusChangedFilter)
     self._event_filter.add_filter(NewPublishFilter)
     self._event_filter.add_filter(NewNoteFilter)
     # Initialize the notification widget
     self._widget = TankNotificationWidget(self, self._event_filter)
def test():
    task_id = 560
    task = sg.find_one("Task",
                       filters=[['id', 'is', task_id]],
                       fields=['id', 'entity'])

    event_filter = EventsFilter(sg, task)
    event_filter.last_event_id = 239000
    event_filter.add_filter(TaskStatusChangedFilter)
    event_filter.add_filter(NewPublishFilter)
    event_filter.add_filter(NewNoteFilter)
    event_filter.run()
    print '-' * 100
    for f in event_filter.filters():
        for n in f.get_notifications():
            print '--'
            print n.get_message()
            print n.get_url()