]> git.netwichtig.de Git - user/henk/code/inspircd.git/blobdiff - include/commands/cmd_whowas.h
Move some config parser-internal types out of the public header.
[user/henk/code/inspircd.git] / include / commands / cmd_whowas.h
index d443f172b241677ebe922e5e8381f76e910ce00a..2447024a1e9d1fa08d782a87ba7c10fd512410c6 100644 (file)
@@ -45,9 +45,9 @@ namespace WhoWas
                 */
                const std::string server;
 
-               /** Full name (GECOS)
+               /** Real name
                 */
-               const std::string gecos;
+               const std::string real;
 
                /** Signon time
                 */
@@ -60,7 +60,7 @@ namespace WhoWas
 
        /** Everything known about one nick
         */
-       struct Nick : public intrusive_list_node<Nick>
+       struct Nick : public insp::intrusive_list_node<Nick>
        {
                /** A group of users related by nickname
                 */
@@ -142,7 +142,7 @@ namespace WhoWas
         private:
                /** Order in which the users were added into the map, used to remove oldest nick
                 */
-               typedef intrusive_list_tail<Nick> FIFO;
+               typedef insp::intrusive_list_tail<Nick> FIFO;
 
                /** Sets of users in the whowas system
                 */
@@ -172,6 +172,16 @@ namespace WhoWas
                /** Shrink all data structures to honor the current settings
                 */
                void Prune();
+
+               /** Remove a nick (and all entries belonging to it) from the database
+                * @param it Iterator to the nick to purge
+                */
+               void PurgeNick(whowas_users::iterator it);
+
+               /** Remove a nick (and all entries belonging to it) from the database
+                * @param nick Nick to purge
+                */
+               void PurgeNick(WhoWas::Nick* nick);
        };
 }
 
@@ -190,9 +200,8 @@ class CommandWhowas : public Command
        CommandWhowas(Module* parent);
        /** Handle command.
         * @param parameters The parameters to the comamnd
-        * @param pcnt The number of parameters passed to teh command
         * @param user The user issuing the command
         * @return A value from CmdResult to indicate command success or failure.
         */
-       CmdResult Handle(const std::vector<std::string>& parameters, User *user);
+       CmdResult Handle(User* user, const Params& parameters) CXX11_OVERRIDE;
 };