diff options
author | Samuel Ortiz <sameo@linux.intel.com> | 2013-11-13 02:01:21 +0100 |
---|---|---|
committer | Samuel Ortiz <sameo@linux.intel.com> | 2013-11-13 02:06:44 +0100 |
commit | 6f542a7fff3807252c4cbdb4407d0374215a29e8 (patch) | |
tree | d8ca87155baae5d421d2f03180048ae0123ebadd | |
parent | cf5ed12400e0dd89d5849d27dbdde38b02752b33 (diff) | |
download | neard-6f542a7fff3807252c4cbdb4407d0374215a29e8.tar.gz neard-6f542a7fff3807252c4cbdb4407d0374215a29e8.tar.bz2 neard-6f542a7fff3807252c4cbdb4407d0374215a29e8.zip |
agent: Export matching record payload from GetNDEF
Besides the record path and the complete NDEF raw data, the matching
record payload is also now exported.
-rw-r--r-- | doc/agent-api.txt | 4 | ||||
-rw-r--r-- | src/agent.c | 5 | ||||
-rwxr-xr-x | test/ndef-agent | 9 |
3 files changed, 17 insertions, 1 deletions
diff --git a/doc/agent-api.txt b/doc/agent-api.txt index b049ecc..33c47fa 100644 --- a/doc/agent-api.txt +++ b/doc/agent-api.txt @@ -156,6 +156,10 @@ Fields array{byte} NDEF This is the raw NDEF data. + array{byte} Payload + + This is the NDEF record payload. + object Record This is a record object path. diff --git a/src/agent.c b/src/agent.c index d5c0b79..bbc8fdc 100644 --- a/src/agent.c +++ b/src/agent.c @@ -115,6 +115,8 @@ static void ndef_agent_push_records(struct near_ndef_agent *agent, DBusMessageIter iter, dict; DBusMessage *message; char *path; + uint8_t *payload; + size_t payload_len; DBG(""); @@ -130,12 +132,15 @@ static void ndef_agent_push_records(struct near_ndef_agent *agent, return; path = __near_ndef_record_get_path(record); + payload = __near_ndef_record_get_payload(record, &payload_len); dbus_message_iter_init_append(message, &iter); near_dbus_dict_open(&iter, &dict); near_dbus_dict_append_basic(&dict, "Record", DBUS_TYPE_STRING, &path); + near_dbus_dict_append_fixed_array(&dict, "Payload", + DBUS_TYPE_BYTE, &payload, payload_len); near_dbus_dict_append_array(&dict, "NDEF", DBUS_TYPE_BYTE, append_ndef, records); near_dbus_dict_close(&iter, &dict); diff --git a/test/ndef-agent b/test/ndef-agent index 68bd270..1cfeb03 100755 --- a/test/ndef-agent +++ b/test/ndef-agent @@ -24,12 +24,19 @@ class NDEFAgent(dbus.service.Object): if fields.has_key("Record"): print "Record path %s" % (fields["Record"]) + if fields.has_key("Payload"): + val = "[" + for i in fields["Payload"]: + val += " 0x%x" % i + val += " ]" + print "Record payload %s" % val + if fields.has_key("NDEF"): val = "[" for i in fields["NDEF"]: val += " 0x%x" % i val += " ]" - print "NDEF %s" % val + print "Complete NDEF %s" % val return |