#include <widget_install/wac_security.h>
#include <feature_logic.h>
#include <widget_install/widget_update_info.h>
-#include <ace-dao-ro/AceDAOReadOnly.h>
+#include <widget_location.h>
namespace Jobs {
namespace WidgetInstall {
class WidgetModel;
+typedef std::map<DPL::String, bool> RequestedDevCapsMap;
+
struct InstallerContext
{
typedef enum InstallStepEnum
{
INSTALL_START = 0,
+ INSTALL_CHECK_FILE,
+
+ INSTALL_RDS_DELTA_CHECK,
+ INSTALL_RDS_PREPARE,
+
+ INSTALL_UNZIP_FILES,
INSTALL_WIDGET_CONFIG1,
INSTALL_WIDGET_CONFIG2,
- INSTALL_WIDGET_CONFIG3,
- INSTALL_WIDGET_CONFIG4,
- INSTALL_WIDGET_CONFIG5,
INSTALL_DIGSIG_CHECK,
INSTALL_CERT_CHECK,
- INSTALL_DB_UPDATE,
+ INSTALL_ECRYPTION_FILES,
INSTALL_DIR_CREATE,
INSTALL_RENAME_PATH,
+
+ INSTALL_CREATE_BACKUP_DIR, /* For Update */
+ INSTALL_BACKUP_RES_FILES, /* For Update */
+ INSTALL_BACKUP_EXEC, /* For Update */
+
+ INSTALL_BACKUP_ICONFILE, /* For Update */
+ INSTALL_COPY_ICONFILE,
+ INSTALL_CREATE_EXECFILE,
+ INSTALL_CREATE_MANIFEST,
+ INSTALL_CREATE_SHORTCUT,
+ INSTALL_SET_CERTINFO,
+ INSTALL_INSTALL_OSPSVC,
+ INSTALL_REMOVE_BACKUP_FILE,
+ INSTALL_PLUGINS_COPY,
+ INSTALL_NEW_DB_INSERT,
INSTALL_ACE_PREPARE,
INSTALL_ACE_CHECK,
INSTALL_SMACK_ENABLE,
- INSTALL_COPY_ICONFILE,
- INSTALL_CREATE_DESKTOP,
- INSTALL_CREATE_EXECFILE,
- INSTALL_CREATE_PRIVATE_STORAGE,
+
INSTALL_END
} InstallStep;
// Installation state variables
- std::string widgetSource; ///< Source widget zip file/widget url
- std::string tempWidgetPath; ///< Unpacked widget temporary path
WrtDB::WidgetRegisterInfo widgetConfig; ///< WidgetConfigInfo
- DPL::Optional<WrtDB::DbWidgetHandle> widgetHandle;
- Jobs::WidgetInstall::WacSecurity wacSecurity;///< Widget Domain information.
+ DPL::Optional<WidgetLocation> locations;
+ Jobs::WidgetInstall::WacSecurity wacSecurity; ///< Widget Domain
+ // information.
InstallStep installStep; ///< current step of installation
Jobs::WidgetInstall::JobWidgetInstall *job;
- ///< pointer of instance of JobWidgetInstall
- WidgetUpdateInfo::ExistingWidgetInfo existingWidgetInfo;
- ///< Whether this is an update or normal installation
+ ///< Whether this is an update or normal installation
Jobs::WidgetInstall::FeatureLogicPtr featureLogic;
/** List of dev-caps that are requested in widget config file.
- * Additional flag tells whether dev cap gets "static" permission
- * (will always have PERMIT from ACE Policy). They will therefore receive
- * static SMACK permission. (They may be forbidden because
- * of ACE User Settings, but for now we do not protect this
- * case with SMACK). */
- AceDB::RequestedDevCapsMap staticPermittedDevCaps;
- ///< Optional path to downloaded widget icon
- std::string iconPath;
+ * Additional flag tells whether dev cap gets "static" permission
+ * (will always have PERMIT from ACE Policy). They will therefore receive
+ * static SMACK permission. (They may be forbidden because
+ * of ACE User Settings, but for now we do not protect this
+ * case with SMACK). */
+ RequestedDevCapsMap staticPermittedDevCaps;
+ std::string installInfo; ///<For recovery>
+ InstallLocationType locationType;
+ bool isUpdateMode;
};
#endif // INSTALLER_CONTEXT_H