6#include <istd/IPolymorphic.h>
9#include <imtauth/IRole.h>
16class IRoleManager:
virtual public istd::IPolymorphic
19 virtual QByteArrayList GetRoleIds()
const = 0;
20 virtual IRoleUniquePtr GetRole(
const QByteArray& roleId)
const = 0;
21 virtual QByteArray CreateRole(
22 const QByteArray& productId,
23 const QString& roleName,
24 const QString& roleDescription = QString(),
25 const QByteArrayList& permissions = QByteArrayList()) = 0;
26 virtual bool RemoveRole(
const QByteArray& roleId) = 0;
27 virtual QByteArrayList GetRolePermissions(
const QByteArray& roleId)
const = 0;
28 virtual bool AddPermissionsToRole(
const QByteArray& roleId,
const QByteArrayList& permissions) = 0;
29 virtual bool RemovePermissionsFromRole(
const QByteArray& roleId,
const QByteArrayList& permissions) = 0;