#include <orm_generator_wrt.h>
#include <LanguageTagsProvider.h>
-namespace WrtDB {
+namespace {
+ unsigned int seed = time(NULL);
+}
+namespace WrtDB {
//TODO in current solution in each getter there exists a check
//"IsWidgetInstalled". Maybe it should be verified, if it could be done
//differently (check in WidgetDAOReadOnly constructor)
"Cannot find widget. Handle: " << macro_handle); \
}
-
typedef DPL::DB::ORM::wrt::WidgetInfo::Row WidgetInfoRow;
typedef DPL::DB::ORM::wrt::WidgetFeature::widget_feature_id::ColumnType
- WidgetFeatureId;
+WidgetFeatureId;
typedef DPL::DB::ORM::wrt::WidgetSecuritySettings::Row
- WidgetSecuritySettingsRow;
+WidgetSecuritySettingsRow;
namespace {
-
using namespace DPL::DB::ORM;
using namespace DPL::DB::ORM::wrt;
}
return rows.front();
}
- SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed in getWidgetSecuritySettingsRow")
+ SQL_CONNECTION_EXCEPTION_HANDLER_END(
+ "Failed in getWidgetSecuritySettingsRow")
}
const int MAX_TIZENID_LENGTH = 10;
-WidgetPkgName getPkgNameByHandle(const DbWidgetHandle handle)
+TizenAppId getTizenAppIdByHandle(const DbWidgetHandle handle)
{
- LogDebug("Getting WidgetPkgName by DbWidgetHandle: " << handle);
+ LogDebug("Getting TizenAppId by DbWidgetHandle: " << handle);
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
{
if (rowList.empty()) {
ThrowMsg(WidgetDAOReadOnly::Exception::WidgetNotExist,
- "Failed to get widget by handle");
+ "Failed to get widget by handle");
}
- WidgetPkgName pkgname = rowList.front().Get_pkgname();
+ TizenAppId tzAppid = rowList.front().Get_tizen_appid();
+
+ return tzAppid;
+ }
+ SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed in getHandle")
+}
- return pkgname;
+TizenAppId getTizenAppIdByPkgId(const TizenPkgId tzPkgid)
+{
+ LogDebug("Getting TizenAppId by pkgid : " << tzPkgid);
+ SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
+ {
+ WRT_DB_SELECT(select, WidgetInfo, &WrtDatabase::interface())
+ select->Where(Equals<WidgetInfo::tizen_pkgid>(tzPkgid));
+ WidgetInfo::Select::RowList rowList = select->GetRowList();
+ if (rowList.empty()) {
+ ThrowMsg(WidgetDAOReadOnly::Exception::WidgetNotExist,
+ "Failed to get widget by handle");
+ }
+ TizenAppId tzAppid = rowList.front().Get_tizen_appid();
+
+ return tzAppid;
}
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed in getHandle")
}
-} // namespace
+TizenPkgId getTizenPkgIdByHandle(const DbWidgetHandle handle)
+{
+ LogDebug("Getting TizenPkgId by DbWidgetHandle: " << handle);
+
+ SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
+ {
+ WRT_DB_SELECT(select, WidgetInfo, &WrtDatabase::interface())
+ select->Where(Equals<WidgetInfo::app_id>(handle));
+ WidgetInfo::Select::RowList rowList = select->GetRowList();
+
+ if (rowList.empty()) {
+ ThrowMsg(WidgetDAOReadOnly::Exception::WidgetNotExist,
+ "Failed to get widget by handle");
+ }
+ TizenPkgId tzPkgid = rowList.front().Get_tizen_pkgid();
+
+ return tzPkgid;
+ }
+ SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed in getHandle")
+}
-IWacSecurity::~IWacSecurity()
+TizenPkgId getTizenPkgIdByAppId(const TizenAppId tzAppid)
{
+ LogDebug("Getting TizenPkgId by TizenAppId: " << tzAppid);
+
+ SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
+ {
+ WRT_DB_SELECT(select, WidgetInfo, &WrtDatabase::interface())
+ select->Where(Equals<WidgetInfo::tizen_appid>(tzAppid));
+ WidgetInfo::Select::RowList rowList = select->GetRowList();
+
+ if (rowList.empty()) {
+ ThrowMsg(WidgetDAOReadOnly::Exception::WidgetNotExist,
+ "Failed to get widget by tizen appId");
+ }
+ TizenPkgId tzPkgid = rowList.front().Get_tizen_pkgid();
+
+ return tzPkgid;
+ }
+ SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed get pkgId")
}
+} // namespace
+
+IWidgetSecurity::~IWidgetSecurity()
+{}
WidgetDAOReadOnly::WidgetDAOReadOnly(DbWidgetHandle widgetHandle) :
m_widgetHandle(widgetHandle)
-{
-}
+{}
WidgetDAOReadOnly::WidgetDAOReadOnly(DPL::OptionalString widgetGUID) :
m_widgetHandle(WidgetDAOReadOnly::getHandle(widgetGUID))
-{
-}
+{}
-WidgetDAOReadOnly::WidgetDAOReadOnly(DPL::String pkgName) :
- m_widgetHandle(WidgetDAOReadOnly::getHandle(pkgName))
-{
-
-}
+WidgetDAOReadOnly::WidgetDAOReadOnly(TizenAppId tzAppid) :
+ m_widgetHandle(WidgetDAOReadOnly::getHandle(tzAppid))
+{}
WidgetDAOReadOnly::~WidgetDAOReadOnly()
-{
-}
+{}
DbWidgetHandle WidgetDAOReadOnly::getHandle() const
{
if (rowList.empty()) {
ThrowMsg(WidgetDAOReadOnly::Exception::WidgetNotExist,
- "Failed to get widget by guid");
+ "Failed to get widget by guid");
}
return rowList.front().Get_app_id();
}
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed in getHandle")
}
-DbWidgetHandle WidgetDAOReadOnly::getHandle(const DPL::String pkgName)
+DbWidgetHandle WidgetDAOReadOnly::getHandle(const DPL::String tzAppId)
{
- LogDebug("Getting WidgetHandle by Package Name [" << pkgName << "]");
+ LogDebug("Getting WidgetHandle by tizen app id [" << tzAppId << "]");
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
{
WRT_DB_SELECT(select, WidgetInfo, &WrtDatabase::interface())
- select->Where(Equals<WidgetInfo::pkgname>(pkgName));
+ select->Where(Equals<WidgetInfo::tizen_appid>(tzAppId));
WidgetInfo::Select::RowList rowList = select->GetRowList();
if (rowList.empty()) {
ThrowMsg(WidgetDAOReadOnly::Exception::WidgetNotExist,
- "Failed to get widget by package name");
+ "Failed to get widget by package name");
}
return rowList.front().Get_app_id();
}
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed in getHandle")
}
-WidgetPkgName WidgetDAOReadOnly::getPkgName() const
+TizenAppId WidgetDAOReadOnly::getTzAppId() const
+{
+ return getTizenAppIdByHandle(m_widgetHandle);
+}
+
+TizenAppId WidgetDAOReadOnly::getTzAppId(const WidgetGUID GUID)
{
- return getPkgNameByHandle(m_widgetHandle);
+ return getTizenAppIdByHandle(getHandle(GUID));
}
-WidgetPkgName WidgetDAOReadOnly::getPkgName(const WidgetGUID GUID)
+TizenAppId WidgetDAOReadOnly::getTzAppId(const DbWidgetHandle handle)
{
- return getPkgNameByHandle(getHandle(GUID));
+ return getTizenAppIdByHandle(handle);
}
-WidgetPkgName WidgetDAOReadOnly::getPkgName(const DbWidgetHandle handle)
+TizenAppId WidgetDAOReadOnly::getTzAppId(const TizenPkgId tzPkgid)
{
- return getPkgNameByHandle(handle);
+ return getTizenAppIdByPkgId(tzPkgid);
+}
+
+TizenPkgId WidgetDAOReadOnly::getTzPkgId() const
+{
+ return getTizenPkgIdByHandle(m_widgetHandle);
+}
+
+TizenPkgId WidgetDAOReadOnly::getTzPkgId(const DbWidgetHandle handle)
+{
+ return getTizenPkgIdByHandle(handle);
+}
+
+TizenPkgId WidgetDAOReadOnly::getTzPkgId(const TizenAppId tzAppid)
+{
+ return getTizenPkgIdByAppId(tzAppid);
}
PropertyDAOReadOnly::WidgetPropertyKeyList
WidgetDAOReadOnly::getPropertyKeyList() const
{
- return PropertyDAOReadOnly::GetPropertyKeyList(getPkgName());
+ return PropertyDAOReadOnly::GetPropertyKeyList(getTzAppId());
}
PropertyDAOReadOnly::WidgetPreferenceList
WidgetDAOReadOnly::getPropertyList() const
{
- return PropertyDAOReadOnly::GetPropertyList(getPkgName());
+ return PropertyDAOReadOnly::GetPropertyList(getTzAppId());
}
PropertyDAOReadOnly::WidgetPropertyValue WidgetDAOReadOnly::getPropertyValue(
- const PropertyDAOReadOnly::WidgetPropertyKey &key) const
+ const PropertyDAOReadOnly::WidgetPropertyKey &key) const
{
- return PropertyDAOReadOnly::GetPropertyValue(getPkgName(), key);
+ return PropertyDAOReadOnly::GetPropertyValue(getTzAppId(), key);
}
DPL::OptionalInt WidgetDAOReadOnly::checkPropertyReadFlag(
- const PropertyDAOReadOnly::WidgetPropertyKey &key) const
+ const PropertyDAOReadOnly::WidgetPropertyKey &key) const
{
- return PropertyDAOReadOnly::CheckPropertyReadFlag(getPkgName(), key);
+ return PropertyDAOReadOnly::CheckPropertyReadFlag(getTzAppId(), key);
}
DPL::String WidgetDAOReadOnly::getPath() const
}
WidgetLocalizedInfo
- WidgetDAOReadOnly::getLocalizedInfo(const DPL::String& languageTag)
- const
+WidgetDAOReadOnly::getLocalizedInfo(const DPL::String& languageTag)
+const
{
LogDebug("Getting Localized Info. Handle: " << m_widgetHandle);
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
for (RowList::iterator i = list.begin(); i != list.end(); ++i) {
DbWidgetFeature feature;
feature.name = i->Get_name();
- feature.required = i->Get_required();
feature.rejected = i->Get_rejected();
- feature.params = getFeatureParams(i->Get_widget_feature_id());
FeatureDAOReadOnly featureDao(DPL::ToUTF8String(i->Get_name()));
feature.pluginId = featureDao.GetPluginHandle();
resultSet.insert(feature);
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get features list")
}
-WidgetParamMap WidgetDAOReadOnly::getFeatureParams(int id)
-{
- WidgetFeatureId widgetFeatureId(id);
- LogDebug("Getting feature Params. featureId: " << widgetFeatureId);
- SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
- {
- WRT_DB_SELECT(select, FeatureParam, &WrtDatabase::interface())
- select->Where(Equals<FeatureParam::widget_feature_id>(
- widgetFeatureId));
-
- WidgetParamMap resultMap;
- typedef std::list<FeatureParam::Row> RowList;
- RowList list = select->GetRowList();
-
- FOREACH(i, list)
- resultMap.insert(std::make_pair(i->Get_name(), i->Get_value()));
-
- return resultMap;
- }
- SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get feature params")
-}
-
bool WidgetDAOReadOnly::hasFeature(const std::string& featureName) const
{
LogDebug(
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get handle list")
}
-WidgetPkgNameList WidgetDAOReadOnly::getPkgnameList()
+TizenAppIdList WidgetDAOReadOnly::getTizenAppidList()
{
LogDebug("Getting Pkgname List ");
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
{
WRT_DB_SELECT(select, WidgetInfo, &WrtDatabase::interface())
- return select->GetValueList<WidgetInfo::pkgname>();
+ return select->GetValueList<WidgetInfo::tizen_appid>();
}
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get Pkgname list")
}
+TizenPkgIdList WidgetDAOReadOnly::getTizenPkgidList()
+{
+ LogDebug("Getting Pkgid List ");
+ SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
+ {
+ WRT_DB_SELECT(select, WidgetInfo, &WrtDatabase::interface())
+ return select->GetValueList<WidgetInfo::tizen_pkgid>();
+ }
+ SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get Pkgid list")
+}
DbWidgetDAOReadOnlyList WidgetDAOReadOnly::getWidgetList()
{
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to check if widget exist")
}
-bool WidgetDAOReadOnly::isWidgetInstalled(const WidgetPkgName & pkgName)
+bool WidgetDAOReadOnly::isWidgetInstalled(const TizenAppId &tzAppId)
{
- LogDebug("Checking if widget exist. package name " << pkgName);
+ LogDebug("Checking if widget exist. tizen app id" << tzAppId);
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
{
WRT_DB_SELECT(select, WidgetInfo, &WrtDatabase::interface())
- select->Where(Equals<WidgetInfo::pkgname>(pkgName));
+ select->Where(Equals<WidgetInfo::tizen_appid>(tzAppId));
WidgetInfo::Select::RowList rows = select->GetRowList();
}
CertificateChainList WidgetDAOReadOnly::getWidgetCertificate(
- CertificateSource source) const
+ CertificateSource source) const
{
WRT_DB_SELECT(select, WidgetCertificate, &WrtDatabase::interface())
select->Where(
CertificateChainList result;
FOREACH(iter, chainList)
- result.push_back(DPL::ToUTF8String(iter->Get_encoded_chain()));
+ result.push_back(DPL::ToUTF8String(iter->Get_encoded_chain()));
return result;
}
return row.Get_widget_id();
}
+DPL::OptionalString WidgetDAOReadOnly::getTizenAppId() const
+{
+ return DPL::OptionalString(getTzAppId());
+}
+
DPL::OptionalString WidgetDAOReadOnly::getDefaultlocale() const
{
WidgetInfoRow row = getWidgetInfoRow(m_widgetHandle);
return static_cast<bool>(*result);
}
-bool WidgetDAOReadOnly::isWacSigned() const
-{
- WidgetInfoRow row = getWidgetInfoRow(m_widgetHandle);
- DPL::OptionalInt result = row.Get_wac_signed();
- if (result.IsNull()) {
- return false;
- }
- return static_cast<bool>(*result);
-}
-
bool WidgetDAOReadOnly::isDistributorSigned() const
{
WidgetInfoRow row = getWidgetInfoRow(m_widgetHandle);
return isDistributorSigned();
}
-bool WidgetDAOReadOnly::isTestWidget() const
+DPL::OptionalString WidgetDAOReadOnly::getCspPolicy() const
{
- Try {
- WRT_DB_SELECT(select, WidgetExtendedInfo, &WrtDatabase::interface())
- select->Where(Equals<WidgetExtendedInfo::app_id>(m_widgetHandle));
-
- WidgetExtendedInfo::Select::RowList rows = select->GetRowList();
- if (rows.empty()) {
- ThrowMsg(WidgetDAOReadOnly::Exception::WidgetNotExist,
- "Cannot find widget. Handle: " << m_widgetHandle);
- }
+ WidgetInfoRow row = getWidgetInfoRow(m_widgetHandle);
+ return row.Get_csp_policy();
+}
- return static_cast<bool>(rows.front().Get_test_widget());
- }
- Catch(DPL::DB::SqlConnection::Exception::Base){
- ReThrowMsg(WidgetDAOReadOnly::Exception::DatabaseError,
- "Failed to check IsTestWidget");
- }
+DPL::OptionalString WidgetDAOReadOnly::getCspPolicyReportOnly() const
+{
+ WidgetInfoRow row = getWidgetInfoRow(m_widgetHandle);
+ return row.Get_csp_policy_report_only();
}
bool WidgetDAOReadOnly::getWebkitPluginsRequired() const
WidgetInfoRow row = getWidgetInfoRow(m_widgetHandle);
DPL::OptionalInt ret = row.Get_webkit_plugins_required();
- if (ret.IsNull() || *ret == 0) { return false; } else { return true; }
+ if (ret.IsNull() || *ret == 0) {
+ return false;
+ } else { return true;
+ }
}
time_t WidgetDAOReadOnly::getInstallTime() const
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get splash image path")
}
-WidgetDAOReadOnly::WidgetLocalizedIconList WidgetDAOReadOnly::getLocalizedIconList() const
+WidgetDAOReadOnly::WidgetLocalizedIconList WidgetDAOReadOnly::
+ getLocalizedIconList() const
{
//TODO check widget existance??
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
select->Where(Equals<WidgetLocalizedIcon::app_id>(m_widgetHandle));
std::list<WidgetLocalizedIcon::Row> list =
- select->GetRowList();
+ select->GetRowList();
WidgetLocalizedIconList ret;
- FOREACH(it,list)
+ FOREACH(it, list)
{
- WidgetLocalizedIconRow icon = {it->Get_app_id(),
- it->Get_icon_id(),
- it->Get_widget_locale()};
+ WidgetLocalizedIconRow icon = { it->Get_app_id(),
+ it->Get_icon_id(),
+ it->Get_widget_locale() };
ret.push_back(icon);
}
return ret;
{
WRT_DB_SELECT(select, wrt::WidgetIcon, &WrtDatabase::interface())
select->Where(Equals<wrt::WidgetIcon::app_id>(m_widgetHandle));
+ select->OrderBy(DPL::TypeListDecl<OrderingAscending<wrt::WidgetIcon::
+ icon_id> >());
std::list<WidgetIcon::Row> list =
- select->GetRowList();
+ select->GetRowList();
WidgetIconList ret;
- FOREACH(it,list)
+ FOREACH(it, list)
{
- WidgetIconRow icon = {it->Get_icon_id(),
- it->Get_app_id(),
- it->Get_icon_src(),
- it->Get_icon_width(),
- it->Get_icon_height()};
+ WidgetIconRow icon = { it->Get_icon_id(),
+ it->Get_app_id(),
+ it->Get_icon_src(),
+ it->Get_icon_width(),
+ it->Get_icon_height() };
ret.push_back(icon);
}
return ret;
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get icon data")
}
-WidgetDAOReadOnly::LocalizedStartFileList WidgetDAOReadOnly::getLocalizedStartFileList() const
+WidgetDAOReadOnly::LocalizedStartFileList WidgetDAOReadOnly::
+ getLocalizedStartFileList() const
{
//TODO check widget existance
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
select->OrderBy("start_file_id ASC");
std::list<WidgetLocalizedStartFile::Row> list =
- select->GetRowList();
+ select->GetRowList();
LocalizedStartFileList ret;
- FOREACH(it,list)
+ FOREACH(it, list)
{
- WidgetLocalizedStartFileRow file = {it->Get_start_file_id(),
- it->Get_app_id(),
- it->Get_widget_locale(),
- it->Get_type(),
- it->Get_encoding()};
+ WidgetLocalizedStartFileRow file = { it->Get_start_file_id(),
+ it->Get_app_id(),
+ it->Get_widget_locale(),
+ it->Get_type(),
+ it->Get_encoding() };
ret.push_back(file);
}
return ret;
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get start file list data")
}
-WidgetDAOReadOnly::WidgetStartFileList WidgetDAOReadOnly::getStartFileList() const
+WidgetDAOReadOnly::WidgetStartFileList WidgetDAOReadOnly::getStartFileList()
+const
{
//TODO check widget existance
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
select->OrderBy("start_file_id ASC");
std::list<WidgetStartFile::Row> list =
- select->GetRowList();
+ select->GetRowList();
WidgetStartFileList ret;
- FOREACH(it,list)
+ FOREACH(it, list)
{
- WidgetStartFileRow file = {it->Get_start_file_id(),
- it->Get_app_id(),
- it->Get_src()};
+ WidgetStartFileRow file = { it->Get_start_file_id(),
+ it->Get_app_id(),
+ it->Get_src() };
ret.push_back(file);
}
return ret;
//TODO check widget existance
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
{
- WRT_DB_SELECT(select, WidgetCertificateFingerprint, &WrtDatabase::interface())
+ WRT_DB_SELECT(select,
+ WidgetCertificateFingerprint,
+ &WrtDatabase::interface())
select->Where(Equals<WidgetCertificateFingerprint::app_id>(
m_widgetHandle));
select->OrderBy("chainid");
}
FingerPrintList WidgetDAOReadOnly::getKeyFingerprints(
- WidgetCertificateData::Owner owner,
- WidgetCertificateData::Type type) const
+ WidgetCertificateData::Owner owner,
+ WidgetCertificateData::Type type) const
{
//TODO check widget existance
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
{
- WRT_DB_SELECT(select, WidgetCertificateFingerprint, &WrtDatabase::interface())
+ WRT_DB_SELECT(select,
+ WidgetCertificateFingerprint,
+ &WrtDatabase::interface())
select->Where(And(And(
- Equals<WidgetCertificateFingerprint::app_id>(m_widgetHandle),
- Equals<WidgetCertificateFingerprint::owner>(owner)),
- Equals<WidgetCertificateFingerprint::type>(type)));
+ Equals<WidgetCertificateFingerprint::app_id>(
+ m_widgetHandle),
+ Equals<WidgetCertificateFingerprint::owner>(owner)),
+ Equals<WidgetCertificateFingerprint::type>(type)));
WidgetCertificateFingerprint::Select::RowList rows =
select->GetRowList();
}
WidgetCertificateCNList WidgetDAOReadOnly::getKeyCommonNameList(
- WidgetCertificateData::Owner owner,
- WidgetCertificateData::Type type) const
+ WidgetCertificateData::Owner owner,
+ WidgetCertificateData::Type type) const
{
//TODO check widget existance
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
{
- WRT_DB_SELECT(select, WidgetCertificateFingerprint, &WrtDatabase::interface())
+ WRT_DB_SELECT(select,
+ WidgetCertificateFingerprint,
+ &WrtDatabase::interface())
select->Where(And(And(
- Equals<WidgetCertificateFingerprint::app_id>(m_widgetHandle),
- Equals<WidgetCertificateFingerprint::owner>(owner)),
- Equals<WidgetCertificateFingerprint::type>(type)));
+ Equals<WidgetCertificateFingerprint::app_id>(
+ m_widgetHandle),
+ Equals<WidgetCertificateFingerprint::owner>(owner)),
+ Equals<WidgetCertificateFingerprint::type>(type)));
WidgetCertificateFingerprint::Select::RowList rows =
select->GetRowList();
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get key common name")
}
-ResourceAttributeList WidgetDAOReadOnly::getResourceAttribute(
- const std::string &resourceId) const
-{
- WRT_DB_SELECT(select, WidgetFeature, &WrtDatabase::interface())
- select->Where(And(Equals<WidgetFeature::app_id>(m_widgetHandle),
- Equals<WidgetFeature::name>(
- DPL::FromUTF8String(resourceId))));
-
- std::list<WidgetFeature::Row> list = select->GetRowList();
- ResourceAttributeList result;
- if (!list.empty()) {
- int widgetFeatureId = list.begin()->Get_widget_feature_id();
- WidgetParamMap map = getFeatureParams(widgetFeatureId);
-
- FOREACH(i, map)
- result.push_back(DPL::ToUTF8String(i->first));
- }
- return result;
-}
-
void WidgetDAOReadOnly::getWidgetAccessInfo(
- WidgetAccessInfoList& outAccessInfoList) const
+ WidgetAccessInfoList& outAccessInfoList) const
{
//TODO check widget existance
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get accessinfo list")
}
+void WidgetDAOReadOnly::getWidgetAllowNavigationInfo(
+ WidgetAllowNavigationInfoList& allowNavigationList) const
+{
+ SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
+ {
+ WRT_DB_SELECT(select, WidgetAllowNavigation, &WrtDatabase::interface())
+ select->Where(Equals<WidgetAllowNavigation::app_id>(m_widgetHandle));
+ WidgetAllowNavigation::Select::RowList rows = select->GetRowList();
+
+ FOREACH(it, rows) {
+ WidgetAllowNavigationInfo info;
+ info.scheme = it->Get_scheme();
+ info.host = it->Get_host();
+ allowNavigationList.push_back(info);
+ }
+ }
+ SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get allow-navigation info list")
+}
+
LanguageTags WidgetDAOReadOnly::getLanguageTags() const
{
//TODO check widget existance
using namespace WrtDB::WidgetConfig;
std::ostringstream path;
- WidgetPkgName pkgname = getPkgName();
+ TizenAppId tzAppId = getTzAppId();
- path << GetWidgetPersistentStoragePath(pkgname);
+ path << GetWidgetPersistentStoragePath(tzAppId);
path << "/";
path << GlobalConfig::GetCookieDatabaseFile();
std::string WidgetDAOReadOnly::getPrivateLocalStoragePath() const
{
std::ostringstream path;
- WidgetPkgName pkgname = getPkgName();
- path << WidgetConfig::GetWidgetWebLocalStoragePath(pkgname);
+ TizenAppId tzPkgId = getTizenPkgId();
+ path << WidgetConfig::GetWidgetWebLocalStoragePath(tzPkgId);
path << "/";
return path.str();
}
void WidgetDAOReadOnly::getWidgetSettings(
- WidgetSettings& outWidgetSettings) const
+ WidgetSettings& outWidgetSettings) const
{
//TODO check widget existance
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get settings list")
}
-void WidgetDAOReadOnly::getAppServiceList(
- WidgetApplicationServiceList& outAppServiceList) const
+void WidgetDAOReadOnly::getAppControlList(
+ WidgetAppControlList& outAppControlList) const
{
- LogDebug("Getting getAppServiceList. Handle: " << m_widgetHandle);
+ LogDebug("Getting getAppControlList. Handle: " << m_widgetHandle);
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
{
ScopedTransaction transaction(&WrtDatabase::interface());
CHECK_WIDGET_EXISTENCE(transaction, m_widgetHandle)
- WRT_DB_SELECT(select, ApplicationServiceInfo, &WrtDatabase::interface())
- select->Where(Equals<ApplicationServiceInfo::app_id>(m_widgetHandle));
+ WRT_DB_SELECT(select, AppControlInfo, &WrtDatabase::interface())
+ select->Where(Equals<AppControlInfo::app_id>(m_widgetHandle));
- ApplicationServiceInfo::Select::RowList rows = select->GetRowList();
+ AppControlInfo::Select::RowList rows = select->GetRowList();
if (rows.empty()) {
- LogDebug("Application Service list is empty. Handle: " <<
+ LogDebug("AppControl list is empty. Handle: " <<
m_widgetHandle);
}
FOREACH(it, rows) {
- WidgetApplicationService ret;
+ WidgetAppControl ret;
ret.src = it->Get_src();
ret.operation = it->Get_operation();
- ret.scheme = it->Get_scheme();
+ ret.uri = it->Get_uri();
ret.mime = it->Get_mime();
- outAppServiceList.push_back(ret);
+ ret.disposition = static_cast<WidgetAppControl::Disposition>(it->Get_disposition());
+ ret.index = it->Get_execute_index();
+ outAppControlList.push_back(ret);
}
transaction.Commit();
}
- SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get access host list")
+ SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get AppControl list")
}
PackagingType WidgetDAOReadOnly::getPackagingType() const
return PackagingType(static_cast<PkgType>(*result));
}
-void WidgetDAOReadOnly::getEncryptedFileList(EncryptedFileList& filesList) const
+void WidgetDAOReadOnly::getEncryptedFileList(EncryptedFileList& filesList)
+const
{
//TODO check widget existance
WRT_DB_SELECT(select, EncryptedResourceList, &WrtDatabase::interface())
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get background page")
}
-WidgetPkgName WidgetDAOReadOnly::generateTizenId() {
+TizenPkgId WidgetDAOReadOnly::generatePkgId()
+{
std::string allowed("0123456789"
- "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
- "abcdefghijklmnopqrstuvwxyz");
- WidgetPkgName tizenId;
- tizenId.resize(MAX_TIZENID_LENGTH);
+ "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
+ "abcdefghijklmnopqrstuvwxyz");
+ TizenPkgId pkgId;
+ pkgId.resize(MAX_TIZENID_LENGTH);
do {
- for (int i = 0; i < MAX_TIZENID_LENGTH; ++i) {
- tizenId[i] = allowed[rand() % allowed.length()];
- }
- } while (isWidgetInstalled(tizenId));
- return tizenId;
+ for (int i = 0; i < MAX_TIZENID_LENGTH; ++i) {
+ pkgId[i] = allowed[rand_r(&seed) % allowed.length()];
+ }
+ } while (isWidgetInstalled(pkgId));
+ return pkgId;
}
SettingsType WidgetDAOReadOnly::getSecurityPopupUsage(void) const
return static_cast<SettingsType>(*result);
}
-SettingsType WidgetDAOReadOnly::getFileSystemUsage(void) const
-{
- WidgetSecuritySettingsRow row =
- getWidgetSecuritySettingsRow(m_widgetHandle);
- DPL::OptionalInt result = row.Get_file_system_usage();
- return static_cast<SettingsType>(*result);
-}
-
DPL::OptionalString WidgetDAOReadOnly::getWidgetInstalledPath() const
{
SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
}
SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get widdget installed path")
}
+
+TizenPkgId WidgetDAOReadOnly::getTizenPkgId() const
+{
+ WidgetInfoRow row = getWidgetInfoRow(m_widgetHandle);
+ return row.Get_tizen_pkgid();
+}
+
+PrivilegeList WidgetDAOReadOnly::getWidgetPrivilege() const
+{
+ //TODO check widget existance
+ SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
+ {
+ WRT_DB_SELECT(select, WidgetPrivilege, &WrtDatabase::interface())
+ select->Where(Equals<WidgetPrivilege::app_id>(m_widgetHandle));
+
+ return select->GetValueList<WidgetPrivilege::name>();
+ }
+ SQL_CONNECTION_EXCEPTION_HANDLER_END("Failed to get PrivilegeList")
+}
+
+WidgetSecurityModelVersion WidgetDAOReadOnly::getSecurityModelVersion() const
+{
+ WidgetInfoRow row = getWidgetInfoRow(m_widgetHandle);
+ DPL::OptionalInt result = row.Get_security_model_version();
+ return static_cast<WidgetSecurityModelVersion>(*result);
+}
+
#undef SQL_CONNECTION_EXCEPTION_HANDLER_BEGIN
#undef SQL_CONNECTION_EXCEPTION_HANDLER_END
#undef CHECK_WIDGET_EXISTENCE
-
} // namespace WrtDB