Leaked source code of windows server 2003
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.

52 lines
1.5 KiB

  1. //+----------------------------------------------------------------------------
  2. //
  3. // Windows NT Secure Server Roles Security Configuration Wizard
  4. //
  5. // Microsoft Windows
  6. // Copyright (C) Microsoft Corporation, 1992 - 2002
  7. //
  8. // File: RoleObj.cxx
  9. //
  10. // History: 15-Oct-01 Yanggao created
  11. //
  12. //-----------------------------------------------------------------------------
  13. #ifndef ROLEOBJ_H_INCLUDED
  14. #define ROLEOBJ_H_INCLUDED
  15. #include "ServiceObj.h"
  16. class RoleObject;
  17. typedef std::list<RoleObject*, Burnslib::Heap::Allocator<RoleObject*> > ROLELIST;
  18. class RoleObject
  19. {
  20. public:
  21. RoleObject(void);
  22. RoleObject(String& xRoleName);
  23. virtual ~RoleObject();
  24. private:
  25. protected:
  26. SERVICELIST servicesList;
  27. bool selected;
  28. bool satisfiable;
  29. String roleName;
  30. String _strRoleDisplayName;
  31. String roleDescription;
  32. public:
  33. bool addService(ServiceObject* pobj);
  34. bool removeService(String str);
  35. ServiceObject* findService(String str);
  36. DWORD getServiceCount();
  37. void setSelected(bool fSelected) {selected = fSelected;};
  38. void setSatisfiable(bool fSatistfiable) {satisfiable = fSatistfiable;};
  39. void setDescritption(String& desStr) {roleDescription = desStr;};
  40. HRESULT InitFromXmlNode(IXMLDOMNode * pRoleNode);
  41. HRESULT SetLocalizedNames(IXMLDOMNode * pDoc);
  42. PCWSTR getName(void) {return roleName.c_str();};
  43. PCWSTR getDisplayName(void);
  44. };
  45. #endif //ROLEOBJ_H_INCLUDED