diff options
Diffstat (limited to 'pygerrit')
| -rw-r--r-- | pygerrit/events.py | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/pygerrit/events.py b/pygerrit/events.py index f525320..3774b0c 100644 --- a/pygerrit/events.py +++ b/pygerrit/events.py @@ -301,3 +301,26 @@ class ReviewerAddedEvent(GerritEvent): return u"<ReviewerAddedEvent>: %s %s %s" % (self.change, self.patchset, self.reviewer) + + +@GerritEventFactory.register("topic-changed") +class TopicChangedEvent(GerritEvent): + + """ Gerrit "topic-changed" event. """ + + def __init__(self, json_data): + super(TopicChangedEvent, self).__init__(json_data) + try: + self.change = Change(json_data["change"]) + self.changer = Account(json_data["changer"]) + if "oldTopic" in json_data: + self.oldtopic = json_data["oldTopic"] + else: + self.oldtopic = "" + except KeyError as e: + raise GerritError("TopicChangedEvent: %s" % e) + + def __repr__(self): + return u"<TopicChangedEvent>: %s %s [%s]" % (self.change, + self.changer, + self.oldtopic) |
