Change TRIGGER_RETURN and TRIGGER_EXCEPTION to an enum

This commit is contained in:
jesopo 2019-05-01 17:13:41 +01:00
parent 6e25505bba
commit aa1b457632

View file

@ -1,11 +1,12 @@
import queue, os, select, socket, threading, time, traceback, typing, uuid import enum, queue, os, select, socket, threading, time, traceback, typing, uuid
from src import EventManager, Exports, IRCServer, Logging, ModuleManager from src import EventManager, Exports, IRCServer, Logging, ModuleManager
from src import Socket, utils from src import Socket, utils
VERSION = "v1.5.0" VERSION = "v1.5.0"
TRIGGER_RETURN = 1 class TriggerResult(enum.Enum):
TRIGGER_EXCEPTION = 2 Return = 1
Exception = 2
class Bot(object): class Bot(object):
def __init__(self, directory, args, cache, config, database, events, def __init__(self, directory, args, cache, config, database, events,
@ -53,9 +54,9 @@ class Bot(object):
self._trigger_client.send(b"TRIGGER") self._trigger_client.send(b"TRIGGER")
type, returned = func_queue.get(block=True) type, returned = func_queue.get(block=True)
if type == TRIGGER_EXCEPTION: if type == TriggerResult.Exception:
raise returned raise returned
elif type == TRIGGER_RETURN: elif type == TriggerResult.Return:
return returned return returned
def add_server(self, server_id: int, connect: bool = True, def add_server(self, server_id: int, connect: bool = True,
@ -197,10 +198,10 @@ class Bot(object):
for func, func_queue in self._trigger_functions: for func, func_queue in self._trigger_functions:
try: try:
returned = func() returned = func()
type = TRIGGER_RETURN type = TriggerResult.Return
except Exception as e: except Exception as e:
returned = e returned = e
type = TRIGGER_EXCEPTION type = TriggerResult.Exception
func_queue.put([type, returned]) func_queue.put([type, returned])
self._trigger_functions.clear() self._trigger_functions.clear()