#include <dpl/utils/wrt_utility.h>
#include <dpl/log/log.h>
#include <dpl/assert.h>
+#include <wrt-commons/security-origin-dao/security_origin_dao.h>
#include <string>
#include <sstream>
#include <ace_api_install.h>
AddStep(&TaskDatabase::StepRegisterExternalFiles);
AddStep(&TaskDatabase::StepWrtDBInsert);
AddStep(&TaskDatabase::StepAceDBInsert);
+ AddStep(&TaskDatabase::StepSecurityOriginDBInsert);
AddStep(&TaskDatabase::StepRemoveExternalFiles);
AddStep(&TaskDatabase::StepCreateVconf);
AddStep(&TaskDatabase::StepLiveboxDBInsert);
"Update failure. ace_register_widget failed");
}
LogDebug("Ace data inserted");
+}
+
+void TaskDatabase::StepSecurityOriginDBInsert()
+{
+ LogDebug("Create Security origin database");
+ // automatically create security origin database
+ using namespace SecurityOriginDB;
+ SecurityOriginDAO dao(m_context.locations->getPkgId());
+
+ // Checking privilege list for setting security origin exception data
+ FOREACH(it, m_context.widgetConfig.configInfo.privilegeList) {
+ std::map<std::string, Feature>::const_iterator result =
+ g_W3CPrivilegeTextMap.find(DPL::ToUTF8String(it->name));
+ if (result != g_W3CPrivilegeTextMap.end()) {
+ dao.setPrivilegeSecurityOriginData(result->second);
+ }
+ }
m_context.job->UpdateProgress(
InstallerContext::INSTALL_NEW_DB_INSERT,