Example #1
0
class Communicator:
    messageQueue = None

    def __init__(self, peer):
        # print "A communicator is created!"
        self.peer = peer
        self.messageQueue = peer.messageQueue
        self.mylistener = Listener(peer)
        self.mylistener.setDaemon(True)
        self.mylistener.start()
        # self.operation()

    def send(self, host, sendPort, content):
        # print "sending ..."

        # socket setting
        buf = 1024 * 1024
        addr = (host, sendPort)

        sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
        try:
            sock.connect(addr)
        except Exception:
            print "Connection lost with: ", addr
            return False
        sock.send(content)
        sock.close()
        return True
        # sock.sendto(content, addr)
        # sock.close()

    # def rcv(self, myPId):
    #     msgList = []
    #     newMsgQueue = []
    #     for item in self.messageQueue:
    #         msgList.append(item)
    #     self.messageQueue = newMsgQueue
    #     return msgList

    def prtMsgQueue(self):
        for item in self.messageQueue:
            print item