#include <widget_install/widget_install_context.h>
#include <web_provider_livebox_info.h>
#include <dpl/wrt-dao-rw/widget_dao.h>
-#include <dpl/wrt-dao-ro/vconf_config.h>
#include <dpl/foreach.h>
#include <dpl/utils/wrt_utility.h>
#include <dpl/log/log.h>
#include <ace_registration.h>
#include <errno.h>
#include <string.h>
-#include <vconf.h>
#include <map>
using namespace WrtDB;
m_handleToRemove(INVALID_WIDGET_HANDLE),
m_handle(INVALID_WIDGET_HANDLE)
{
+ AddStep(&TaskDatabase::StartStep);
AddStep(&TaskDatabase::StepRegisterExternalFiles);
AddStep(&TaskDatabase::StepWrtDBInsert);
AddStep(&TaskDatabase::StepAceDBInsert);
AddStep(&TaskDatabase::StepSecurityOriginDBInsert);
AddStep(&TaskDatabase::StepRemoveExternalFiles);
- AddStep(&TaskDatabase::StepCreateVconf);
AddStep(&TaskDatabase::StepLiveboxDBInsert);
+ AddStep(&TaskDatabase::EndStep);
AddAbortStep(&TaskDatabase::StepAbortDBInsert);
AddAbortStep(&TaskDatabase::StepAbortAceDBInsert);
time(&m_context.widgetConfig.installedTime);
if (m_context.isUpdateMode) { //update
- LogInfo("Registering widget... (update)");
+ LogDebug("Registering widget... (update)");
Try
{
m_handleToRemove = WidgetDAOReadOnly::getHandle(
"Given tizenId not found for update installation");
}
- WidgetDAO::backupAndUpdateWidget(
- m_backAppId,
- m_context.widgetConfig.tzAppid,
- m_context.widgetConfig,
- m_context.wacSecurity);
- m_handle = WidgetDAOReadOnly::getHandle(
- m_context.widgetConfig.tzAppid);
+ WidgetDAO::updateTizenAppId(m_context.widgetConfig.tzAppid,
+ m_backAppId);
+ WidgetDAO::registerWidget(m_context.widgetConfig.tzAppid,
+ m_context.widgetConfig,
+ m_context.widgetSecurity);
+ m_handle =
+ WidgetDAOReadOnly::getHandle(m_context.widgetConfig.tzAppid);
} else { //new installation
- LogInfo("Registering widget...");
+ LogDebug("Registering widget...");
WidgetDAO::registerWidget(
m_context.widgetConfig.tzAppid,
m_context.widgetConfig,
- m_context.wacSecurity);
+ m_context.widgetSecurity);
m_handle = WidgetDAOReadOnly::getHandle(
m_context.widgetConfig.tzAppid);
}
FOREACH(cap, m_context.staticPermittedDevCaps) {
- LogInfo(
+ LogDebug(
"staticPermittedDevCaps : " << cap->first
<< " smack status: " <<
cap->second);
}
- LogInfo("Widget registered");
+ LogDebug("Widget registered");
}
Catch(WidgetDAO::Exception::DatabaseError)
{
}
if (!AceApi::registerAceWidget(m_handle, m_context.widgetConfig,
- m_context.wacSecurity.getCertificateList()))
+ m_context.widgetSecurity.getCertificateList()))
{
LogError("ace database insert failed");
ThrowMsg(Exceptions::UpdateFailed,
}
}
}
-
- m_context.job->UpdateProgress(
- InstallerContext::INSTALL_NEW_DB_INSERT,
- "New Widget DB UPDATE Finished");
}
void TaskDatabase::StepRegisterExternalFiles()
}
}
-void TaskDatabase::StepCreateVconf()
-{
- LogDebug("StepCreateVconf");
- std::map<std::string, WrtDB::SettingsType> vconfData;
- vconfData[
- WrtDB::VconfConfig::GetVconfKeyPopupUsage(
- m_context.widgetConfig.tzAppid)] = WrtDB::SETTINGS_TYPE_ON;
- vconfData[
- WrtDB::VconfConfig::GetVconfKeyGeolocationUsage(
- m_context.widgetConfig.tzAppid)] = WrtDB::SETTINGS_TYPE_ON;
- vconfData[
- WrtDB::VconfConfig::GetVconfKeyWebNotificationUsage(
- m_context.widgetConfig.tzAppid)] = WrtDB::SETTINGS_TYPE_ON;
- vconfData[
- WrtDB::VconfConfig::GetVconfKeyWebDatabaseUsage(
- m_context.widgetConfig.tzAppid)] = WrtDB::SETTINGS_TYPE_ON;
- vconfData[
- WrtDB::VconfConfig::GetVconfKeyMemorySavingMode(
- m_context.widgetConfig.tzAppid)] = WrtDB::SETTINGS_TYPE_OFF;
-
- // vconftool -g 5000 set -t int <path> initialize value
- // Current installer should use vconftool for setting group ID
- // In case of install application by pkgcmd, permission for others
- // set to read-only
- FOREACH(it, vconfData) {
- std::ostringstream command;
- command << "vconftool -g 5000 set -t int ";
- command << (*it).first;
- command << " \"" << static_cast<int>((*it).second) << "\"";
- int ret = system(command.str().c_str());
- if (-1 == ret) {
- ThrowMsg(Exceptions::CreateVconfFailure,
- "Failed to create vconf files");
- }
- }
-}
-
void TaskDatabase::StepAbortDBInsert()
{
LogWarning("[DB Update Task] Aborting... (DB Clean)");
Try
{
- WidgetDAO::restoreUpdateWidget(m_backAppId,
- m_context.widgetConfig.tzAppid);
+ if (m_context.isUpdateMode) {
+ WidgetDAO::unregisterWidget(m_context.widgetConfig.tzAppid);
+ WidgetDAO::updateTizenAppId(m_backAppId,
+ m_context.widgetConfig.tzAppid);
+ } else {
+ WidgetDAO::unregisterWidget(m_context.widgetConfig.tzAppid);
+ }
LogDebug("Cleaning DB successful!");
}
Catch(DPL::DB::SqlConnection::Exception::Base)
} else {
boxType = DPL::ToUTF8String((**it).m_type);
}
- LogInfo("livebox id: " << boxId);
- LogInfo("livebox type: " << boxType);
+ LogDebug("livebox id: " << boxId);
+ LogDebug("livebox type: " << boxType);
int autoLaunch = (**it).m_autoLaunch == L"true" ? 1 : 0;
- LogInfo("livebox auto-launch: " << autoLaunch);
+ LogDebug("livebox auto-launch: " << autoLaunch);
int mouseEvent = (**it).m_boxInfo.m_boxMouseEvent == L"true" ? 1 : 0;
- LogInfo("livebox mouse-event: " << mouseEvent);
+ LogDebug("livebox mouse-event: " << mouseEvent);
int pdFastOpen = (**it).m_boxInfo.m_pdFastOpen == L"true" ? 1 : 0;
- LogInfo("livebox pd fast-open: " << pdFastOpen);
+ LogDebug("livebox pd fast-open: " << pdFastOpen);
web_provider_livebox_insert_box_info(
boxId.c_str(), tizenId.c_str(), boxType.c_str(),
autoLaunch, mouseEvent, pdFastOpen);
}
}
+
+void TaskDatabase::StartStep()
+{
+ LogDebug("--------- <TaskDatabase> : START ----------");
+}
+
+void TaskDatabase::EndStep()
+{
+ LogDebug("--------- <TaskDatabase> : END ----------");
+}
} //namespace WidgetInstall
} //namespace Jobs