Advertisement
Guest User

Untitled

a guest
May 24th, 2015
201
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.48 KB | None | 0 0
  1. import socket
  2. import pickle
  3. import threading
  4. import time
  5.  
  6. class Pipes(socket.socket):
  7.  
  8. def __init__(self,event,host,port):
  9. super(Pipes,self).__init__(socket.AF_INET,socket.SOCK_DGRAM)
  10. self.bind((host,port))
  11. self.settimeout(100)
  12. self.event = event
  13. self.host = host
  14. self.port = port
  15. print 'Created socket'
  16.  
  17. def negotiate(self):
  18. self.connect((self.host,self.port))
  19. return True
  20.  
  21. def sendMessage(self,dest_host, dest_port):
  22. print 'Establishing Connection'
  23. self.sendto(self.event,(dest_host,dest_port))
  24.  
  25. def submitReactor(self,recv_buffer=4096,delim='\n'):
  26. buffer = ''
  27. while True:
  28. conn,addr = self.recvfrom(recv_buffer)
  29. if conn:
  30. buffer += conn
  31. print buffer
  32. else:
  33. break
  34. print ' Received Connection and says : ' + buffer
  35.  
  36. def receive(self):
  37. print 'Waiting.. To receive'
  38. t = threading.Thread(target = self.submitReactor , args = ())
  39. t.daemon = False
  40. t.start()
  41.  
  42. def __del__(self):
  43. self.close()
  44. print 'sock closed'
  45.  
  46.  
  47. if __name__ == '__main__':
  48. x = Pipes('x is awesome ','localhost',8088)
  49. x.receive()
  50. print 'Lets do something else '
  51. time.sleep(2)
  52. x.sendMessage('localhost',9898) #x
  53. x.sendMessage('localhost',9999) #y
  54. x.sendMessage('localhost',10898) #w
  55. time.sleep(4)
  56. x.sendMessage('localhost',9899) #z
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement