From 8cf84fd61d42ed3c211bee327dcb646b934da660 Mon Sep 17 00:00:00 2001
From: Fernando <fce15@inf.ufpr.br>
Date: Tue, 1 Nov 2016 08:58:15 -0200
Subject: [PATCH] Protocol is working

---
 Canguru/Cliente.py | 115 ++++++++++++++++++++++++++-------------------
 1 file changed, 66 insertions(+), 49 deletions(-)

diff --git a/Canguru/Cliente.py b/Canguru/Cliente.py
index acc795b..b713579 100755
--- a/Canguru/Cliente.py
+++ b/Canguru/Cliente.py
@@ -8,6 +8,7 @@
 #Origem - 4 Bytes
 #Prioridade - 4 Bytes
 #Tamanho - 32 bytes
+#Marca (inicio msg) - 1 Byte
 #Menssagem - ??
 #CRC - 4 bytes
 
@@ -21,73 +22,89 @@ SEND_PORT = 5000        # Porta que o Servidor envia
 RECV_PORT = 5001        # Porta que o Servidor recebe
 
 class FuncThread(threading.Thread):
-    def __init__(self, target, *args):
-        self._target = target
+    def __init__(self, tarset, *args):
+        self._tarset = tarset
         self._args = args
         threading.Thread.__init__(self)
  
     def run(self):
-        self._target(*self._args)
+        self._tarset(*self._args)
 
 class Protocol:
-	def getMarca(self):
-		self.marca = "~" #Marca
-
-	#Get destiny message
-	def getDestiny(self):
-		print 'Destino:'
-		self.destiny = raw_input()
-		self.destiny = str(self.destiny)
-
-	def getOrigin(self):
-		self.origin = "1"
-
-	#Get Priority messsage
-	def getPriority(self):
-		print 'Prioridade:'
-		self.priority = raw_input()
-		self.priority = str(self.priority)
-
-	#Get message 
-	def getMessage(self):
-		print   'Mensagem:'
-		self.msg = raw_input()
-
-	#Get sizeof message
-	def getSizeof (self):
-		self.sizemsg = sys.getsizeof(self.msg)
-		self.sizemsg = str(self.sizemsg) #String convert
-		print self.sizemsg
+    def setMarca(self):
+	self.marca = "~" #Marca
+
+    #set destiny message
+    def setDestiny(self):
+	print 'Destino:'
+	self.destiny = raw_input()
+	self.destiny = str(self.destiny)
+
+    def setOrigin(self):
+	self.origin = "1"
+
+    #set Priority messsage
+    def setPriority(self):
+	print 'Prioridade:'
+	self.priority = raw_input()
+	self.priority = str(self.priority)
+
+    #set message 
+    def setMessage(self):
+	print   'Mensagem:'
+	self.msg = raw_input()
+
+    #set sizeof message
+    def setSizeof (self):
+	self.sizemsg = len(self.msg)
+	self.sizemsg = str(self.sizemsg) #String convert
+	print self.sizemsg
     
-	#Get CRC32
-	def getCRC32(self):
-		buff = (binascii.crc32(self.msg) & 0xFFFFFFFF)
-		self.crc = "%08X" % buff
-
-	def empacotar(self):
-		return  self.marca + self.destiny + self.origin + self.priority + self.sizemsg + self.msg + self.crc
+    #set CRC32
+    def setCRC32(self):
+	buff = (binascii.crc32(self.msg) & 0xFFFFFFFF)
+	self.crc = "%08X" % buff
+
+    def empacotar(self):
+        return  self.marca + self.destiny + self.origin + self.priority +  self.marca + self.sizemsg + self.msg + self.crc
+
+    def desempacota(self, msg):
+        self.marca = msg[0]
+        self.destiny = msg[1]
+        self.origin = msg[2]
+        self.priority = msg[3]
+        #slint
+                
 
 def client ():
 	udp = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
 	dest = (HOST, SEND_PORT)
 	print 'Para sair digite exit\n'
 	print 'Mensagem:'
-	hostname = socket.gethostname()
+	hostname = socket.sethostname()
 	protocolMessage = Protocol()
-	protocolMessage.getMarca()
-	protocolMessage.getDestiny()
-	protocolMessage.getOrigin()
-	protocolMessage.getPriority()
-	protocolMessage.getMessage()
-	protocolMessage.getSizeof()
-	protocolMessage.getCRC32()
+	protocolMessage.setMarca()
+	protocolMessage.setDestiny()
+	protocolMessage.setOrigin()
+	protocolMessage.setPriority()
+	protocolMessage.setMessage()
+	protocolMessage.setSizeof()
+	protocolMessage.setCRC32()
 	msg = protocolMessage.empacotar()
 	while True:
 		udp.sendto (hostname, dest) # Envia Hostname
 		udp.sendto (msg, dest) #Envia Mensagem
 		print 'Mensagem:'
-		msg = raw_input()
-		hostname = socket.gethostname()
+	        protocolMessage = Protocol()
+	        protocolMessage.setMarca()
+	        protocolMessage.setDestiny()
+	        protocolMessage.setOrigin()
+	        protocolMessage.setPriority()
+	        protocolMessage.setMessage()
+	        protocolMessage.setSizeof()
+	        protocolMessage.setCRC32()
+	        msg = protocolMessage.empacotar()
+		hostname = socket.sethostname()
 	udp.close()
 
 def server ():
@@ -103,7 +120,7 @@ def server ():
     udp.close()
 
 #def killThread ():
-    
+#######################MAIN#############################
 
 if len(sys.argv) > 1:
     AUX = RECV_PORT
-- 
GitLab