#ifndef __CommandList_h__
#define __CommandList_h__

#include "Session.h"
#include "Command.h"

namespace core {
	
	class CommandList : public Command {

	 public:
		CommandList();
		~CommandList();

		void add(Command &command, std::string name = "");
		
		void remove(Command &command);
		
		bool processRequest(std::string request, Session *session);

      int processCommand(std::string request, Session *session) override;
		
 	 private:
		std::vector<Command *> commands;
		
	};

}

#endif
