This patch adds the Application property to HealthChannel, which
allows to unambiguously relate a channel to an application.
This property is useful when there are several processes interested
in accepting HealthChannels but device address is not sufficient
criteria to engage upon, or ignore, the ChannelConnected signal.
Having the application path allows to determine role and data type,
in the context of the process that has created that application.
Also, channel path skeleton is fixed in documentation, in order to
reflect atual implementation.
---
doc/health-api.txt | 8 ++++++--
health/hdp.c | 3 +++
2 files changed, 9 insertions(+), 2 deletions(-)
diff --git a/doc/health-api.txt b/doc/health-api.txt
index 89d5ff9..a0a1685 100644
--- a/doc/health-api.txt
+++ b/doc/health-api.txt
@@ -119,8 +119,7 @@ Properties:
Service org.bluez
Interface org.bluez.HealthChannel
-Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX/
- hdp_YYYY/channel_ZZ
+Object path [variable prefix]/{hci0,hci1,...}/dev_XX_XX_XX_XX_XX_XX/chanZZZ
Only the process that created the data channel or the creator of the
HealthApplication that received it will be able to call this methods.
@@ -160,3 +159,8 @@ Properties:
Identifies the Remote Device that is connected with. Maps with
a HealthDevice object.
+
+ object Application [readonly]
+
+ Identifies the HealthApplication to which this channel is
+ related to (which indirectly defines its role and data type).
diff --git a/health/hdp.c b/health/hdp.c
index be30204..1eba8e1 100644
--- a/health/hdp.c
+++ b/health/hdp.c
@@ -423,6 +423,9 @@ static DBusMessage *channel_get_properties(DBusConnection *conn,
path = device_get_path(chan->dev->dev);
dict_append_entry(&dict, "Device", DBUS_TYPE_OBJECT_PATH, &path);
+ path = chan->app->path;
+ dict_append_entry(&dict, "Application", DBUS_TYPE_OBJECT_PATH, &path);
+
if (chan->config == HDP_RELIABLE_DC)
type = g_strdup("Reliable");
else
--
1.7.0.4
* Elvis Pf?tzenreuter <[email protected]> [2010-11-01 16:16:22 -0200]:
> This patch adds the Application property to HealthChannel, which
> allows to unambiguously relate a channel to an application.
>
> This property is useful when there are several processes interested
> in accepting HealthChannels but device address is not sufficient
> criteria to engage upon, or ignore, the ChannelConnected signal.
> Having the application path allows to determine role and data type,
> in the context of the process that has created that application.
>
> Also, channel path skeleton is fixed in documentation, in order to
> reflect atual implementation.
So a separeted patch here.
--
Gustavo F. Padovan
ProFUSION embedded systems - http://profusion.mobi