From: Luiz Augusto von Dentz <luiz.dentz@gmail.com>
To: linux-bluetooth@vger.kernel.org
Subject: [PATCH BlueZ 1/3] core/gatt: Promote GATT D-Bus interfaces to stable
Date: Mon, 18 Jul 2016 14:49:05 +0300 [thread overview]
Message-ID: <1468842547-7088-1-git-send-email-luiz.dentz@gmail.com> (raw)
From: Luiz Augusto von Dentz <luiz.von.dentz@intel.com>
These interfaces have been in use for quite a while in chromium where it
is used by Web Bluetooth APIs.
---
doc/gatt-api.txt | 10 +++++-----
src/gatt-client.c | 37 +++++++++++--------------------------
src/gatt-database.c | 10 +++++-----
3 files changed, 21 insertions(+), 36 deletions(-)
diff --git a/doc/gatt-api.txt b/doc/gatt-api.txt
index 4992243..f2f3d89 100644
--- a/doc/gatt-api.txt
+++ b/doc/gatt-api.txt
@@ -27,7 +27,7 @@ using GattManager1 registration method and must implement the methods and
properties defined in GattService1 interface.
Service org.bluez
-Interface org.bluez.GattService1 [Experimental]
+Interface org.bluez.GattService1
Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX/serviceXX
Properties string UUID [read-only]
@@ -58,7 +58,7 @@ For local GATT defined services, the object paths need to follow the service
path hierarchy and are freely definable.
Service org.bluez
-Interface org.bluez.GattCharacteristic1 [Experimental]
+Interface org.bluez.GattCharacteristic1
Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX/serviceXX/charYYYY
Methods array{byte} ReadValue(dict options)
@@ -159,7 +159,7 @@ Characteristic Descriptors hierarchy
Local or remote GATT characteristic descriptors hierarchy.
Service org.bluez
-Interface org.bluez.GattDescriptor1 [Experimental]
+Interface org.bluez.GattDescriptor1
Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX/serviceXX/charYYYY/descriptorZZZ
Methods array{byte} ReadValue(dict flags)
@@ -231,7 +231,7 @@ and requests automatic connections to be established to devices
supporting it.
Service <application dependent>
-Interface org.bluez.GattProfile1 [Experimental]
+Interface org.bluez.GattProfile1
Object path <application dependent>
Methods void Release()
@@ -308,7 +308,7 @@ all of its registered services will be automatically unregistered.
InterfacesAdded signals will be ignored.
Service org.bluez
-Interface org.bluez.GattManager1 [Experimental]
+Interface org.bluez.GattManager1
Object path [variable prefix]/{hci0,hci1,...}
Methods void RegisterApplication(object application, dict options)
diff --git a/src/gatt-client.c b/src/gatt-client.c
index 7abb306..f50db0b 100644
--- a/src/gatt-client.c
+++ b/src/gatt-client.c
@@ -623,12 +623,10 @@ static const GDBusPropertyTable descriptor_properties[] = {
};
static const GDBusMethodTable descriptor_methods[] = {
- { GDBUS_EXPERIMENTAL_ASYNC_METHOD("ReadValue",
- GDBUS_ARGS({ "options", "a{sv}" }),
+ { GDBUS_ASYNC_METHOD("ReadValue", GDBUS_ARGS({ "options", "a{sv}" }),
GDBUS_ARGS({ "value", "ay" }),
descriptor_read_value) },
- { GDBUS_EXPERIMENTAL_ASYNC_METHOD("WriteValue",
- GDBUS_ARGS({ "value", "ay" },
+ { GDBUS_ASYNC_METHOD("WriteValue", GDBUS_ARGS({ "value", "ay" },
{ "options", "a{sv}" }),
NULL,
descriptor_write_value) },
@@ -1251,34 +1249,27 @@ static DBusMessage *characteristic_stop_notify(DBusConnection *conn,
}
static const GDBusPropertyTable characteristic_properties[] = {
- { "UUID", "s", characteristic_get_uuid, NULL, NULL,
- G_DBUS_PROPERTY_FLAG_EXPERIMENTAL },
- { "Service", "o", characteristic_get_service, NULL, NULL,
- G_DBUS_PROPERTY_FLAG_EXPERIMENTAL },
+ { "UUID", "s", characteristic_get_uuid, NULL, NULL },
+ { "Service", "o", characteristic_get_service, NULL, NULL },
{ "Value", "ay", characteristic_get_value, NULL,
- characteristic_value_exists,
- G_DBUS_PROPERTY_FLAG_EXPERIMENTAL },
+ characteristic_value_exists },
{ "Notifying", "b", characteristic_get_notifying, NULL,
- characteristic_notifying_exists,
- G_DBUS_PROPERTY_FLAG_EXPERIMENTAL },
- { "Flags", "as", characteristic_get_flags, NULL, NULL,
- G_DBUS_PROPERTY_FLAG_EXPERIMENTAL },
+ characteristic_notifying_exists },
+ { "Flags", "as", characteristic_get_flags, NULL, NULL },
{ }
};
static const GDBusMethodTable characteristic_methods[] = {
- { GDBUS_EXPERIMENTAL_ASYNC_METHOD("ReadValue",
- GDBUS_ARGS({ "options", "a{sv}" }),
+ { GDBUS_ASYNC_METHOD("ReadValue", GDBUS_ARGS({ "options", "a{sv}" }),
GDBUS_ARGS({ "value", "ay" }),
characteristic_read_value) },
- { GDBUS_EXPERIMENTAL_ASYNC_METHOD("WriteValue",
- GDBUS_ARGS({ "value", "ay" },
+ { GDBUS_ASYNC_METHOD("WriteValue", GDBUS_ARGS({ "value", "ay" },
{ "options", "a{sv}" }),
NULL,
characteristic_write_value) },
- { GDBUS_EXPERIMENTAL_ASYNC_METHOD("StartNotify", NULL, NULL,
+ { GDBUS_ASYNC_METHOD("StartNotify", NULL, NULL,
characteristic_start_notify) },
- { GDBUS_EXPERIMENTAL_METHOD("StopNotify", NULL, NULL,
+ { GDBUS_METHOD("StopNotify", NULL, NULL,
characteristic_stop_notify) },
{ }
};
@@ -1584,12 +1575,6 @@ static void export_service(struct gatt_db_attribute *attr, void *user_data)
static void create_services(struct btd_gatt_client *client)
{
- /* Don't attempt to create any objects if experimental is disabled */
- if (!(g_dbus_get_flags() & G_DBUS_FLAG_ENABLE_EXPERIMENTAL)) {
- info("GATT service objects disabled");
- return;
- }
-
DBG("Exporting objects for GATT services: %s", client->devaddr);
gatt_db_foreach_service(client->db, NULL, export_service, client);
diff --git a/src/gatt-database.c b/src/gatt-database.c
index bf1925b..27559fd 100644
--- a/src/gatt-database.c
+++ b/src/gatt-database.c
@@ -2579,11 +2579,11 @@ static DBusMessage *manager_unregister_app(DBusConnection *conn,
}
static const GDBusMethodTable manager_methods[] = {
- { GDBUS_EXPERIMENTAL_ASYNC_METHOD("RegisterApplication",
- GDBUS_ARGS({ "application", "o" },
- { "options", "a{sv}" }), NULL,
- manager_register_app) },
- { GDBUS_EXPERIMENTAL_ASYNC_METHOD("UnregisterApplication",
+ { GDBUS_ASYNC_METHOD("RegisterApplication",
+ GDBUS_ARGS({ "application", "o" },
+ { "options", "a{sv}" }),
+ NULL, manager_register_app) },
+ { GDBUS_ASYNC_METHOD("UnregisterApplication",
GDBUS_ARGS({ "application", "o" }),
NULL, manager_unregister_app) },
{ }
--
2.7.4
next reply other threads:[~2016-07-18 11:49 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-07-18 11:49 Luiz Augusto von Dentz [this message]
2016-07-18 11:49 ` [PATCH BlueZ 2/3] core/device: Promote LE related properties to stable Luiz Augusto von Dentz
2016-07-18 11:49 ` [PATCH BlueZ 3/3] doc/adapter-api: Fix SetDiscoveryFilter documentation Luiz Augusto von Dentz
2016-08-01 11:57 ` [PATCH BlueZ 1/3] core/gatt: Promote GATT D-Bus interfaces to stable Luiz Augusto von Dentz
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1468842547-7088-1-git-send-email-luiz.dentz@gmail.com \
--to=luiz.dentz@gmail.com \
--cc=linux-bluetooth@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).