Logging is easier now, assigned in runtime group is now stored in config
This commit is contained in:
parent
7f57cd3bf6
commit
1bda854139
19 changed files with 153 additions and 53 deletions
|
@ -4,7 +4,7 @@
|
|||
#include "actor.h"
|
||||
|
||||
Module::Actor::Actor(const std::shared_ptr<Core>& core, const Shared::Permissions& permissions):
|
||||
Module(core, permissions)
|
||||
Module(core, permissions, "Actor")
|
||||
{}
|
||||
|
||||
Module::Actor::~Actor() noexcept {}
|
||||
|
@ -51,7 +51,7 @@ std::string Module::Actor::list() {
|
|||
}
|
||||
|
||||
std::string Module::Actor::set(const std::string& jid, const std::string& group) {
|
||||
core->setGroup(jid, group);
|
||||
core->setGroup(lower(jid), group);
|
||||
|
||||
return jid + " is now " + core->router.getGroup(jid);
|
||||
}
|
||||
|
|
|
@ -7,7 +7,8 @@
|
|||
|
||||
#include "gloox/message.h"
|
||||
|
||||
Module::Module::Module(const std::shared_ptr<Core>& core, const Shared::Permissions& permissions):
|
||||
Module::Module::Module(const std::shared_ptr<Core>& core, const Shared::Permissions& permissions, const std::string& name):
|
||||
Shared::Loggable(core->logger, {"Module", name}),
|
||||
core(core),
|
||||
permissions(permissions)
|
||||
{}
|
||||
|
@ -36,3 +37,7 @@ std::vector<std::string> Module::Module::split(const std::string& string, const
|
|||
|
||||
return result;
|
||||
}
|
||||
|
||||
std::string Module::Module::lower(const std::string& text) {
|
||||
return std::ranges::to<std::string>(text | std::views::transform(::tolower));
|
||||
}
|
||||
|
|
|
@ -6,17 +6,20 @@
|
|||
#include <string>
|
||||
#include <memory>
|
||||
#include <vector>
|
||||
#include <ranges>
|
||||
#include <cctype>
|
||||
|
||||
#include "shared/definitions.h"
|
||||
#include "shared/result.h"
|
||||
#include "shared/loggable.h"
|
||||
#include "component/core.h"
|
||||
#include "component/actor.h"
|
||||
|
||||
namespace Module {
|
||||
|
||||
class Module {
|
||||
class Module : protected Shared::Loggable {
|
||||
protected:
|
||||
Module(const std::shared_ptr<Core>& core, const Shared::Permissions& permissions);
|
||||
Module(const std::shared_ptr<Core>& core, const Shared::Permissions& permissions, const std::string& name);
|
||||
|
||||
bool hasPermission(const std::string& permission, const std::shared_ptr<::Actor>& actor) const;
|
||||
|
||||
|
@ -24,6 +27,7 @@ public:
|
|||
virtual ~Module() noexcept;
|
||||
|
||||
static Shared::Strings split(const std::string& string, const std::string& delimiter = " ");
|
||||
static std::string lower(const std::string& text);
|
||||
|
||||
virtual Shared::Result message(const std::shared_ptr<::Actor>& actor, const Shared::Strings& args) = 0;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue