Remove boost dependency
[platform/core/appfw/app-installers.git] / src / common / step / rds / step_rds_parse.h
1 // Copyright (c) 2015 Samsung Electronics Co., Ltd All Rights Reserved
2 // Use of this source code is governed by a apache 2.0 license that can be
3 // found in the LICENSE file.
4
5 #ifndef COMMON_STEP_RDS_STEP_RDS_PARSE_H_
6 #define COMMON_STEP_RDS_STEP_RDS_PARSE_H_
7
8 #include <common/step/step.h>
9
10 #include <filesystem>
11 #include <string>
12 #include <vector>
13
14 #include "common/installer_context.h"
15
16 namespace common_installer {
17 namespace rds {
18
19 /**
20  * \brief This step parse .rds_delta file
21  *
22  * This is to prepare RDS installation process
23  */
24 class StepRDSParse : public Step {
25  public:
26   using Step::Step;
27
28   /**
29    * \brief Parse .rds_delta file
30    *
31    * \return Status::ERROR when wgt backend data are missing,
32    *         Status::OK otherwise
33    */
34   Status process() override;
35
36
37   Status clean() override { return Status::OK; }
38   Status undo() override { return Status::OK; }
39
40   /**
41    * \brief Validate if .rds_delta file exist
42    *
43    * \return Status::Error if file not exist,
44    *         Status::OK otherwise
45    */
46   Status precheck() override;
47
48  private:
49   std::filesystem::path rds_file_path_;
50
51   STEP_NAME(RDSParse)
52 };
53
54 }  // namespace rds
55 }  // namespace common_installer
56
57 #endif  // COMMON_STEP_RDS_STEP_RDS_PARSE_H_