From 42238034490fb5479d787bd1695750387d508200 Mon Sep 17 00:00:00 2001 From: Adam Date: Mon, 24 Nov 2014 14:27:23 -0500 Subject: Rewrite serializable to have field level granularity Represent serializable objects in a digraph, and as a result made most object relationships implicitly defined, and use the graph to trace references between objects to determine relationships. Edges may also be marked as having a dependency of the object they point to, which allows for automatic cleanup and deletion of most objects when no longer needed. Additionally, this allows not having to require in-memory copies of everything when using external databases. db_sql has been rewritten for this and now always requires a database to function. db_sql with MySQL now requires InnoDB to make use of transactions and foreign key constraints. --- modules/commands/bs_botlist.cpp | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) (limited to 'modules/commands/bs_botlist.cpp') diff --git a/modules/commands/bs_botlist.cpp b/modules/commands/bs_botlist.cpp index 58b763d47..fc8bf7732 100644 --- a/modules/commands/bs_botlist.cpp +++ b/modules/commands/bs_botlist.cpp @@ -26,15 +26,13 @@ class CommandBSBotList : public Command list.AddColumn(_("Nick")).AddColumn(_("Mask")); - for (botinfo_map::const_iterator it = BotListByNick->begin(), it_end = BotListByNick->end(); it != it_end; ++it) + for (ServiceBot *bi : Serialize::GetObjects(botinfo)) { - BotInfo *bi = it->second; - - if (source.HasPriv("botserv/administration") || !bi->oper_only) + if (source.HasPriv("botserv/administration") || !bi->bi->GetOperOnly()) { ++count; ListFormatter::ListEntry entry; - entry["Nick"] = (bi->oper_only ? "* " : "") + bi->nick; + entry["Nick"] = (bi->bi->GetOperOnly() ? "* " : "") + bi->nick; entry["Mask"] = bi->GetIdent() + "@" + bi->host; list.AddEntry(entry); } @@ -59,7 +57,7 @@ class CommandBSBotList : public Command bool OnHelp(CommandSource &source, const Anope::string &subcommand) override { - BotInfo *bi; + ServiceBot *bi; Anope::string name; Command::FindCommandFromService("botserv/assign", bi, name); if (!bi) -- cgit