
1 changed files with 33 additions and 0 deletions
@ -0,0 +1,33 @@ |
|||||
|
// This file is under GNU General Public License 3.0
|
||||
|
// see LICENSE.txt
|
||||
|
|
||||
|
#ifndef LIBPEPADAPTER_LISTMANAGERINTERFACE_HH |
||||
|
#define LIBPEPADAPTER_LISTMANAGERINTERFACE_HH |
||||
|
|
||||
|
#include <pEp/message_api.h> |
||||
|
|
||||
|
namespace pEp { |
||||
|
class ListManagerInterface { |
||||
|
public: |
||||
|
// update functions
|
||||
|
// Group create/destroy
|
||||
|
virtual void create( |
||||
|
pEp_identity *group_identity, |
||||
|
pEp_identity *manager, |
||||
|
identity_list *memberlist) = 0; |
||||
|
virtual void dissolve(pEp_identity *group_identity) = 0; |
||||
|
|
||||
|
// Members create/destroy
|
||||
|
virtual void join(pEp_identity *group_identity, pEp_identity *as_member) = 0; |
||||
|
virtual void remove_member(pEp_identity *group_identity, pEp_identity *group_member) = 0; |
||||
|
|
||||
|
// query functions
|
||||
|
virtual identity_list *groups() = 0; |
||||
|
virtual pEp_identity *manager(const pEp_identity *const group) = 0; |
||||
|
virtual identity_list *members(const pEp_identity *const group) = 0; |
||||
|
|
||||
|
private: |
||||
|
}; |
||||
|
} // namespace pEp
|
||||
|
|
||||
|
#endif // LIBPEPADAPTER_LISTMANAGERINTERFACE_HH
|
Loading…
Reference in new issue