[bitbake-devel] [PATCH 6/9] bitbake: Add client socket info for BitBakeServerConnection
Dongxiao Xu
dongxiao.xu at intel.com
Thu Feb 23 13:47:18 UTC 2012
In server/client split model, the client will bind to a specific address
and port. We need to pass the values to BitBakeServerConnection().
Signed-off-by: Dongxiao Xu <dongxiao.xu at intel.com>
---
lib/bb/server/xmlrpc.py | 4 ++--
lib/bb/ui/uievent.py | 7 ++++---
2 files changed, 6 insertions(+), 5 deletions(-)
diff --git a/lib/bb/server/xmlrpc.py b/lib/bb/server/xmlrpc.py
index c53cee4..eff8009 100644
--- a/lib/bb/server/xmlrpc.py
+++ b/lib/bb/server/xmlrpc.py
@@ -247,9 +247,9 @@ class BitbakeServerInfo():
self.port = port
class BitBakeServerConnection():
- def __init__(self, serverinfo):
+ def __init__(self, serverinfo, clientinfo=("localhost", 0)):
self.connection = _create_server(serverinfo.host, serverinfo.port)
- self.events = uievent.BBUIEventQueue(self.connection)
+ self.events = uievent.BBUIEventQueue(self.connection, clientinfo)
for event in bb.event.ui_queue:
self.events.queue_event(event)
diff --git a/lib/bb/ui/uievent.py b/lib/bb/ui/uievent.py
index 0e73817..28817a2 100644
--- a/lib/bb/ui/uievent.py
+++ b/lib/bb/ui/uievent.py
@@ -28,13 +28,14 @@ import socket, threading, pickle
from SimpleXMLRPCServer import SimpleXMLRPCServer, SimpleXMLRPCRequestHandler
class BBUIEventQueue:
- def __init__(self, BBServer):
+ def __init__(self, BBServer, clientinfo=("localhost, 0")):
self.eventQueue = []
self.eventQueueLock = threading.Lock()
self.eventQueueNotify = threading.Event()
self.BBServer = BBServer
+ self.clientinfo = clientinfo
self.t = threading.Thread()
self.t.setDaemon(True)
@@ -72,7 +73,7 @@ class BBUIEventQueue:
def startCallbackHandler(self):
- server = UIXMLRPCServer()
+ server = UIXMLRPCServer(self.clientinfo)
self.host, self.port = server.socket.getsockname()
server.register_function( self.system_quit, "event.quit" )
@@ -98,7 +99,7 @@ class BBUIEventQueue:
class UIXMLRPCServer (SimpleXMLRPCServer):
- def __init__( self, interface = ("localhost", 0) ):
+ def __init__( self, interface ):
self.quit = False
SimpleXMLRPCServer.__init__( self,
interface,
--
1.7.4.1
More information about the bitbake-devel
mailing list