#include "server/CommandManager.h" #include "server/commands/TestCommand.h" #include "server/CommandUtils.h" CommandManager::CommandManager() { registerCommand(new TestCommand()); } CommandManager::~CommandManager() { } void CommandManager::registerCommand(BaseCommand* command) { commands.insert(pair> (command->getName(), command)); } void CommandManager::execute(ICommandSource& cs, const string& rawCommand) const { vector args; string command; if(CommandUtils::splitString(rawCommand, command, args)) { cout << "Invalid command syntax: '" << rawCommand << "'" << endl; return; } if(commands.find(command) == commands.end()) { cout << "Unknown command: '" << command << "'" << endl; return; } commands.begin()->second->execute(cs, args); }