Separate out everything into files and implement a modules system to segment commands
This commit is contained in:
30
core/parser.py
Normal file
30
core/parser.py
Normal file
@@ -0,0 +1,30 @@
|
||||
from core.main import *
|
||||
from utils.logging.log import *
|
||||
from utils.logging.send import *
|
||||
|
||||
def parseCommand(addr, authed, data):
|
||||
#call command modules with: (addr, authed, data, spl, success, failure, info, incUsage, length)
|
||||
spl = data.split()
|
||||
if addr in connections.keys():
|
||||
obj = connections[addr]
|
||||
else:
|
||||
warn("Got connection object with no instance in the address pool")
|
||||
return
|
||||
|
||||
success = lambda data: sendSuccess(addr, data)
|
||||
failure = lambda data: sendFailure(addr, data)
|
||||
info = lambda data: sendInfo(addr, data)
|
||||
|
||||
incUsage = lambda mode: incorrectUsage(addr, mode)
|
||||
length = len(spl)
|
||||
if len(spl) > 0:
|
||||
cmd = spl[0]
|
||||
else:
|
||||
failure("No text was sent")
|
||||
return
|
||||
for i in CommandMap.keys():
|
||||
if data.startswith(i):
|
||||
CommandMap[i](addr, authed, data, obj, spl, success, failure, info, incUsage, length)
|
||||
return
|
||||
incUsage(None)
|
||||
return
|
||||
Reference in New Issue
Block a user