- SplitCommand(Module* me, const std::string &cmd, int minpara = 0, int maxpara = 0)
- : Command(me, cmd, minpara, maxpara) {}
- virtual CmdResult Handle(const std::vector<std::string>& parameters, User* user);
- virtual CmdResult HandleLocal(const std::vector<std::string>& parameters, LocalUser* user);
- virtual CmdResult HandleRemote(const std::vector<std::string>& parameters, RemoteUser* user);
- virtual CmdResult HandleServer(const std::vector<std::string>& parameters, FakeUser* user);
+ /** @copydoc Command::Handle */
+ CmdResult Handle(User* user, const Params& parameters) CXX11_OVERRIDE;
+
+ /** Handle the command from a local user.
+ * @param user The user who issued the command.
+ * @param parameters The parameters for the command.
+ * @return Returns CMD_FAILURE on failure, CMD_SUCCESS on success, or CMD_INVALID
+ * if the command was malformed.
+ */
+ virtual CmdResult HandleLocal(LocalUser* user, const Params& parameters);
+
+ /** Handle the command from a remote user.
+ * @param user The user who issued the command.
+ * @param parameters The parameters for the command.
+ * @return Returns CMD_FAILURE on failure, CMD_SUCCESS on success, or CMD_INVALID
+ * if the command was malformed.
+ */
+ virtual CmdResult HandleRemote(RemoteUser* user, const Params& parameters);
+
+ /** Handle the command from a server user.
+ * @param user The user who issued the command.
+ * @param parameters The parameters for the command.
+ * @return Returns CMD_FAILURE on failure, CMD_SUCCESS on success, or CMD_INVALID
+ * if the command was malformed.
+ */
+ virtual CmdResult HandleServer(FakeUser* user, const Params& parameters);