- }
- else
- {
- ret = EPERS_NOPLUGINFUNCT;
- }
- }
- return ret;
-}
-
-
-int persistence_reg_notify_on_change(char* dbPath, char* key, unsigned int ldbid, unsigned int user_no, unsigned int seat_no,
- pclChangeNotifyCallback_t callback)
-{
- int rval = 0;
- DBusError error;
- dbus_error_init (&error);
- char ruleChanged[DbusMatchRuleSize];
- char ruleDeleted[DbusMatchRuleSize];
-
- // assign callback
- gChangeNotifyCallback = callback;
-
- // add match for c h a n g e
- snprintf(ruleChanged, DbusMatchRuleSize, "type='signal',interface='org.genivi.persistence.adminconsumer',member='PersistenceResChange',path='/org/genivi/persistence/adminconsumer',arg0='%s',arg1='%u',arg2='%u',arg3='%u'",
- key, ldbid, user_no, seat_no);
- dbus_bus_add_match(get_dbus_connection(), ruleChanged, &error);
-
-
- // add match for d e l e t e
- snprintf(ruleDeleted, DbusMatchRuleSize, "type='signal',interface='org.genivi.persistence.adminconsumer',member='PersistenceResDelete',path='/org/genivi/persistence/adminconsumer',arg0='%s',arg1='%u',arg2='%u',arg3='%u'",
- key, ldbid, user_no, seat_no);
- dbus_bus_add_match(get_dbus_connection(), ruleDeleted, &error);
-
-
- // add match for c r e a t e
- snprintf(ruleDeleted, DbusMatchRuleSize, "type='signal',interface='org.genivi.persistence.adminconsumer',member='PersistenceResCreate',path='/org/genivi/persistence/adminconsumer',arg0='%s',arg1='%u',arg2='%u',arg3='%u'",
- key, ldbid, user_no, seat_no);
- dbus_bus_add_match(get_dbus_connection(), ruleDeleted, &error);
-
- return rval;
-}
-
-
-int pers_send_Notification_Signal(const char* key, PersistenceDbContext_s* context, pclNotifyStatus_e reason)
-{
- DBusMessage* message;
- dbus_bool_t ret;
- int rval = 0;
- char ldbid_array[DbusSubMatchSize] = {0};
- char user_array[DbusSubMatchSize] = {0};
- char seat_array[DbusSubMatchSize] = {0};
- const char* ldbid_ptr = ldbid_array;
- const char* user_ptr = user_array;
- const char* seat_ptr = seat_array;
-
- char* changeSignal = "PersistenceResChange";
- char* deleteSignal = "PersistenceResDelete";
- char* createSignal = "PersistenceResCreate";
- char* theReason = NULL;
-
- DBusConnection* conn = get_dbus_connection();