From d4125bcac0b1ff225dbfd90d2a5722a2f4e64ff8 Mon Sep 17 00:00:00 2001 From: Richard Purdie Date: Sun, 28 Nov 2010 15:01:08 +0000 Subject: bitbake: Simplfy pre and post cooker hooks Signed-off-by: Richard Purdie --- bitbake/lib/bb/cooker.py | 9 ++++++--- bitbake/lib/bb/server/none.py | 9 ++------- bitbake/lib/bb/server/xmlrpc.py | 7 +------ 3 files changed, 9 insertions(+), 16 deletions(-) diff --git a/bitbake/lib/bb/cooker.py b/bitbake/lib/bb/cooker.py index 33eb65e2f..054dac863 100644 --- a/bitbake/lib/bb/cooker.py +++ b/bitbake/lib/bb/cooker.py @@ -70,7 +70,7 @@ class BBCooker: self.bb_cache = None if server: - self.server = server.BitBakeServer(self, self.pre_serve, self.post_serve) + self.server = server.BitBakeServer(self) self.configuration = configuration @@ -925,6 +925,8 @@ class BBCooker: def server_main(cooker, func, *args): + cooker.pre_serve() + if cooker.configuration.profile: try: import cProfile as profile @@ -956,11 +958,12 @@ def server_main(cooker, func, *args): print("Raw profiling information saved to profile.log and processed statistics to profile.log.processed") - return ret else: - return func(*args) + ret = func(*args) + cooker.post_serve() + return ret class CookerExit(bb.event.Event): """ diff --git a/bitbake/lib/bb/server/none.py b/bitbake/lib/bb/server/none.py index 38f713c51..dafb2feba 100644 --- a/bitbake/lib/bb/server/none.py +++ b/bitbake/lib/bb/server/none.py @@ -109,11 +109,9 @@ class BitBakeServer(): # remove this when you're done with debugging # allow_reuse_address = True - def __init__(self, cooker, pre_serve, post_serve): + def __init__(self, cooker): self._idlefuns = {} self.commands = BitBakeServerCommands(self, cooker) - self.pre_serve = pre_serve - self.post_serve = post_serve def register_idle_function(self, function, data): """Register a function to be called while the server is idle""" @@ -169,10 +167,7 @@ class BitBakeServerFork(): class BitbakeUILauch(): def launch(self, serverinfo, uifunc, *args): - serverinfo.server.pre_serve() - ret = bb.cooker.server_main(serverinfo.cooker, uifunc, *args) - serverinfo.server.post_serve() - return ret + return bb.cooker.server_main(serverinfo.cooker, uifunc, *args) class BitBakeServerConnection(): def __init__(self, serverinfo): diff --git a/bitbake/lib/bb/server/xmlrpc.py b/bitbake/lib/bb/server/xmlrpc.py index 30b83d2b1..5d3cc3e10 100644 --- a/bitbake/lib/bb/server/xmlrpc.py +++ b/bitbake/lib/bb/server/xmlrpc.py @@ -87,7 +87,7 @@ class BitBakeServer(SimpleXMLRPCServer): # remove this when you're done with debugging # allow_reuse_address = True - def __init__(self, cooker, pre_serve, post_serve, interface = ("localhost", 0)): + def __init__(self, cooker, interface = ("localhost", 0)): """ Constructor """ @@ -100,8 +100,6 @@ class BitBakeServer(SimpleXMLRPCServer): commands = BitBakeServerCommands(self, cooker) self.autoregister_all_functions(commands, "") self.cooker = cooker - self.pre_serve = pre_serve - self.post_serve = post_serve def autoregister_all_functions(self, context, prefix): """ @@ -125,8 +123,6 @@ class BitBakeServer(SimpleXMLRPCServer): """ Serve Requests. Overloaded to honor a quit command """ - self.pre_serve() - self.quit = False self.timeout = 0 # Run Idle calls for our first callback while not self.quit: @@ -163,7 +159,6 @@ class BitBakeServer(SimpleXMLRPCServer): except: pass - self.post_serve() self.server_close() return -- cgit v1.2.3