Example #1
0
	def elabora(self,oClient):
		"""
			oClient			:			tupla che identifica il client, così formata
											[0] => socket, oggetto socket riferito al client. Identifica la connessione con il client
											[1] => address
											[0] => "192.168.0.183", stringa -> indirizzo del client
											[1] => 50465, numerico -> porta del client		
			Ritorna			:			bRet -> logico, true = tutto ok | false = errore
		"""
		bRet = False
		print("Elaboro...")
		
		LogBuffer.write("Elaboro richiesta da: {0}:{1}".format(oClient[1][0],oClient[1][1]),4)
		
		sData = self.oSocket.recv(oClient,MSGLEN)

		LogBuffer.write("{0} dice: {1}".format(oClient[1][0],sData),4)

		if sData == "":
			return bRet

		aData = json.loads(sData)

		bOk = self.parse(aData,oClient[0])

		if not bOk:
			LogBuffer.write("Errore durante il parse del comando. Controllare log precedenti per maggiori informazioni",3)
		else:
			bRet = True	

		return bRet
Example #2
0
from classes.Server import Server
from classes.LogBuffer import LogBuffer
import os

oServer = Server()

nPid = os.getpid()

while 1:

	# Se sono nel processo figlio elaboro la richiesta trasmessa dal padre
	if nPid == 0:
		bOk = oServer.elabora(oClient)

		if not bOk:
			LogBuffer.write("Errore durante l'elaborazione della richiesta",3)
		else:
			LogBuffer.write("Richiesta elaborata correttamente",4)


		# Termino l'esecuzione del processo
		os._exit(0)
	else:
		print("Ascolto...")
		
		try:
			# Cosa fa				:				Attende di ricevere dei dati
			# Ritorna				:				oClient -> tupla che identifica il client, così formata
			# 										[0] => socket, oggetto socket riferito al client. Identifica la connessione con il client
			# 										[1] => address
			#											[0] => "192.168.0.183", stringa -> indirizzo del client