Revert "Revert "[Refactor] AppInstaller logic export"" 13/129313/12
authorjongmyeong ko <jongmyeong.ko@samsung.com>
Tue, 16 May 2017 05:11:27 +0000 (05:11 +0000)
committerBartlomiej Kunikowski <b.kunikowski@partner.samsung.com>
Wed, 22 Nov 2017 09:14:13 +0000 (09:14 +0000)
This should be submitted with:
        - https://review.tizen.org/gerrit/#/c/93998/
        - https://review.tizen.org/gerrit/#/c/93999/

This reverts commit 35519ad818702263ead855736499c174b3e97dbe.

Change-Id: Ied92513c761f8c52c42b854d74d49eef72fc3144
Signed-off-by: jongmyeongko <jongmyeong.ko@samsung.com>
src/hybrid/hybrid_installer.cc
src/hybrid/hybrid_installer.h
src/wgt/wgt_installer.cc
src/wgt/wgt_installer.h

index 48612d8..6f727f7 100644 (file)
@@ -107,11 +107,12 @@ namespace hybrid {
 
 HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
     : AppInstaller("wgt", pkgmgr) {
+  Init();
   context_->cross_app_rules.set(true);
   context_->backend_data.set(new HybridBackendData());
+}
 
-  switch (pkgmgr_->GetRequestType()) {
-    case ci::RequestType::Install:
+void HybridInstaller::InstallSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::filesystem::StepUnzip>();
       AddStep<ci::configuration::StepParseManifest>(
@@ -162,8 +163,9 @@ HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
           wgt::filesystem::HybridAdditionalSharedDirs);
       AddStep<ci::filesystem::StepChangeOwnershipAndPermission>();
       AddStep<ci::filesystem::StepCreateGlobalAppSymlinks>();
-      break;
-    case ci::RequestType::Update:
+}
+
+void HybridInstaller::UpdateSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::filesystem::StepUnzip>();
       AddStep<ci::configuration::StepParseManifest>(
@@ -218,8 +220,9 @@ HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
       AddStep<ci::filesystem::StepUpdatePerUserStorageDirectories>();
       AddStep<ci::filesystem::StepChangeOwnershipAndPermission>();
       AddStep<ci::filesystem::StepCreateGlobalAppSymlinks>();
-      break;
-    case ci::RequestType::Uninstall:
+}
+
+void HybridInstaller::UninstallSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::pkgmgr::StepCheckRestriction>();
       AddStep<ci::pkgmgr::StepCheckRemovable>();
@@ -246,12 +249,14 @@ HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
       AddStep<ci::security::StepRevokeSecurity>();
       AddStep<ci::pkgmgr::StepRemoveManifest>();
       AddStep<ci::filesystem::StepCreateGlobalAppSymlinks>();
-      break;
-    case ci::RequestType::Reinstall:
+}
+
+void HybridInstaller::ReinstallSteps() {
       // RDS is not supported for hybrid apps
       AddStep<ci::configuration::StepFail>();
-      break;
-    case ci::RequestType::Delta:
+}
+
+void HybridInstaller::DeltaSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::filesystem::StepUnzip>();
       AddStep<ci::configuration::StepParseManifest>(
@@ -310,8 +315,9 @@ HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
       AddStep<ci::filesystem::StepUpdatePerUserStorageDirectories>();
       AddStep<ci::filesystem::StepChangeOwnershipAndPermission>();
       AddStep<ci::filesystem::StepCreateGlobalAppSymlinks>();
-      break;
-    case ci::RequestType::Recovery:
+}
+
+void HybridInstaller::RecoverySteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::recovery::StepOpenRecoveryFile>();
       AddStep<ci::configuration::StepParseManifest>(
@@ -328,8 +334,9 @@ HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
       AddStep<ci::filesystem::StepRecoverChangeOwner>();
       AddStep<ci::security::StepRecoverSecurity>();
       AddStep<ci::pkgmgr::StepRecoverApplication>();
-      break;
-    case ci::RequestType::MountInstall:
+}
+
+void HybridInstaller::MountInstallSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::mount::StepMountUnpacked>();
       AddStep<ci::configuration::StepParseManifest>(
@@ -380,8 +387,9 @@ HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
           wgt::filesystem::HybridAdditionalSharedDirs);
       AddStep<ci::filesystem::StepChangeOwnershipAndPermission>(true);
       AddStep<ci::filesystem::StepCreateGlobalAppSymlinks>();
-      break;
-    case ci::RequestType::MountUpdate:
+}
+
+void HybridInstaller::MountUpdateSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::mount::StepMountUnpacked>();
       AddStep<ci::configuration::StepParseManifest>(
@@ -435,8 +443,9 @@ HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
       AddStep<ci::filesystem::StepUpdatePerUserStorageDirectories>();
       AddStep<ci::filesystem::StepChangeOwnershipAndPermission>(true);
       AddStep<ci::filesystem::StepCreateGlobalAppSymlinks>();
-      break;
-    case ci::RequestType::ManifestDirectInstall:
+}
+
+void HybridInstaller::ManifestDirectInstallSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::configuration::StepParseManifest>(
           ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
@@ -473,8 +482,9 @@ HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
           wgt::filesystem::HybridAdditionalSharedDirs);
       AddStep<ci::filesystem::StepChangeOwnershipAndPermission>();
       AddStep<ci::filesystem::StepCreateGlobalAppSymlinks>();
-      break;
-    case ci::RequestType::ManifestDirectUpdate:
+}
+
+void HybridInstaller::ManifestDirectUpdateSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::configuration::StepParseManifest>(
           ci::configuration::StepParseManifest::ManifestLocation::PACKAGE,
@@ -512,8 +522,9 @@ HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
       AddStep<ci::filesystem::StepUpdatePerUserStorageDirectories>();
       AddStep<ci::filesystem::StepChangeOwnershipAndPermission>();
       AddStep<ci::filesystem::StepCreateGlobalAppSymlinks>();
-      break;
-    case ci::RequestType::ManifestPartialInstall: {
+}
+
+void HybridInstaller::ManifestPartialInstallSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::configuration::StepParseManifest>(
           ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
@@ -536,9 +547,9 @@ HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
       AddStep<ci::filesystem::StepCreatePerUserStorageDirectories>(
           wgt::filesystem::HybridAdditionalSharedDirs);
       AddStep<ci::filesystem::StepCreateGlobalAppSymlinks>();
-      break;
-    }
-    case ci::RequestType::ManifestPartialUpdate: {
+}
+
+void HybridInstaller::ManifestPartialUpdateSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::configuration::StepParseManifest>(
           ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
@@ -564,9 +575,9 @@ HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
           ci::Plugin::ActionType::Upgrade);
       AddStep<ci::filesystem::StepUpdatePerUserStorageDirectories>();
       AddStep<ci::filesystem::StepCreateGlobalAppSymlinks>();
-      break;
-    }
-    case ci::RequestType::PartialUninstall: {
+}
+
+void HybridInstaller::PartialUninstallSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::pkgmgr::StepCheckRestriction>();
       AddStep<ci::pkgmgr::StepCheckRemovable>();
@@ -585,9 +596,9 @@ HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
       AddStep<ci::security::StepPrivacyPrivilege>(
           ci::security::StepPrivacyPrivilege::ActionType::Uninstall);
       AddStep<ci::security::StepRevokeSecurity>();
-      break;
-    }
-    case ci::RequestType::EnablePkg:
+}
+
+void HybridInstaller::EnablePkgSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::configuration::StepParseManifest>(
           ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
@@ -597,8 +608,9 @@ HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
         ci::pkgmgr::StepUpdatePkgDisableInfo::ActionType::Enable);
       AddStep<ci::pkgmgr::StepRunParserPlugin>(
         ci::Plugin::ActionType::Uninstall);
-      break;
-    case ci::RequestType::DisablePkg:
+}
+
+void HybridInstaller::DisablePkgSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::configuration::StepParseManifest>(
           ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
@@ -608,17 +620,12 @@ HybridInstaller::HybridInstaller(common_installer::PkgMgrPtr pkgmgr)
         ci::pkgmgr::StepUpdatePkgDisableInfo::ActionType::Disable);
       AddStep<ci::pkgmgr::StepRunParserPlugin>(
         ci::Plugin::ActionType::Uninstall);
-      break;
-    case ci::RequestType::MigrateExtImg: {
+}
+
+void HybridInstaller::MigrateExtImgSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::security::StepMigrateLegacyExtImage>();
       AddStep<ci::filesystem::StepChangeOwnershipAndPermission>();
-      break;
-    }
-    default:
-      AddStep<ci::configuration::StepFail>();
-      break;
-  }
 }
 
 }  // namespace hybrid
index 9824d21..8331393 100644 (file)
@@ -8,6 +8,8 @@
 #include "common/app_installer.h"
 #include "common/pkgmgr_interface.h"
 
+namespace ci = common_installer;
+
 namespace hybrid {
 
 /**
@@ -24,6 +26,24 @@ class HybridInstaller : public common_installer::AppInstaller {
   explicit HybridInstaller(common_installer::PkgMgrPtr pkgmgr);
 
   SCOPE_LOG_TAG(HybridInstaller)
+
+ private:
+  void InstallSteps() override;
+  void UpdateSteps() override;
+  void UninstallSteps() override;
+  void ReinstallSteps() override;
+  void DeltaSteps() override;
+  void RecoverySteps() override;
+  void MountInstallSteps() override;
+  void MountUpdateSteps() override;
+  void ManifestDirectInstallSteps() override;
+  void ManifestDirectUpdateSteps() override;
+  void DisablePkgSteps() override;
+  void EnablePkgSteps() override;
+  void ManifestPartialInstallSteps() override;
+  void ManifestPartialUpdateSteps() override;
+  void PartialUninstallSteps() override;
+  void MigrateExtImgSteps() override;
 };
 
 }  // namespace hybrid
index 05d8dad..ed2f0ad 100755 (executable)
@@ -116,90 +116,8 @@ namespace wgt {
 
 WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
     : AppInstaller("wgt", pkgrmgr) {
+  Init();
   context_->backend_data.set(new WgtBackendData());
-
-  /* treat the request */
-  switch (pkgmgr_->GetRequestType()) {
-    case ci::RequestType::Install : {
-      InstallSteps();
-      break;
-    }
-    case ci::RequestType::Update: {
-      UpdateSteps();
-      break;
-    }
-    case ci::RequestType::Uninstall: {
-      UninstallSteps();
-      break;
-    }
-    case ci::RequestType::Reinstall: {
-      ReinstallSteps();
-      break;
-    }
-    case ci::RequestType::Delta: {
-      DeltaSteps();
-      break;
-    }
-    case ci::RequestType::Recovery: {
-      RecoverySteps();
-      break;
-    }
-    case ci::RequestType::MountInstall: {
-      MountInstallSteps();
-      break;
-    }
-    case ci::RequestType::MountUpdate: {
-      MountUpdateSteps();
-      break;
-    }
-    case ci::RequestType::ManifestDirectInstall: {
-      ManifestDirectInstallSteps();
-      break;
-    }
-    case ci::RequestType::ManifestDirectUpdate: {
-      ManifestDirectUpdateSteps();
-      break;
-    }
-    case ci::RequestType::ReadonlyUpdateInstall: {
-      ReadonlyUpdateInstallSteps();
-      break;
-    }
-    case ci::RequestType::ReadonlyUpdateUninstall: {
-      ReadonlyUpdateUninstallSteps();
-      break;
-    }
-    case ci::RequestType::ManifestPartialInstall: {
-      ManifestPartialInstallSteps();
-      break;
-    }
-    case ci::RequestType::ManifestPartialUpdate: {
-      ManifestPartialUpdateSteps();
-      break;
-    }
-    case ci::RequestType::PartialUninstall: {
-      ManifestPartialUninstallSteps();
-      break;
-    }
-    case ci::RequestType::Move: {
-      MoveSteps();
-      break;
-    }
-    case ci::RequestType::EnablePkg: {
-      EnablePkgSteps();
-      break;
-    }
-    case ci::RequestType::DisablePkg: {
-      DisablePkgSteps();
-      break;
-    }
-    case ci::RequestType::MigrateExtImg: {
-      MigrateExtImgSteps();
-      break;
-    }
-    default: {
-      DefaultSteps();
-    }
-  }
 }
   void WgtInstaller::InstallSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
@@ -714,7 +632,7 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
       AddStep<ci::filesystem::StepCreateGlobalAppSymlinks>();
   }
 
-  void WgtInstaller::ManifestPartialUninstallSteps() {
+  void WgtInstaller::PartialUninstallSteps() {
       AddStep<ci::configuration::StepConfigure>(pkgmgr_);
       AddStep<ci::pkgmgr::StepCheckRestriction>();
       AddStep<ci::pkgmgr::StepCheckRemovable>();
@@ -776,8 +694,4 @@ WgtInstaller::WgtInstaller(ci::PkgMgrPtr pkgrmgr)
       AddStep<ci::filesystem::StepChangeOwnershipAndPermission>();
   }
 
-  void WgtInstaller::DefaultSteps() {
-      AddStep<ci::configuration::StepFail>();
-  }
-
 }  // namespace wgt
index 0c3a5e9..c25c2e1 100644 (file)
@@ -26,26 +26,25 @@ class WgtInstaller : public common_installer::AppInstaller {
   explicit WgtInstaller(common_installer::PkgMgrPtr pkgrmgr);
 
  private:
-  void InstallSteps();
-  void UpdateSteps();
-  void UninstallSteps();
-  void ReinstallSteps();
-  void DeltaSteps();
-  void RecoverySteps();
-  void MountInstallSteps();
-  void MountUpdateSteps();
-  void ManifestDirectInstallSteps();
-  void ManifestDirectUpdateSteps();
-  void ReadonlyUpdateInstallSteps();
-  void ReadonlyUpdateUninstallSteps();
-  void ManifestPartialInstallSteps();
-  void ManifestPartialUpdateSteps();
-  void ManifestPartialUninstallSteps();
-  void MoveSteps();
-  void EnablePkgSteps();
-  void DisablePkgSteps();
-  void MigrateExtImgSteps();
-  void DefaultSteps();
+  void InstallSteps() override;
+  void UpdateSteps() override;
+  void UninstallSteps() override;
+  void ReinstallSteps() override;
+  void DeltaSteps() override;
+  void MoveSteps() override;
+  void RecoverySteps() override;
+  void MountInstallSteps() override;
+  void MountUpdateSteps() override;
+  void ManifestDirectInstallSteps() override;
+  void ManifestDirectUpdateSteps() override;
+  void ManifestPartialInstallSteps() override;
+  void ManifestPartialUpdateSteps() override;
+  void PartialUninstallSteps() override;
+  void ReadonlyUpdateInstallSteps() override;
+  void ReadonlyUpdateUninstallSteps() override;
+  void DisablePkgSteps() override;
+  void EnablePkgSteps() override;
+  void MigrateExtImgSteps() override;
 };
 
 }  // namespace wgt