1 /* Icinga 2 | (c) 2012 Icinga GmbH | GPLv2+ */
6 #include "icinga/i2-icinga.hpp"
7 #include "icinga/user-ti.hpp"
8 #include "icinga/timeperiod.hpp"
9 #include "remote/messageorigin.hpp"
19 class User final : public ObjectImpl<User>
23 DECLARE_OBJECTNAME(User);
25 void AddGroup(const String& name);
28 TimePeriod::Ptr GetPeriod() const;
30 void ValidateStates(const Lazy<Array::Ptr>& lvalue, const ValidationUtils& utils) override;
31 void ValidateTypes(const Lazy<Array::Ptr>& lvalue, const ValidationUtils& utils) override;
34 void Stop(bool runtimeRemoved) override;
36 void OnConfigLoaded() override;
37 void OnAllConfigLoaded() override;
39 mutable boost::mutex m_UserMutex;