Remove boost dependency
[platform/core/appfw/app-installers.git] / src / common / tzip_interface.h
1 // Copyright (c) 2016 Samsung Electronics Co., Ltd All Rights Reserved
2 // Use of this source code is governed by an apache 2.0 license that can be
3 // found in the LICENSE file.
4
5 #ifndef COMMON_TZIP_INTERFACE_H_
6 #define COMMON_TZIP_INTERFACE_H_
7
8 #include <common/zip_interface.h>
9
10 #include <filesystem>
11 #include <memory>
12 #include <string>
13
14 namespace common_installer {
15
16 class TzipInterface : public common_installer::IZipInterface {
17  public:
18   explicit TzipInterface(const std::filesystem::path& mount_path);
19   ~TzipInterface();
20
21   bool MountZip(const std::filesystem::path& zip_path) override;
22   bool UnmountZip() override;
23
24  private:
25   class Pimpl;
26   std::unique_ptr<Pimpl> impl_;
27 };
28
29 }  // namespace common_installer
30
31 #endif  // COMMON_TZIP_INTERFACE_H_