view commitwatcher/event.py @ 45:32cf3d3469c3 default tip

assert
author Jeff Hammel <jhammel@mozilla.com>
date Thu, 07 Nov 2013 14:19:06 -0800
parents 97dfcdeb9a4e
children
line wrap: on
line source

"""
event system for watching commits
"""

__all__ = ['EventHandler', 'PathEventHandler']

class EventHandler(object):
    """ABC for events"""

    def __init__(self, *notifiers):
        self.notifiers = list(notifiers)

    def match(self, commit):
        """does this event trigger the handler?"""
        return True  # abstractmethod

class PathEventHandler(EventHandler):
    """events based on paths"""

    def match(self, commit):
        pass # TODO: move path handling -> commit object