#include <common/step/configuration/step_configure.h>
#include <common/step/configuration/step_fail.h>
#include <common/step/configuration/step_parse_manifest.h>
+#include <common/step/configuration/step_parse_preload.h>
#include <common/step/filesystem/step_acquire_external_storage.h>
#include <common/step/filesystem/step_clear_data.h>
#include <common/step/filesystem/step_copy.h>
#include <common/step/filesystem/step_copy_tep.h>
#include <common/step/filesystem/step_create_icons.h>
#include <common/step/filesystem/step_create_per_user_storage_directories.h>
+#include <common/step/filesystem/step_create_legacy_directories.h>
#include <common/step/filesystem/step_create_storage_directories.h>
#include <common/step/filesystem/step_delta_patch.h>
+#include <common/step/filesystem/step_disable_external_mount.h>
+#include <common/step/filesystem/step_enable_external_mount.h>
+#include <common/step/filesystem/step_move_installed_storage.h>
#include <common/step/filesystem/step_recover_files.h>
#include <common/step/filesystem/step_recover_icons.h>
#include <common/step/filesystem/step_recover_manifest.h>
#include <common/step/filesystem/step_remove_files.h>
#include <common/step/filesystem/step_remove_icons.h>
#include <common/step/filesystem/step_remove_per_user_storage_directories.h>
+#include <common/step/filesystem/step_remove_legacy_directories.h>
#include <common/step/filesystem/step_remove_temporary_directory.h>
+#include <common/step/filesystem/step_remove_tep.h>
#include <common/step/filesystem/step_remove_zip_image.h>
#include <common/step/filesystem/step_unzip.h>
+#include <common/step/filesystem/step_update_tep.h>
#include <common/step/mount/step_mount_install.h>
#include <common/step/mount/step_mount_unpacked.h>
#include <common/step/mount/step_mount_update.h>
#include <common/step/pkgmgr/step_check_removable.h>
+#include <common/step/pkgmgr/step_check_restriction.h>
#include <common/step/pkgmgr/step_kill_apps.h>
#include <common/step/pkgmgr/step_recover_application.h>
#include <common/step/pkgmgr/step_register_app.h>
#include <common/step/pkgmgr/step_run_parser_plugins.h>
#include <common/step/pkgmgr/step_unregister_app.h>
#include <common/step/pkgmgr/step_update_app.h>
-#include <common/step/pkgmgr/step_update_tep.h>
+#include <common/step/pkgmgr/step_update_pkg_disable_info.h>
#include <common/step/recovery/step_open_recovery_file.h>
#include <common/step/security/step_check_old_certificate.h>
#include <common/step/security/step_check_signature.h>
#include "wgt/step/security/step_check_wgt_notification_category.h"
#include "wgt/step/security/step_check_wgt_ime_privilege.h"
#include "wgt/step/security/step_direct_manifest_check_signature.h"
+#include "wgt/step/security/step_check_extension_privileges.h"
namespace ci = common_installer;
AddStep<ci::filesystem::StepUnzip>();
AddStep<wgt::configuration::StepParse>(
wgt::configuration::StepParse::ConfigLocation::PACKAGE, true);
+ AddStep<ci::configuration::StepParsePreload>();
+ AddStep<ci::pkgmgr::StepCheckRestriction>();
AddStep<ci::configuration::StepCheckTizenVersion>();
AddStep<ci::security::StepCheckSignature>();
AddStep<ci::security::StepPrivilegeCompatibility>();
AddStep<wgt::encryption::StepEncryptResources>();
AddStep<wgt::filesystem::StepWgtResourceDirectory>();
AddStep<ci::security::StepRollbackInstallationSecurity>();
- AddStep<ci::filesystem::StepAcquireExternalStorage>();
+ AddStep<ci::filesystem::StepAcquireExternalStorage>(false);
AddStep<ci::filesystem::StepCopy>();
AddStep<ci::filesystem::StepCopyTep>();
AddStep<wgt::filesystem::StepWgtPatchStorageDirectories>();
AddStep<wgt::filesystem::StepWgtPatchIcons>();
AddStep<ci::filesystem::StepCreateIcons>();
AddStep<wgt::filesystem::StepCopyPreviewIcons>();
+ AddStep<wgt::security::StepCheckExtensionPrivileges>();
AddStep<wgt::pkgmgr::StepGenerateXml>();
AddStep<ci::pkgmgr::StepRegisterApplication>();
AddStep<ci::pkgmgr::StepRunParserPlugin>(
ci::Plugin::ActionType::Install);
- AddStep<ci::filesystem::StepCreatePerUserStorageDirectories>();
AddStep<ci::security::StepRegisterSecurity>();
+ AddStep<ci::filesystem::StepCreatePerUserStorageDirectories>();
+ AddStep<ci::filesystem::StepCreateLegacyDirectories>();
break;
}
case ci::RequestType::Update: {
AddStep<ci::filesystem::StepUnzip>();
AddStep<wgt::configuration::StepParse>(
wgt::configuration::StepParse::ConfigLocation::PACKAGE, true);
+ AddStep<ci::configuration::StepParsePreload>();
AddStep<ci::configuration::StepCheckTizenVersion>();
AddStep<ci::security::StepCheckSignature>();
AddStep<ci::security::StepPrivilegeCompatibility>();
AddStep<ci::pkgmgr::StepKillApps>();
AddStep<ci::backup::StepBackupManifest>();
AddStep<ci::backup::StepBackupIcons>();
- AddStep<ci::filesystem::StepAcquireExternalStorage>();
+ AddStep<ci::filesystem::StepAcquireExternalStorage>(true);
AddStep<ci::backup::StepCopyBackup>();
- AddStep<ci::filesystem::StepCopyTep>();
- AddStep<ci::pkgmgr::StepUpdateTep>();
+ AddStep<ci::filesystem::StepUpdateTep>();
AddStep<wgt::filesystem::StepWgtPatchStorageDirectories>();
AddStep<wgt::filesystem::StepCreateSymbolicLink>();
AddStep<wgt::filesystem::StepWgtPatchIcons>();
AddStep<ci::filesystem::StepCreateIcons>();
AddStep<wgt::filesystem::StepCopyPreviewIcons>();
AddStep<ci::filesystem::StepCopyStorageDirectories>();
+ AddStep<wgt::security::StepCheckExtensionPrivileges>();
AddStep<ci::security::StepUpdateSecurity>();
AddStep<wgt::pkgmgr::StepGenerateXml>();
AddStep<ci::pkgmgr::StepRunParserPlugin>(
}
case ci::RequestType::Uninstall: {
AddStep<ci::configuration::StepConfigure>(pkgmgr_);
+ AddStep<ci::pkgmgr::StepCheckRestriction>();
AddStep<ci::pkgmgr::StepCheckRemovable>();
AddStep<ci::configuration::StepParseManifest>(
ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
ci::configuration::StepParseManifest::StoreLocation::NORMAL);
AddStep<ci::pkgmgr::StepKillApps>();
- AddStep<ci::filesystem::StepAcquireExternalStorage>();
+ AddStep<ci::filesystem::StepAcquireExternalStorage>(true);
AddStep<ci::pkgmgr::StepRunParserPlugin>(
ci::Plugin::ActionType::Uninstall);
AddStep<ci::filesystem::StepRemovePerUserStorageDirectories>();
AddStep<ci::pkgmgr::StepUnregisterApplication>();
AddStep<ci::security::StepRollbackDeinstallationSecurity>();
+ AddStep<ci::filesystem::StepRemoveTep>();
AddStep<ci::filesystem::StepRemoveFiles>();
+ AddStep<ci::filesystem::StepRemoveLegacyDirectories>();
AddStep<ci::filesystem::StepRemoveZipImage>();
AddStep<ci::filesystem::StepRemoveIcons>();
AddStep<wgt::encryption::StepRemoveEncryptionData>();
AddStep<ci::configuration::StepConfigure>(pkgmgr_);
AddStep<wgt::configuration::StepParse>(
wgt::configuration::StepParse::ConfigLocation::PACKAGE, false);
+ AddStep<ci::pkgmgr::StepCheckRestriction>();
AddStep<ci::configuration::StepCheckTizenVersion>();
AddStep<ci::pkgmgr::StepKillApps>();
AddStep<ci::configuration::StepParseManifest>(
ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
ci::configuration::StepParseManifest::StoreLocation::BACKUP);
AddStep<ci::configuration::StepBlockCrossUpdate>();
- AddStep<ci::filesystem::StepAcquireExternalStorage>();
AddStep<ci::rds::StepRDSParse>();
+ AddStep<ci::filesystem::StepUpdateTep>();
AddStep<wgt::rds::StepWgtRDSModify>();
+ AddStep<wgt::security::StepCheckExtensionPrivileges>();
AddStep<ci::security::StepUpdateSecurity>();
break;
}
ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
ci::configuration::StepParseManifest::StoreLocation::BACKUP);
AddStep<ci::configuration::StepCheckTizenVersion>();
+ AddStep<ci::filesystem::StepEnableExternalMount>();
AddStep<ci::filesystem::StepDeltaPatch>("res/wgt/");
+ AddStep<ci::filesystem::StepDisableExternalMount>();
AddStep<wgt::configuration::StepParse>(
wgt::configuration::StepParse::ConfigLocation::PACKAGE, true);
AddStep<ci::security::StepCheckSignature>();
AddStep<ci::pkgmgr::StepKillApps>();
AddStep<ci::backup::StepBackupManifest>();
AddStep<ci::backup::StepBackupIcons>();
- AddStep<ci::filesystem::StepAcquireExternalStorage>();
+ AddStep<ci::filesystem::StepAcquireExternalStorage>(true);
AddStep<ci::backup::StepCopyBackup>();
+ AddStep<ci::filesystem::StepUpdateTep>();
AddStep<wgt::filesystem::StepWgtPatchStorageDirectories>();
AddStep<wgt::filesystem::StepCreateSymbolicLink>();
AddStep<wgt::filesystem::StepWgtPatchIcons>();
AddStep<ci::filesystem::StepCreateIcons>();
AddStep<wgt::filesystem::StepCopyPreviewIcons>();
AddStep<ci::filesystem::StepCopyStorageDirectories>();
+ AddStep<wgt::security::StepCheckExtensionPrivileges>();
AddStep<ci::security::StepUpdateSecurity>();
AddStep<wgt::pkgmgr::StepGenerateXml>();
AddStep<ci::pkgmgr::StepRunParserPlugin>(
AddStep<ci::mount::StepMountUnpacked>();
AddStep<wgt::configuration::StepParse>(
wgt::configuration::StepParse::ConfigLocation::PACKAGE, true);
+ AddStep<ci::configuration::StepParsePreload>();
+ AddStep<ci::pkgmgr::StepCheckRestriction>();
AddStep<ci::configuration::StepCheckTizenVersion>();
AddStep<ci::security::StepCheckSignature>();
AddStep<ci::security::StepPrivilegeCompatibility>();
AddStep<ci::pkgmgr::StepRunParserPlugin>(
ci::Plugin::ActionType::Install);
AddStep<ci::filesystem::StepCreatePerUserStorageDirectories>();
+ AddStep<wgt::security::StepCheckExtensionPrivileges>();
AddStep<ci::security::StepRegisterSecurity>();
+ AddStep<ci::filesystem::StepCreateLegacyDirectories>();
break;
}
case ci::RequestType::MountUpdate: {
AddStep<ci::mount::StepMountUnpacked>();
AddStep<wgt::configuration::StepParse>(
wgt::configuration::StepParse::ConfigLocation::PACKAGE, true);
+ AddStep<ci::configuration::StepParsePreload>();
AddStep<ci::configuration::StepCheckTizenVersion>();
AddStep<ci::security::StepCheckSignature>();
AddStep<ci::security::StepPrivilegeCompatibility>();
AddStep<ci::backup::StepBackupIcons>();
AddStep<ci::mount::StepMountUpdate>();
AddStep<wgt::filesystem::StepWgtUpdatePackageDirectory>();
- AddStep<ci::filesystem::StepCopyTep>();
- AddStep<ci::pkgmgr::StepUpdateTep>();
+ AddStep<ci::filesystem::StepUpdateTep>();
AddStep<wgt::filesystem::StepWgtPatchStorageDirectories>();
AddStep<wgt::filesystem::StepCreateSymbolicLink>();
AddStep<wgt::filesystem::StepWgtPatchIcons>();
AddStep<ci::filesystem::StepCreateIcons>();
AddStep<wgt::filesystem::StepCopyPreviewIcons>();
+ AddStep<wgt::security::StepCheckExtensionPrivileges>();
AddStep<ci::security::StepUpdateSecurity>();
AddStep<wgt::pkgmgr::StepGenerateXml>();
AddStep<ci::pkgmgr::StepRunParserPlugin>(
AddStep<ci::configuration::StepConfigure>(pkgmgr_);
AddStep<wgt::configuration::StepParse>(
wgt::configuration::StepParse::ConfigLocation::INSTALLED, true);
+ AddStep<ci::configuration::StepParsePreload>();
AddStep<ci::configuration::StepCheckTizenVersion>();
AddStep<wgt::security::StepDirectManifestCheckSignature>();
AddStep<ci::security::StepPrivilegeCompatibility>();
AddStep<ci::configuration::StepConfigure>(pkgmgr_);
AddStep<wgt::configuration::StepParse>(
wgt::configuration::StepParse::ConfigLocation::INSTALLED, true);
+ AddStep<ci::configuration::StepParsePreload>();
AddStep<ci::configuration::StepCheckTizenVersion>();
AddStep<wgt::security::StepDirectManifestCheckSignature>();
AddStep<ci::security::StepPrivilegeCompatibility>();
AddStep<ci::pkgmgr::StepUpdateApplication>();
break;
}
+ case ci::RequestType::Move: {
+ AddStep<ci::configuration::StepConfigure>(pkgmgr_);
+ AddStep<ci::configuration::StepParseManifest>(
+ ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
+ ci::configuration::StepParseManifest::StoreLocation::NORMAL);
+ AddStep<ci::pkgmgr::StepKillApps>();
+ AddStep<ci::filesystem::StepMoveInstalledStorage>();
+ AddStep<ci::security::StepRegisterSecurity>();
+ break;
+ }
+ case ci::RequestType::EnablePkg: {
+ AddStep<ci::configuration::StepConfigure>(pkgmgr_);
+ AddStep<ci::configuration::StepParseManifest>(
+ ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
+ ci::configuration::StepParseManifest::StoreLocation::NORMAL);
+ AddStep<ci::pkgmgr::StepKillApps>();
+ AddStep<ci::pkgmgr::StepUpdatePkgDisableInfo>(
+ ci::pkgmgr::StepUpdatePkgDisableInfo::ActionType::Enable);
+ AddStep<ci::pkgmgr::StepRunParserPlugin>(
+ ci::Plugin::ActionType::Uninstall);
+ break;
+ }
+ case ci::RequestType::DisablePkg: {
+ AddStep<ci::configuration::StepConfigure>(pkgmgr_);
+ AddStep<ci::configuration::StepParseManifest>(
+ ci::configuration::StepParseManifest::ManifestLocation::INSTALLED,
+ ci::configuration::StepParseManifest::StoreLocation::NORMAL);
+ AddStep<ci::pkgmgr::StepKillApps>();
+ AddStep<ci::pkgmgr::StepUpdatePkgDisableInfo>(
+ ci::pkgmgr::StepUpdatePkgDisableInfo::ActionType::Disable);
+ AddStep<ci::pkgmgr::StepRunParserPlugin>(
+ ci::Plugin::ActionType::Uninstall);
+ break;
+ }
default: {
AddStep<ci::configuration::StepFail>();
}