You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
libpEpAdapter/src/grp_driver_engine.hh

53 lines
1.7 KiB

// This file is under GNU General Public License 3.0
// see LICENSE.txt
#ifndef LIBPEPADAPTER_GRP_DRIVER_ENGINE_HH
#define LIBPEPADAPTER_GRP_DRIVER_ENGINE_HH
#include "grp_manager_interface.hh"
#include "pEpLog.hh"
#include <pEp/message_api.h>
namespace pEp {
namespace Adapter {
class GroupDriverEngine : public GroupUpdateInterface {
public:
GroupDriverEngine();
PEP_STATUS adapter_group_create(
::PEP_SESSION session,
::pEp_identity *group_identity,
::pEp_identity *manager,
::identity_list *memberlist) noexcept override;
PEP_STATUS adapter_group_dissolve(
::PEP_SESSION session,
::pEp_identity *group_identity,
::pEp_identity *manager) noexcept override;
PEP_STATUS adapter_group_invite_member(
::PEP_SESSION session,
::pEp_identity *group_identity,
::pEp_identity *group_member) noexcept override;
PEP_STATUS adapter_group_remove_member(
::PEP_SESSION session,
::pEp_identity *group_identity,
::pEp_identity *group_member) noexcept override;
PEP_STATUS adapter_group_join(
::PEP_SESSION session,
::pEp_identity *group_identity,
::pEp_identity *as_member) noexcept override;
// Logging
static bool log_enabled;
Adapter::pEpLog::pEpLogger logger{ "GroupDriverEngine", log_enabled };
private:
Adapter::pEpLog::pEpLogger &m4gic_logger_n4me = logger;
};
} // namespace Adapter
} // namespace pEp
#endif // LIBPEPADAPTER_GRP_DRIVER_ENGINE_HH