Example #1
0
	def start(self):
		self.sync.start()
		while 1 and self.connected:
			data = self.sock.recv()
			try:
				if data[1] in self.routes:
					self.routes[data[1]].run(data[0], self)
			except Exception as e:
				if not is_socket_related_error(e):
					capture_trace()
				break
Example #2
0
def sock_handler(sock, routes, handler):
	while 1:
		try:
			data = sock.recv()
			if data[1] in routes:
				routes[data[1]].run(data[0], handler)
		except (OSError, socket.error, Exception) as e:
			if str(e) != "[Errno 9] Bad file descriptor":
				capture_trace()
			handler.invoke_disconnect()
			break
Example #3
0
def convert_data(data, data_type):
	try:
		if data_type == DataTypes.str:
			data = data.decode()
		elif data_type == DataTypes.int:
			data = int(data.decode())
		elif data_type == DataTypes.float:
			data = float(data.decode())
		elif data_type == DataTypes.json:
			data = json.loads(data.decode())
	except Exception:
		capture_trace()
		raise ConvertFailedError()
	return data
Example #4
0
	def print_trace(self, sock):
		Logging.error("An unhandled exception forced the controller for '%s:%d' to terminate." % (sock.address, sock.port))
		capture_trace()