From ae1ea51aaab73e010d1c3db39df058bebebc11dd Mon Sep 17 00:00:00 2001 From: Alexandru DAMIAN Date: Wed, 18 Sep 2013 13:15:52 +0100 Subject: bitbake: event: adding generic event for metadata usage Adding the generic bb.event.MetadataEvent that is targeted specifically at metadata usage. This is needed in order to let the metadata code send and receive events during asynchrous execution without having to define each event specifically in Bitbake. Metadata code should subscribe to and fire the MetadataEvent in order to communicate asynchronously, and identify the object using event.type field, and parse the data in the event.data field. Knotty UI will ignore these event by default. This deprecates RequestPackageInfo/PackageInfo, and that event pair will be removed in the future. Signed-off-by: Alexandru DAMIAN Signed-off-by: Richard Purdie --- lib/bb/event.py | 10 ++++++++++ lib/bb/ui/knotty.py | 1 + 2 files changed, 11 insertions(+) diff --git a/lib/bb/event.py b/lib/bb/event.py index 67cfceaf5..10eae5fde 100644 --- a/lib/bb/event.py +++ b/lib/bb/event.py @@ -589,6 +589,16 @@ class PackageInfo(Event): Event.__init__(self) self._pkginfolist = pkginfolist +class MetadataEvent(Event): + """ + Generic event that target for OE-Core classes + to report information during asynchrous execution + """ + def __init__(self, eventtype, eventdata): + Event.__init__(self) + self.type = eventtype + self.data = eventdata + class SanityCheck(Event): """ Event to issue sanity check diff --git a/lib/bb/ui/knotty.py b/lib/bb/ui/knotty.py index 0211b50ab..c1ee9f526 100644 --- a/lib/bb/ui/knotty.py +++ b/lib/bb/ui/knotty.py @@ -477,6 +477,7 @@ def main(server, eventHandler, params, tf = TerminalFilter): # ignore if isinstance(event, (bb.event.BuildBase, + bb.event.MetadataEvent, bb.event.StampUpdate, bb.event.ConfigParsed, bb.event.RecipeParsed, -- cgit 1.2.3-korg