1 // Copyright (c) 2017 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.
5 #ifndef COMMON_STEP_FILESYSTEM_STEP_UPDATE_STORAGE_DIRECTORIES_H_
6 #define COMMON_STEP_FILESYSTEM_STEP_UPDATE_STORAGE_DIRECTORIES_H_
8 #include <manifest_parser/utils/logging.h>
10 #include "common/step/step.h"
12 namespace common_installer {
13 namespace filesystem {
15 class StepUpdateStorageDirectories : public common_installer::Step {
19 explicit StepUpdateStorageDirectories(InstallerContext* context) :
20 Step(context), old_shared_data_exists_(false),
21 should_create_shared_data_(false) {}
23 Status process() override;
24 Status clean() override;
25 Status undo() override;
26 Status precheck() override;
28 STEP_NAME(UpdateStorageDirectories)
31 bool UpdatePerUserStorageDirectories();
32 bool UpdateStorageDirectories();
33 bool CleanUpdatePerUserStorageDirectories();
34 bool CleanUpdateStorageDirectories();
35 bool UndoUpdatePerUserStorageDirectories();
36 bool UndoUpdateStorageDirectories();
38 bool old_shared_data_exists_;
39 bool should_create_shared_data_;
42 } // namespace filesystem
43 } // namespace common_installer
45 #endif // COMMON_STEP_FILESYSTEM_STEP_UPDATE_STORAGE_DIRECTORIES_H_