cmWIXAccessControlList.h 848 B

123456789101112131415161718192021222324252627282930
  1. /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying
  2. file Copyright.txt or https://cmake.org/licensing for details. */
  3. #pragma once
  4. #include "cmCPackLog.h"
  5. #include "cmInstalledFile.h"
  6. #include "cmWIXSourceWriter.h"
  7. class cmWIXAccessControlList
  8. {
  9. public:
  10. cmWIXAccessControlList(cmCPackLog* logger,
  11. cmInstalledFile const& installedFile,
  12. cmWIXSourceWriter& sourceWriter);
  13. bool Apply();
  14. private:
  15. void CreatePermissionElement(std::string const& entry);
  16. void ReportError(std::string const& entry, std::string const& message);
  17. bool IsBooleanAttribute(std::string const& name);
  18. void EmitBooleanAttribute(std::string const& entry, std::string const& name);
  19. cmCPackLog* Logger;
  20. cmInstalledFile const& InstalledFile;
  21. cmWIXSourceWriter& SourceWriter;
  22. };