diff options
author | Raquel Medina <raquel.medina@konsulko.com> | 2020-09-17 14:30:56 +0200 |
---|---|---|
committer | Raquel Medina <raquel.medina@konsulko.com> | 2020-09-21 20:45:00 +0200 |
commit | cf647a95213c209ab7214f1c1c16f1771c4bb229 (patch) | |
tree | 25fab07c184f45087e1ad8fe9066e6c2c6d7630c | |
parent | fa9d1210cdfff25403fb1d234d561444d7d47656 (diff) |
create persistence binding entry for default adapter
Add logic to create an entry for 'default_adapter'
in the persistence database.
This will enable having the stored value available
between power up/power down cycles.
Bug-AGL: SPEC-3577
Signed-off-by: Raquel Medina <raquel.medina@konsulko.com>
Change-Id: I158dcc1d37ccaf8dfe5d53e262f0619ad780c26a
-rw-r--r-- | binding/bluetooth-api.c | 6 | ||||
-rw-r--r-- | binding/bluetooth-conf.c | 7 |
2 files changed, 12 insertions, 1 deletions
diff --git a/binding/bluetooth-api.c b/binding/bluetooth-api.c index c731c34..86883e0 100644 --- a/binding/bluetooth-api.c +++ b/binding/bluetooth-api.c @@ -726,8 +726,12 @@ static int init(afb_api_t api) } id->default_adapter = get_default_adapter(id->api); - if (!id->default_adapter) + if (!id->default_adapter) { id->default_adapter = g_strdup(BLUEZ_DEFAULT_ADAPTER); + ret = set_default_adapter(api, BLUEZ_DEFAULT_ADAPTER); + if (ret) + AFB_WARNING("Request to save default adapter to persistent storage failed "); + } args = json_object_new_object(); json_object_object_add(args , "technology", json_object_new_string("bluetooth")); diff --git a/binding/bluetooth-conf.c b/binding/bluetooth-conf.c index 2f6f475..ff888d6 100644 --- a/binding/bluetooth-conf.c +++ b/binding/bluetooth-conf.c @@ -66,7 +66,14 @@ int set_default_adapter(afb_api_t api, const char *adapter) json_object_object_add(query, "value", json_object_new_string(adapter)); ret = afb_api_call_sync(api, "persistence", "update", query, &response, NULL, NULL); + if (ret < 0) { + ret = afb_api_call_sync(api, "persistence", "insert", query, &response, NULL, NULL); + if (ret < 0) + goto out; + } + json_object_put(response); +out: return ret; } |