public bool Send(string input)
{
if (string.IsNullOrEmpty(input)) {
LOGGER.Info(ENTER_COMMAND);
return false;
}
LOGGER.Info("] " + input);
recentCommands.Add(input);
string[] args = input.Split(' ');
if (!Commands.ContainsKey(args[0])) {
LOGGER.Info(String.Format(UNKNOWN_COMMAND, args[0]));
return false;
}
ICommand command;
Commands.TryGetValue(args[0], out command);
if (command == null) {
LOGGER.Info(String.Format(UNKNOWN_COMMAND, args[0]));
return false;
}
return command.DoCommand(args);
}