1 // Copyright (c) 2015 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 HYBRID_HYBRID_INSTALLER_H_
6 #define HYBRID_HYBRID_INSTALLER_H_
8 #include "common/installer/app_installer.h"
9 #include "common/pkgmgr_interface.h"
11 namespace ci = common_installer;
16 * @brief The TpkInstaller class
17 * Handles request of installation of native part of hybrid package.
19 * Pkgmgr request is parsed within and sequence of steps is built to be run.
21 * This backend is called by wgt-backend if it encounters hybrid package to
22 * install native part of that package.
24 class HybridInstaller : public common_installer::AppInstaller {
26 explicit HybridInstaller(common_installer::PkgMgrPtr pkgmgr);
27 std::unique_ptr<common_installer::ArchiveInfo> GetArchiveInfo() override;
29 SCOPE_LOG_TAG(HybridInstaller)
32 void InstallSteps() override;
33 void UpdateSteps() override;
34 void UninstallSteps() override;
35 void ReinstallSteps() override;
36 void DeltaSteps() override;
37 void RecoverySteps() override;
38 void MountInstallSteps() override;
39 void MountUpdateSteps() override;
40 void ManifestDirectInstallSteps() override;
41 void ManifestDirectUpdateSteps() override;
42 void DisablePkgSteps() override;
43 void EnablePkgSteps() override;
44 void ManifestPartialInstallSteps() override;
45 void ManifestPartialUpdateSteps() override;
46 void PartialUninstallSteps() override;
47 void ReadonlyUpdateInstallSteps() override;
48 void ReadonlyUpdateUninstallSteps() override;
49 void MigrateExtImgSteps() override;
50 void RecoverDBSteps() override;
55 #endif // HYBRID_HYBRID_INSTALLER_H_