node.username);
def getNodeStatus(self, node):
- msg_data = self.sendComm(node.public_address,
- int(node.listen_port),
- GET_CLIENTS,
- "")
- # lista (id, type, metafile)
- print msg_data
+ self.Commander.getClients(node.public_address,
+ int(node.listen_port))
def getNodeOutput(self, node):
- msg_data = self.sendComm(node.public_address,
- int(node.listen_port),
- GET_OUTPUT,
- "")
- # lista (
- print msg_data
+ self.Commander.getOutput(node.public_address,
+ int(node.listen_port))
def applyNodeTC(self, node):
si = self.swarm.getSIByNode(node)
int(node.listen_port),
config_data)
if ret:
- si.pid = msg_data
+ si.pid = ret
def stopSI(self, si):
#self.printDummyCommand(node.public_address, node.listen_port, START_MSG, config_data)
for node in self.nodes.getNodes():
#self.applyTC(node)
self.startNodeServer(node)
-
+ #self.getNodeStatus(node)
+
for si in self.swarm.getSIs():
self.startSI(si)
+ #for si in self.swarm.getSIs():
+ # self.stopSI(si)
def run(self):
self.printUsage()
self.sshc.close()
def sendComm(self, hostname, port, msg_type, config_data):
+ #print "sendcomm ", config_data
try:
self.sock.connect((hostname, port))
self.sendMsg(pickle.dumps((msg_type, config_data)))
def recvMsg(self):
msg = ''
- chunk = self.sock.recv(MSGLEN)
- if chunk == '':
- raise RuntimeError, "socket connection broken"
- msg = msg + chunk
+ while 1:
+ chunk = self.sock.recv(BUFFER_SIZE)
+ if not chunk:
+ break
+ #raise RuntimeError, "socket connection broken"
+
+ msg = msg + chunk
+ if len(chunk) < BUFFER_SIZE:
+ break
+
+ dd = pickle.loads(msg)
+ return dd
- return msg
+ #chunk = self.sock.recv(MSGLEN)
+ #if chunk == '':
+ # raise RuntimeError, "socket connection broken"
+ # msg = msg + chunk
+ #
+ # return msg
def startServer(self, public_address, ssh_port, private_address, username):
comm = SERVER_TYPE+" "+SERVER_DIR+SERVER_FILE+" "+"start " + private_address
listen_port,
START_MSG,
config_data)
- print listen_port
- if msg_type == ACK_MSG:
- return msg_data
- else:
- print msg_data
- return -1
+ #print listen_port
+ #if msg_type == ACK_MSG:
+ # return msg_data
+ #else:
+ # print msg_data
+ # return -1
def printDummyCommand(self, public_address, public_port, option1, data):
print "----------------------"