Source code of Windows XP (NT5)
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.

83 lines
1.3 KiB

  1. // Active Directory Display Specifier Upgrade Tool
  2. //
  3. // Copyright (c) 2001 Microsoft Corporation
  4. //
  5. // class Repairer, represents "work items" to perform to repair display
  6. // specifier objects.
  7. //
  8. // 7 Mar 2001 sburns
  9. #ifndef REPAIRER_HPP_INCLUDED
  10. #define REPAIRER_HPP_INCLUDED
  11. class Repairer
  12. {
  13. public:
  14. explicit
  15. Repairer(
  16. const String& dcpromoCsvFilePath);
  17. void
  18. AddCreateContainerWorkItem(int localeId);
  19. void
  20. AddCreateObjectWorkItem(
  21. int localeId,
  22. const String& displaySpecifierObjectName);
  23. void
  24. AddDeleteObjectWorkItem(
  25. int localeId,
  26. const String& displaySpecifierObjectName);
  27. HRESULT
  28. ApplyRepairs();
  29. HRESULT
  30. BuildRepairFiles();
  31. private:
  32. typedef std::list<int> LocaleIdList;
  33. typedef std::pair<int, String> LocaleIdObjectNamePair;
  34. typedef std::list<LocaleIdObjectNamePair> LocaleIdObjectNamePairList;
  35. String dcpromoCsvFilePath;
  36. LocaleIdList containersToCreate;
  37. LocaleIdObjectNamePairList objectsToCreate;
  38. bool
  39. IsLocaleInObjectsToCreateTable(int localeId) const;
  40. // not implemented: no copying allowed
  41. Repairer(const Repairer&);
  42. const Repairer& operator=(const Repairer&);
  43. };
  44. #endif // REPAIRER_HPP_INCLUDED