X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fjobs%2Fwidget_install%2Fjob_widget_install.h;h=f0af6f2cc8b41716285cd8a756c870942f61a887;hb=22da51a3726e6645e723a56e2b199206c7610f9a;hp=6066c262a6ce077e57ce2e8399a3c36efba34934;hpb=9bc14ad896a5e458d6bb483644e6a281d81b5af7;p=framework%2Fweb%2Fwrt-installer.git diff --git a/src/jobs/widget_install/job_widget_install.h b/src/jobs/widget_install/job_widget_install.h index 6066c26..f0af6f2 100644 --- a/src/jobs/widget_install/job_widget_install.h +++ b/src/jobs/widget_install/job_widget_install.h @@ -33,8 +33,23 @@ #include #include "widget_installer_struct.h" +using namespace Jobs::Exceptions; + namespace Jobs { namespace WidgetInstall { +enum class ConfigureResult +{ + Ok, + Deferred, + Updated, + Failed, + Failed_InvalidConfig, + Failed_LowerVersion, + Failed_AlreadyInstalled, + Failed_WidgetRunning, + Failed_DrmError, +}; + class JobWidgetInstall : public Job, public JobProgressBase make it base template class?? - Exceptions::Type m_exceptionCaught; + Jobs::Exceptions::Type m_exceptionCaught; std::string m_exceptionMessage; WidgetUpdateInfo m_widgetUpdateInfo; - bool m_needEncryption; - bool m_isDRM; - - enum class ConfigureResult - { - Ok, Failed, Deferred, Updated - }; + bool m_needEncryption; + bool m_isDRM; ConfigureResult ConfigureInstallation(const std::string &widgetSource, const WrtDB::ConfigParserData &configData, const std::string &tempPath); static WrtDB::ConfigParserData getWidgetDataFromXML( - const std::string &widgetSource, - const std::string &tempPath, - WrtDB::PackagingType pkgType, - bool isDRM); + const std::string &widgetSource, + const std::string &tempPath, + WrtDB::PackagingType pkgType, + bool isDRM, + bool isReinstall); static WidgetUpdateInfo detectWidgetUpdate( - const WrtDB::ConfigParserData &configInfo, - const WrtDB::WidgetType appType, - const WrtDB::WidgetPkgName &tizenId); - WidgetUpdateMode::Type CalcWidgetUpdatePolicy( - const OptionalWidgetVersion &existingVersion, - const OptionalWidgetVersion &incomingVersion) const; + const WrtDB::ConfigParserData &configInfo, + const WrtDB::TizenAppId &tizenId); + bool isUpperVersion( + const OptionalWidgetVersion &existingVersion, + const OptionalWidgetVersion &incomingVersion); void setTizenId(const WrtDB::ConfigParserData &configInfo); void displayWidgetInfo(); void configureWidgetLocation(const std::string & widgetPath, const std::string &tempPath); WrtDB::PackagingType checkPackageType( - const std::string &widgetSource, - const std::string &tempPath); + const std::string &widgetSource, + const std::string &tempPath); bool detectResourceEncryption(const WrtDB::ConfigParserData &configData); void setInstallLocationType(const WrtDB::ConfigParserData - &configData); + &configData); bool isDRMWidget(std::string widgetPath); bool DecryptDRMWidget(std::string widgetPath, std::string destPath); ConfigureResult PrePareInstallation(const std::string &widgetPath); + bool validateTizenApplicationID(const WrtDB::TizenAppId &tizenAppId); + bool validateTizenPackageID(const WrtDB::TizenPkgId &tizenPkgId); ConfigureResult checkWidgetUpdate(const WidgetUpdateInfo &update); void setApplicationType(const WrtDB::ConfigParserData &configInfo); @@ -94,12 +106,13 @@ class JobWidgetInstall : * @brief Automaticaly sets installation process */ JobWidgetInstall(std::string const & widgetPath, - const WidgetInstallationStruct &installerStruct); + const WidgetInstallationStruct &installerStruct); //overrides void SendProgress(); void SendFinishedSuccess(); void SendFinishedFailure(); + void SendProgressIconPath(const std::string &path); void SaveExceptionData(const Jobs::JobExceptionBase&); }; } //namespace WidgetInstall