6#include <imtauth/CRole.h>
7#include <imtauth/IUserBaseInfo.h>
14class CUserBaseInfo:
virtual public IUserBaseInfo
23 virtual QByteArray GetId()
const override;
24 virtual void SetId(
const QByteArray&
id)
override;
25 virtual QString GetName()
const override;
26 virtual void SetName(
const QString& name)
override;
27 virtual QString GetDescription()
const override;
28 virtual void SetDescription(
const QString& description)
override;
29 virtual FeatureIds GetPermissions(
const QByteArray& productId = QByteArray())
const override;
30 virtual FeatureIds GetLocalPermissions(
const QByteArray& productId)
const override;
31 virtual void SetLocalPermissions(
const QByteArray& productId,
const FeatureIds &permissions)
override;
32 virtual FeatureIds GetProhibitions()
const override;
33 virtual void SetProhibitions(
const FeatureIds &prohibitions)
override;
34 virtual QByteArrayList GetProducts()
const override;
35 virtual bool RemoveProduct(
const QByteArray& productId)
override;
36 virtual RoleIds GetRoles(
const QByteArray& productId)
const override;
37 virtual void SetRoles(
const QByteArray& productId,
const RoleIds &roles)
override;
38 virtual void AddRole(
const QByteArray& productId,
const QByteArray& roleId)
override;
39 virtual bool RemoveRole(
const QByteArray& productId,
const QByteArray& roleId)
override;
40 virtual const imtauth::IUserGroupInfoProvider* GetUserGroupProvider()
const override;
43 virtual bool Serialize(iser::IArchive &archive)
override;
46 virtual int GetSupportedOperations()
const override;
47 virtual bool CopyFrom(
const IChangeable &
object, CompatibilityMode mode = CM_WITHOUT_REFS)
override;
48 virtual bool IsEqual(
const IChangeable&
object)
const override;
49 virtual istd::IChangeableUniquePtr CloneMe(CompatibilityMode mode = CM_WITHOUT_REFS)
const override;
50 virtual bool ResetData(CompatibilityMode mode = CM_WITHOUT_REFS)
override;
55 const imtauth::IUserGroupInfoProvider* m_userGroupInfoProviderPtr;
58 IUserBaseInfo::FeatureIds m_restrictions;
60 QMap<QByteArray, QByteArrayList> m_permissionsMap;
61 QMap<QByteArray, QByteArrayList> m_rolesMap;
64 QString m_description;