/** * Exercise object * $Id$ * $HeadURL$ * $Author$ */ #pragma once #include // Generated #include namespace OperatorManagement { class MainHandler; class ObjectGroup final { public: explicit ObjectGroup(MainHandler *mainHandler); ~ObjectGroup(); Core::FunctionReplyObject createObject(const Database::OpmGroup &data, const std::vector &isMemberOf, const std::vector &aclAllow = std::vector(), const std::vector &aclDeny = std::vector()); Core::FunctionReplyObject updateObject(const Database::OpmGroup &data); Core::FunctionReplyObject updateMemberships(const std::vector &isMemberOf); Core::FunctionReplyObject updateAcls(const std::vector &aclAllow, const std::vector &aclDeny); Core::FunctionReplyObject removeObject(); Core::FunctionReplyObject removeAllMemberships(); Core::FunctionReplyObject removeAllAclAllows(); Core::FunctionReplyObject removeAllAclDenys(); qint64 getId() const { return m_data.id; } Database::OpmGroup data() const { return m_data; } QString name() const { return m_data.name; } protected: void onPublishData(); private: MainHandler *m_mainHandler; Database::OpmGroup m_data; std::vector m_isMemberOf; std::vector m_aclAllow; std::vector m_aclDeny; NGL::INGLLogger &m_logger; }; }