X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=modules%2Fwidget_dao%2Fdao%2Fwidget_dao.cpp;h=bc7fcc6b8ce6cb76528b77a258bc8c97d3706316;hb=61b877bfd9f467e56e1380bfe894f209db7d6668;hp=be33379c706a4511136358110bc144a5adf625a2;hpb=45bf3bfbb061b87511ece6f50b1aa6c803844a65;p=framework%2Fweb%2Fwrt-commons.git diff --git a/modules/widget_dao/dao/widget_dao.cpp b/modules/widget_dao/dao/widget_dao.cpp index be33379..bc7fcc6 100644 --- a/modules/widget_dao/dao/widget_dao.cpp +++ b/modules/widget_dao/dao/widget_dao.cpp @@ -163,8 +163,6 @@ DbWidgetHandle WidgetDAO::registerWidget(const WidgetRegisterInfo &widgetRegInfo wacSecurity.getCertificateChainList(list); registerLaunchCertificates(widgetHandle,list); - registerWidgetPowderData(widgetHandle, widgetRegInfo); - registerWidgetSettings(widgetHandle, widgetRegInfo); registerAppService(widgetHandle, widgetRegInfo); @@ -224,7 +222,6 @@ DbWidgetHandle WidgetDAO::registerWidgetInfo(const WidgetRegisterInfo ®Info, row.Set_author_href(widgetConfigurationInfo.authorHref); row.Set_base_folder(DPL::FromUTF8String(regInfo.baseFolder)); row.Set_webkit_plugins_required(widgetConfigurationInfo.flashNeeded); - row.Set_child_protection(1); row.Set_recognized(wacSecurity.isRecognized()); row.Set_wac_signed(wacSecurity.isWacSigned()); row.Set_distributor_signed(wacSecurity.isDistributorSigned()); @@ -390,6 +387,7 @@ void WidgetDAO::registerWidgetFeatures(DbWidgetHandle widgetHandle, widgetFeature.Set_app_id(widgetHandle); widgetFeature.Set_name(pWidgetFeature->name); widgetFeature.Set_required(pWidgetFeature->required); + widgetFeature.Set_rejected(false); wrt::WidgetFeature::widget_feature_id::ColumnType widgetFeatureID; { @@ -414,6 +412,29 @@ void WidgetDAO::registerWidgetFeatures(DbWidgetHandle widgetHandle, } } +void WidgetDAO::updateFeatureRejectStatus(const DbWidgetFeature &widgetFeature){ + // This function could be merged with registerWidgetFeature but it requires desing change: + // 1. Check "ace step" in installer must be done before "update database step" + // And: + // ConfigurationParserData shouldn't be called "ParserData" any more. + using namespace DPL::DB::ORM; + + wrt::ScopedTransaction transaction(&WrtDatabase::interface()); + WRT_DB_SELECT(select, wrt::WidgetFeature, &WrtDatabase::interface()) + select->Where(And(Equals(m_widgetHandle), + Equals(widgetFeature.name))); + + auto row = select->GetSingleRow(); + row.Set_rejected(widgetFeature.rejected); + + WRT_DB_UPDATE(update, wrt::WidgetFeature, &WrtDatabase::interface()) + update->Where(And(Equals(m_widgetHandle), + Equals(widgetFeature.name))); + update->Values(row); + update->Execute(); + transaction.Commit(); +} + void WidgetDAO::registerWidgetWindowModes(DbWidgetHandle widgetHandle, const WidgetRegisterInfo ®Info) { @@ -474,44 +495,6 @@ void WidgetDAO::registerWidgetCertificates(DbWidgetHandle widgetHandle, } } -void WidgetDAO::registerWidgetPowderData(DbWidgetHandle widgetHandle, - const WidgetRegisterInfo ®Info) -{ - using namespace DPL::DB::ORM; - using namespace DPL::DB::ORM::wrt; - - using namespace Powder; - - FOREACH(i, regInfo.powderDescription.categories) - { - const DPL::String& categoryName(i->first); - const Description::CategoryEntry& categoryEntry(i->second); - FOREACH(l, categoryEntry.levels) - { - PowderLevels::id::ColumnType powderID; - { - PowderLevels::Row row; - row.Set_app_id(widgetHandle); - row.Set_category(categoryName); - row.Set_level(l->level); - - WRT_DB_INSERT(insert, PowderLevels, &WrtDatabase::interface()) - insert->Values(row); - powderID = insert->Execute(); - } - - FOREACH(c, l->context) - { - PowderLevelContexts::Row row; - row.Set_levelId(powderID); - row.Set_context(*c); - - DO_INSERT(row, PowderLevelContexts) - } - } - } -} - void WidgetDAO::registerLaunchCertificates(DbWidgetHandle widgetHandle, const CertificateChainList &certificateChainList) {