ThrowMsg(PropertyDAOReadOnly::Exception::ReadOnlyProperty,
"Property is readonly");
}
+ DbWidgetHandle widgetHandle(WidgetDAOReadOnly::getHandle(tzAppid));
if (readonly.IsNull()) {
WidgetPreference::Row row;
+ row.Set_app_id(widgetHandle);
row.Set_tizen_appid(tzAppid);
row.Set_key_name(key);
row.Set_key_value(value);
}
}
-void RegisterProperties(TizenAppId tzAppid,
+void RegisterProperties(DbWidgetHandle widgetHandle, TizenAppId tzAppid,
const WidgetRegisterInfo ®Info)
{
LogDebug("Registering proferences for widget. appid: " << tzAppid);
{
{ // Insert into table Widget Preferences
WidgetPreference::Row row;
+ row.Set_app_id(widgetHandle);
row.Set_tizen_appid(tzAppid);
row.Set_key_name(it->name);
row.Set_key_value(it->value);
FOREACH(it, ormWidgetPrefRow) {
WidgetPreferenceRow row;
+ row.appId = it->Get_app_id();
row.tizen_appid = it->Get_tizen_appid();
row.key_name = it->Get_key_name();
row.key_value = it->Get_key_value();
Try {
using namespace DPL::DB::ORM;
using namespace DPL::DB::ORM::wrt;
+
+ DbWidgetHandle widgetHandle(WidgetDAOReadOnly::getHandle(tzAppid));
+
WRT_DB_SELECT(select, WidgetPreference, &WrtDatabase::interface())
- select->Where(And(Equals<WidgetPreference::tizen_appid>(tzAppid),
+ select->Where(And(Equals<WidgetPreference::app_id>(widgetHandle),
Equals<WidgetPreference::key_name>(key)));
return select->GetSingleValue<WidgetPreference::readonly>();
Try {
using namespace DPL::DB::ORM;
using namespace DPL::DB::ORM::wrt;
+
+ DbWidgetHandle widgetHandle(WidgetDAOReadOnly::getHandle(tzAppid));
+
ORMWidgetPropertyKeyList keyList;
WRT_DB_SELECT(select, WidgetPreference, &WrtDatabase::interface())
- select->Where(Equals<WidgetPreference::tizen_appid>(tzAppid));
+ select->Where(Equals<WidgetPreference::app_id>(widgetHandle));
keyList = select->GetValueList<WidgetPreference::key_name>();
WidgetPropertyKeyList retKeyList;
Try {
using namespace DPL::DB::ORM;
using namespace DPL::DB::ORM::wrt;
+
+ DbWidgetHandle widgetHandle(WidgetDAOReadOnly::getHandle(tzAppId));
+
WRT_DB_SELECT(select, WidgetPreference, &WrtDatabase::interface())
- select->Where(Equals<WidgetPreference::tizen_appid>(tzAppId));
+ select->Where(Equals<WidgetPreference::app_id>(widgetHandle));
ORMWidgetPreferenceList ormPrefList = select->GetRowList();
WidgetPreferenceList prefList;
Try {
using namespace DPL::DB::ORM;
using namespace DPL::DB::ORM::wrt;
+
+ DbWidgetHandle widgetHandle(WidgetDAOReadOnly::getHandle(tzAppid));
+
WRT_DB_SELECT(select, WidgetPreference, &WrtDatabase::interface())
- select->Where(And(Equals<WidgetPreference::tizen_appid>(tzAppid),
+ select->Where(And(Equals<WidgetPreference::app_id>(widgetHandle),
Equals<WidgetPreference::key_name>(key)));
ORMWidgetPropertyValue ormPropValue =
registerWidgetStartFile(widgetHandle, widgetRegInfo);
- PropertyDAO::RegisterProperties(tzAppId, widgetRegInfo);
+ PropertyDAO::RegisterProperties(widgetHandle, tzAppId, widgetRegInfo);
registerWidgetFeatures(widgetHandle, widgetRegInfo);
"Cannot find widget. tzAppId: " << fromAppId);
}
- WidgetInfo::Row row;
+ WRT_DB_SELECT(select, WidgetInfo, &WrtDatabase::interface())
+ select->Where(Equals<WidgetInfo::tizen_appid>(fromAppId));
+
+ WidgetInfo::Row row = select->GetSingleRow();
+
+ //WidgetInfo::Row row;
row.Set_tizen_appid(toAppId);
WRT_DB_UPDATE(update, WidgetInfo, &WrtDatabase::interface())
typedef std::list<WidgetPropertyKey> WidgetPropertyKeyList;
struct WidgetPreferenceRow {
+ int appId;
TizenAppId tizen_appid;
WidgetPropertyKey key_name;
WidgetPropertyValue key_value;
/* This method registers properties for widget.
* Properties unregistering is done via "delete cascade" mechanism in SQL
*/
-void RegisterProperties(TizenAppId tzAppid,
+void RegisterProperties(DbWidgetHandle widgetHandle, TizenAppId tzAppid,
const WidgetRegisterInfo ®Info);
} // namespace PropertyDAO
} // namespace WrtDB
CREATE_TABLE_END()
CREATE_TABLE(WidgetPreference)
+ COLUMN_NOT_NULL(app_id, INTEGER,)
COLUMN_NOT_NULL(tizen_appid, TEXT, DEFAULT 0)
COLUMN_NOT_NULL(key_name, TEXT,)
COLUMN(key_value, TEXT, DEFAULT '')
COLUMN(readonly, INT, DEFAULT 0)
TABLE_CONSTRAINTS(
- PRIMARY KEY(tizen_appid, key_name),
- FOREIGN KEY(tizen_appid) REFERENCES WidgetInfo (tizen_appid) ON DELETE CASCADE
+ PRIMARY KEY(app_id, key_name),
+ FOREIGN KEY(app_id) REFERENCES WidgetInfo (app_id) ON DELETE CASCADE
)
CREATE_TABLE_END()