David Zeuthen [Fri, 21 May 2010 16:09:27 +0000 (12:09 -0400)]
Return an error for calls into unknown interfaces or unknown objects
Ryan pointed out on IRC that we didn't do anything here. Looking at
the code, it's painfully obvious that we should be returning an error
here since a comment already says that we've exhausted all possible
options.
Signed-off-by: David Zeuthen <davidz@redhat.com>
Christian Persch [Fri, 14 May 2010 12:00:24 +0000 (14:00 +0200)]
Use stack-allocated GVariantBuilders
This saves a few allocations.
Also simplify the code a bit in gdbusconnection.
Bug #618616.
Christian Persch [Wed, 19 May 2010 22:54:51 +0000 (00:54 +0200)]
Add g_dc[p]gettext, and use it in gsettings
Avoid using LC_MESSAGES, and just call g_d[c]gettext directly.
Bug #617004.
Fran Diéguez [Thu, 20 May 2010 17:30:39 +0000 (19:30 +0200)]
Updated Galician translations
David Zeuthen [Thu, 20 May 2010 14:51:00 +0000 (10:51 -0400)]
Bug 619142 – Build fixes
- Fix various #include issues
- Change #error to #warning for the EXTERNAL authentication mechanism.
It is not clear if this should work on Win32 at all.
- Call close() before unlink() for the SHA1 keyring
- Change #error to #warning so we don't forget to do
permission checking of the .dbus-keyrings directory
- Use Win32 SID for the SHA1 auth mech
- Apparently we can't use word 'interface' as an identifier
- Implement a _g_dbus_win32_get_user_sid() function. For now it's
private. Don't know if it should be public somewhere. Maybe in
a future GCredentials support for Win32? I don't know.
- GFileDescriptorBased is not available on Win32. So avoid using
it in GLocalFile stuff. Now, Win32 still uses GLocalFile + friends
(which works with file descriptors) so expose a private function
to get the fd for an OutputStream so things still work.
- Fixup gio.symbols
- Fixup tests/gdbus-peer.c so it builds
With this, at least things compile and the gdbus-peer.exe test case
passes. Which is a great start. I've tested this by cross-compiling on
a x86_64 Fedora 13 host using mingw32 and running the code on a 32-bit
Windows 7 box.
https://bugzilla.gnome.org/show_bug.cgi?id=619142
Signed-off-by: David Zeuthen <davidz@redhat.com>
Ivar Smolin [Thu, 20 May 2010 11:56:46 +0000 (14:56 +0300)]
Estonian translation updated
Javier Jardón [Wed, 19 May 2010 23:55:58 +0000 (01:55 +0200)]
Add G_TYPE_CLASS_GET_PRIVATE macro to docs
Ryan Lortie [Wed, 19 May 2010 21:38:17 +0000 (17:38 -0400)]
Version bump.
Ryan Lortie [Wed, 19 May 2010 21:32:42 +0000 (17:32 -0400)]
Release 2.25.6
Ryan Lortie [Wed, 19 May 2010 20:02:05 +0000 (16:02 -0400)]
Add --uninstall option to glib-compile-schemas
If --uninstall is given then don't give an error if the schema directory
is empty. Instead, erase the gschemas.compiled file, if it exists.
This is the right thing to do in the 'make uninstall' rule, where the
schema directory could very well be left empty as a result.
Modify gsettings.m4 to use this option.
Ryan Lortie [Tue, 18 May 2010 22:28:39 +0000 (18:28 -0400)]
Bug 619038 - increase gsettings.m4 power
handle schema checking, installation, uninstallation, cleaning
Tor Lillqvist [Wed, 19 May 2010 07:47:02 +0000 (10:47 +0300)]
Make config.h.win32.in match what configure produces
No semantic changes.
Ryan Lortie [Tue, 18 May 2010 22:24:04 +0000 (18:24 -0400)]
glib-compile-schemas rename missed in docs
change a mention of gschema_compile in the docs
Javier Jardón [Tue, 18 May 2010 21:45:54 +0000 (23:45 +0200)]
Fix trivial typo in GCredentials code
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=618839
Ryan Lortie [Tue, 18 May 2010 21:25:43 +0000 (17:25 -0400)]
Bug 619031 - method-calls-in-thread test failing
The test was assuming that g_timeout_add() waited for at least the amount of
time given to it before running the function. This is not the case -- the
function can be run as much as 1ms early. Make the lower time bound asserted
in the test more permissive to account for this.
Ryan Lortie [Tue, 18 May 2010 20:43:36 +0000 (16:43 -0400)]
Bug 618839 - Typo at translation message
Fix trivial typo in GCredentials code
Ryan Lortie [Tue, 18 May 2010 20:13:58 +0000 (16:13 -0400)]
Add sync method to GSettingsBackend, and pad
Ryan Lortie [Tue, 18 May 2010 17:43:42 +0000 (13:43 -0400)]
whitespace fix
Robert Ancell [Tue, 18 May 2010 02:01:25 +0000 (12:01 +1000)]
Add missing gunixfdlist.h include in gdbus-example-server.c
David Zeuthen [Mon, 17 May 2010 23:51:49 +0000 (19:51 -0400)]
GDBus: Fix obvious crasher when looking up annotations
Signed-off-by: David Zeuthen <davidz@redhat.com>
Fran Diéguez [Mon, 17 May 2010 21:59:42 +0000 (23:59 +0200)]
Updated Galician translations
David Zeuthen [Mon, 17 May 2010 15:08:53 +0000 (11:08 -0400)]
gdbus(1): Don't fetch props if introspection data indicates none are available
Signed-off-by: David Zeuthen <davidz@redhat.com>
David Zeuthen [Mon, 17 May 2010 15:07:53 +0000 (11:07 -0400)]
GDBus: Fix introspection of objects registered at /
Signed-off-by: David Zeuthen <davidz@redhat.com>
Ryan Lortie [Sun, 16 May 2010 20:56:36 +0000 (16:56 -0400)]
improve thread safety in GDelayedSettingsBackend
- hold a lock while accessing the tree of delayed values
- use weak reference counts with the owner object to avoid doing
g_object_notify on a dead object
- dispatch the "has-unapplied" notify to the proper main context
Ryan Lortie [Sun, 16 May 2010 18:17:34 +0000 (14:17 -0400)]
GSettingsBackend: make signal dispatch threadsafe
This commit fixes up a few race conditions in the GSettingsBackend, mostly with
respect to change notifications occuring at the same time as the last reference
count on a GSettings is dropped. With GDBus feeding us our incoming signals in
a separate thread, this is something that could easily happen.
Ryan Lortie [Sun, 16 May 2010 16:14:46 +0000 (18:14 +0200)]
gitignore additions for gdbus, new test cases
Ryan Lortie [Sun, 16 May 2010 11:02:23 +0000 (13:02 +0200)]
GSettings: support emitting signals in threads
The thread-default context that was in effect at the time that the
GSettings was created will be used for emitting signals on that
GSettings.
Ryan Lortie [Sun, 16 May 2010 11:03:34 +0000 (13:03 +0200)]
GSettings tool: work-around GDBus issue
There is currently no way (near as I can tell) to ensure that a message
has been sent when using GDBus. If we exit() before we are sure, then
it is very possible that the message isn't sent at all. This behaviour
was observed when using the GSettings commandline tool with dconf.
A quick and dirty workaround for now.
Ryan Lortie [Sun, 16 May 2010 08:19:46 +0000 (10:19 +0200)]
intern a key name instead of using strdup()
Lin Ma [Mon, 17 May 2010 06:42:52 +0000 (14:42 +0800)]
Reworked Solaris file event notification for GIO. See
https://defect.opensolaris.org/bz/show_bug.cgi?id=10194
Updated copyright.
Jorge González [Mon, 17 May 2010 05:41:48 +0000 (07:41 +0200)]
Updated Spanish translation
Matthias Clasen [Sun, 16 May 2010 17:07:25 +0000 (13:07 -0400)]
Add GDBus files to POTFILES.in
Fran Diéguez [Sun, 16 May 2010 14:31:25 +0000 (16:31 +0200)]
Updated Galician translations
Andika Triwidada [Sun, 16 May 2010 09:30:38 +0000 (16:30 +0700)]
Updated Indonesian translation
Sebastian Dröge [Sat, 15 May 2010 08:17:35 +0000 (10:17 +0200)]
Fix gio tests linking with binutils gold linker
Sebastian Dröge [Sat, 15 May 2010 08:13:28 +0000 (10:13 +0200)]
Fix build of gdbus tool with binutils gold linker
Matthias Clasen [Sat, 15 May 2010 22:23:23 +0000 (18:23 -0400)]
Expand information about schema translation
I have added some hints on how to use intltool for translation
of summary and description elements, taken from comments in bug #618523.
Matthias Clasen [Sat, 15 May 2010 22:15:30 +0000 (18:15 -0400)]
Fix build on !linux
Don't define __USE_GNU, thats a glibc-internal macro, and
don't use SOL_SOCKET when not including sys/socket.h.
Maybe this file should be called glinuxcredentialsmessage.c...
Bug #618730
Christian Persch [Sat, 15 May 2010 09:56:21 +0000 (11:56 +0200)]
Use the new option name
It's --schema-file now, not --schema-files.
Bug #616864.
Matthias Clasen [Sat, 15 May 2010 02:30:19 +0000 (22:30 -0400)]
Bump version
Matthias Clasen [Sat, 15 May 2010 02:28:46 +0000 (22:28 -0400)]
2.25.5
Matthias Clasen [Sat, 15 May 2010 02:03:03 +0000 (22:03 -0400)]
Updates
Matthias Clasen [Sat, 15 May 2010 01:58:08 +0000 (21:58 -0400)]
Fix issues with GSETTINGS_CHECK_RULE
Rename the --schema-files option to --schema-file, since it only
accepts one file at a time. Change the GSETTINGS_CHECK_RULE to
use it that way, too. And also make it work better with !srcdir
builds.
Bugs #616731 and #616864
David Zeuthen [Sat, 15 May 2010 01:08:01 +0000 (21:08 -0400)]
GDBus: Use specific variant type in GetAll()
Without this fix, we segfault if the exported object returned an error
on all get_property() calls (in reality, this never happens).
Signed-off-by: David Zeuthen <davidz@redhat.com>
David Zeuthen [Sat, 15 May 2010 00:52:15 +0000 (20:52 -0400)]
GDBus: Fix a double free
Fix an unintentional double free introduced in commit
4ad4c306c3b80620185cf975b402e17a6174aea9.
This bug manifested itself when trying to complete this
$ gdbus introspect --system --dest <tab>
Christian Persch [Fri, 14 May 2010 18:07:15 +0000 (20:07 +0200)]
Plug mem leaks in gdbus tests & examples
Use "&s" instead of "s", and free the variant iters after use.
Bug #618663.
Christian Persch [Fri, 14 May 2010 16:21:01 +0000 (18:21 +0200)]
Plug a mem leak in gdbusauth
From valgrind running gdbus-peer test:
==20513== 32 bytes in 1 blocks are definitely lost in loss record 1 of 15
==20513== at 0x4024E4C: realloc (vg_replace_malloc.c:429)
==20513== by 0x4079BB1: g_realloc (gmem.c:174)
==20513== by 0x4099472: g_string_maybe_expand (gstring.c:396)
==20513== by 0x409A42A: g_string_insert_c (gstring.c:1050)
==20513== by 0x42169AC: g_string_append_c_inline (gstring.h:153)
==20513== by 0x421682C: _my_g_input_stream_read_line_safe (gdbusauth.c:336)
==20513== by 0x421843E: _g_dbus_auth_run_server (gdbusauth.c:1265)
==20513== by 0x4222B94: initable_init (gdbusconnection.c:1783)
==20513== by 0x41CF8D5: g_initable_init (ginitable.c:106)
==20513== by 0x41CFA8D: g_initable_new_valist (ginitable.c:219)
==20513== by 0x41CF920: g_initable_new (ginitable.c:139)
==20513== by 0x4223479: g_dbus_connection_new_sync (gdbusconnection.c:2046)
Bug #618650.
Christian Persch [Fri, 14 May 2010 12:27:08 +0000 (14:27 +0200)]
Plug mem leak in g_dbus_address_get_stream_sync
==6279== 21,615 (4,708 direct, 16,907 indirect) bytes in 169 blocks are
definitely lost in loss record 12 of 13
==6279== at 0x4024D2E: malloc (vg_replace_malloc.c:207)
==6279== by 0x4079A90: g_malloc (gmem.c:135)
==6279== by 0x4079DC8: g_malloc_n (gmem.c:252)
==6279== by 0x4097E66: g_strsplit (gstrfuncs.c:2434)
==6279== by 0x42169A2: g_dbus_address_get_stream_sync
(gdbusaddress.c:875)
Bug #618622.
Christian Persch [Fri, 14 May 2010 12:22:45 +0000 (14:22 +0200)]
Plug a mem leak in get_uninitialized_connection
Free the bus address after creating the singleton.
==26308== 39,736 (10,517 direct, 29,219 indirect) bytes in 388 blocks
are definitely lost in loss record 14 of 15
==26308== at 0x4024D2E: malloc (vg_replace_malloc.c:207)
==26308== by 0x4079A90: g_malloc (gmem.c:135)
==26308== by 0x4079DC8: g_malloc_n (gmem.c:252)
==26308== by 0x4095607: g_strdup (gstrfuncs.c:102)
==26308== by 0x4216B9A: g_dbus_address_get_for_bus_sync
(gdbusaddress.c:961)
==26308== by 0x422A7AE: get_uninitialized_connection
(gdbusconnection.c:5241)
Bug #618622.
Christian Persch [Fri, 14 May 2010 12:15:42 +0000 (14:15 +0200)]
Plug mem leaks in parse_value_from_blob
The result of read_string() was leaked.
Bug #618615.
Christian Persch [Fri, 14 May 2010 22:08:29 +0000 (18:08 -0400)]
Plug a mem leak
This code leaked the return value of g_variant_get_child_value();
use g_variant_get() instead and free the iter when done.
David Zeuthen [Fri, 14 May 2010 16:55:25 +0000 (12:55 -0400)]
GDBus: Remove cached value if a property is invalidated
Also add a test case to catch this.
Signed-off-by: David Zeuthen <davidz@redhat.com>
David Zeuthen [Fri, 14 May 2010 16:49:51 +0000 (12:49 -0400)]
GDBus: Fix serialization of empty arrays
It turns out that we didn't observe padding (neither when reading nor
writing) for empty arrays which (apparently) is needed according to
the D-Bus spec and reference implementation. A simple test case to
provoke this behavior is as follows (notice the lack of 4 bytes worth
of padding at position 0x0064):
Error calling dbus_message_demarshal() on this blob: org.freedesktop.DBus.Error.InvalidArgs: Message is corrupted (Alignment padding not null)
0000: 6c 01 00 01 2e 00 00 00 41 00 00 00 37 00 00 00 l.......A...7...
0010: 08 01 67 00 08 73 61 7b 73 76 7d 61 73 00 00 00 ..g..sa{sv}as...
0020: 01 01 6f 00 08 00 00 00 2f 66 6f 6f 2f 62 61 72 ..o...../foo/bar
0030: 00 00 00 00 00 00 00 00 03 01 73 00 06 00 00 00 ..........s.....
0040: 4d 65 6d 62 65 72 00 00 11 00 00 00 30 31 32 33 Member......0123
0050: 34 35 36 37 38 39 30 31 32 33 34 35 36 00 00 00
4567890123456...
0060: 00 00 00 00 0e 00 00 00 09 00 00 00 53 6f 6d 65 ............Some
0070: 74 68 69 6e 67 00 thing.
The blob was generated from the following GVariant value:
('
01234567890123456', @a{sv} {}, ['Something'])
If the blob was encoded using DBusMessageIter, the payload would have been:
0000: 6c 01 00 01 32 00 00 00 41 00 00 00 36 00 00 00 l...2...A...6...
0010: 01 01 6f 00 08 00 00 00 2f 66 6f 6f 2f 62 61 72 ..o...../foo/bar
0020: 00 00 00 00 00 00 00 00 03 01 73 00 06 00 00 00 ..........s.....
0030: 4d 65 6d 62 65 72 00 00 08 01 67 00 08 73 61 7b Member....g..sa{
0040: 73 76 7d 61 73 00 00 00 11 00 00 00 30 31 32 33 sv}as.......0123
0050: 34 35 36 37 38 39 30 31 32 33 34 35 36 00 00 00
4567890123456...
0060: 00 00 00 00 00 00 00 00 0e 00 00 00 09 00 00 00 ................
0070: 53 6f 6d 65 74 68 69 6e 67 00 Something.
** ERROR:gdbus-serialization.c:547:check_serialization: code should not be reached
Aborted
and this is now in the libdbus-1-using serialization test case.
Signed-off-by: David Zeuthen <davidz@redhat.com>
Jorge González [Fri, 14 May 2010 15:55:37 +0000 (17:55 +0200)]
Updated Spanish translation
Matthias Clasen [Fri, 14 May 2010 15:49:15 +0000 (11:49 -0400)]
bump version
Matthias Clasen [Fri, 14 May 2010 15:25:11 +0000 (11:25 -0400)]
2.25.4
Ryan Lortie [Fri, 14 May 2010 15:06:24 +0000 (17:06 +0200)]
fix glaring inaccuracy in GVariant docs
Matthias Clasen [Fri, 14 May 2010 14:49:03 +0000 (10:49 -0400)]
another !srcdir build fix
Matthias Clasen [Fri, 14 May 2010 14:25:31 +0000 (10:25 -0400)]
More !srcdir build fixes
Ryan Lortie [Fri, 14 May 2010 13:30:33 +0000 (15:30 +0200)]
include gunixcredentialsmessage from unixsocket
fixes a build issue
Matthias Clasen [Fri, 14 May 2010 12:38:07 +0000 (08:38 -0400)]
Cleanups
Sort #includes a bit better, and don't include platform-specific
headers in gio.h.
Matthias Clasen [Fri, 14 May 2010 05:36:25 +0000 (01:36 -0400)]
Fix !srcdir build
Thankfully we already had a SRCDIR define.
Matthias Clasen [Fri, 14 May 2010 04:59:42 +0000 (00:59 -0400)]
Fix a typo
Matthias Clasen [Fri, 14 May 2010 04:51:51 +0000 (00:51 -0400)]
Updates
Matthias Clasen [Fri, 14 May 2010 04:21:39 +0000 (00:21 -0400)]
Documentation cleanups
Matthias Clasen [Fri, 14 May 2010 03:08:34 +0000 (23:08 -0400)]
Merge branch 'gdbus-merge'
Conflicts:
docs/reference/gio/gio-docs.xml
docs/reference/gio/gio-sections.txt
gio/tests/Makefile.am
Matthias Clasen [Tue, 11 May 2010 16:48:22 +0000 (12:48 -0400)]
Remove a reference to Pango
Matthias Clasen [Fri, 14 May 2010 02:15:47 +0000 (22:15 -0400)]
The default timeout is 25s
Matthias Clasen [Fri, 14 May 2010 01:53:51 +0000 (21:53 -0400)]
Document more floating variant details.
Matthias Clasen [Fri, 14 May 2010 01:45:18 +0000 (21:45 -0400)]
Add some more details to the long description
Matthias Clasen [Fri, 14 May 2010 00:29:04 +0000 (20:29 -0400)]
Clean up platform-specific includes
The problem was pointed out in bug 618029. To solve it, we moved
the GUnixFDList typedef to giotypes.h.
Ryan Lortie [Thu, 13 May 2010 23:54:30 +0000 (01:54 +0200)]
documentation for glib-mkenums @valuenum@
Ryan Lortie [Tue, 11 May 2010 17:48:19 +0000 (19:48 +0200)]
check for working gettext() before running tests
Ryan Lortie [Thu, 13 May 2010 22:53:42 +0000 (00:53 +0200)]
Add configure check for memmem()
David Zeuthen [Thu, 13 May 2010 22:19:16 +0000 (18:19 -0400)]
GDBus: update gdbus(1) man page
David Zeuthen [Thu, 13 May 2010 22:04:48 +0000 (18:04 -0400)]
GDBus: Nuke G_BUS_TYPE_NONE
David Zeuthen [Thu, 13 May 2010 21:44:42 +0000 (17:44 -0400)]
GDBus: Remove g_dbus_is_activated()
It's generally hard to get this right so don't attempt to do so.
David Zeuthen [Thu, 13 May 2010 21:20:39 +0000 (17:20 -0400)]
GDBus: subscribe to PropertiesChanged() before calling GetAll()
Otherwise there's a slight chance of a race.
David Zeuthen [Thu, 13 May 2010 21:10:15 +0000 (17:10 -0400)]
GDBus: Don't take a GError for g_dbus_proxy_get_cached_property_names()
We stopped doing this for get_cached_property() so no reason to do it
here.
Signed-off-by: David Zeuthen <davidz@redhat.com>
David Zeuthen [Thu, 13 May 2010 20:57:29 +0000 (16:57 -0400)]
GDBus: Update docs for GDBusProxy::g-properties-changed signal
Also update the example. See
https://bugzilla.gnome.org/show_bug.cgi?id=618559
for more details.
Signed-off-by: David Zeuthen <davidz@redhat.com>
Christian Persch [Thu, 13 May 2010 17:01:04 +0000 (19:01 +0200)]
Make GVariant handling in PropertiesChanged more efficient
There's no need to re-build the a{sv} array, just get it right out of
the parameters. Also avoid some string copies.
Signed-off-by: David Zeuthen <davidz@redhat.com>
Christian Persch [Thu, 13 May 2010 17:20:26 +0000 (19:20 +0200)]
Plug some mem leaks
g_variant_get (v, "s", &str) returns a string copy; use "&s" instead.
Signed-off-by: David Zeuthen <davidz@redhat.com>
David Zeuthen [Thu, 13 May 2010 20:32:11 +0000 (16:32 -0400)]
GDBus: Add GDBusAuthObserver param in g_dbus_connection_new_for_address()
This is to match g_dbus_connection_new(). This extension allows us to
extend GDBusAuthObserver to also be used in client-side authentication
in the future (right now it's only used on the server-side).
David Zeuthen [Thu, 13 May 2010 20:20:31 +0000 (16:20 -0400)]
GDBus: Rename ::deny-authentication-peer to ::authorize-authenticated-peer
Matthias Clasen [Thu, 13 May 2010 18:25:29 +0000 (14:25 -0400)]
Remove the credentials argument from g_unix_connect_send_credentials()
Instead, make it always send the current credentials.
David Zeuthen [Thu, 13 May 2010 18:01:41 +0000 (14:01 -0400)]
GDBus: Make message serialization routines take capabilities param
This is needed to e.g. allow encoding maybe types (once we add
G_DBUS_CAPABILITY_FLAGS_MAYBE_TYPES) if, and only if, that capability
has been negotiated with the peer (via authentication).
Matthias Clasen [Thu, 13 May 2010 17:09:58 +0000 (13:09 -0400)]
remove the redundant interface_name parameter
David Zeuthen [Thu, 13 May 2010 15:56:15 +0000 (11:56 -0400)]
GDBus: Catch up with new PropertiesChanged signal
After a long discussion, this has finally been standardized in the
D-Bus spec. See
http://lists.freedesktop.org/archives/dbus/2010-May/012667.html
http://lists.freedesktop.org/archives/dbus/2010-May/012712.html
Signed-off-by: David Zeuthen <davidz@redhat.com>
Matthias Clasen [Thu, 13 May 2010 05:04:29 +0000 (01:04 -0400)]
Fill out the export section of the migration guide
Thomas Thurman [Thu, 13 May 2010 04:51:30 +0000 (00:51 -0400)]
Update Shavian transliteration
Matthias Clasen [Thu, 13 May 2010 04:39:26 +0000 (00:39 -0400)]
Add an example of exporting a GObject
This is more manual work than dbus-glib.
David Zeuthen [Thu, 13 May 2010 03:12:14 +0000 (23:12 -0400)]
GDBus: add 'monitor' verb to gdbus(1)
This uncovered a bug in name watching if the name wasn't activatable.
Also provoked the need for on_connection variants of g_bus_watch_name
(added g_bus_watch_proxy's variant as well).
David Zeuthen [Thu, 13 May 2010 02:09:18 +0000 (22:09 -0400)]
GDBus: Make gdbus(1) print annotations when introspecting data
Also make the gdbus-example-server include some example
annotations. The output looks like this:
$ gdbus introspect --session --dest org.gtk.GDBus.TestServer --object-path /org/gtk/GDBus/TestObject
node /org/gtk/GDBus/TestObject {
interface org.freedesktop.DBus.Properties {
methods:
Get(in s interface_name,
in s property_name,
out v value);
GetAll(in s interface_name,
out a{sv} properties);
Set(in s interface_name,
in s property_name,
in v value);
signals:
PropertiesChanged(s interface_name,
a{sv} changed_properties);
};
interface org.freedesktop.DBus.Introspectable {
methods:
Introspect(out s xml_data);
};
interface org.freedesktop.DBus.Peer {
methods:
Ping();
GetMachineId(out s machine_uuid);
};
@org.gtk.GDBus.Annotation("OnInterface")
@org.gtk.GDBus.Annotation("AlsoOnInterface")
interface org.gtk.GDBus.TestInterface {
methods:
@org.gtk.GDBus.Annotation("OnMethod")
HelloWorld(in s greeting,
out s response);
EmitSignal(@org.gtk.GDBus.Annotation.("OnArg")
in d speed_in_mph);
GimmeStdout();
signals:
@org.gtk.GDBus.Annotation("Onsignal")
VelocityChanged(d speed_in_mph,
@org.gtk.GDBus.Annotation.("OnArg_NonFirst")
s speed_as_string);
properties:
@org.gtk.GDBus.Annotation("OnProperty")
@org.gtk.GDBus.Annotation("OnAnnotation_YesThisIsCrazy")
readonly s FluxCapicitorName = 'DeLorean';
readwrite s Title = 'Back To C!';
readonly s ReadingAlwaysThrowsError;
readwrite s WritingAlwaysThrowsError = "There's no home like home";
writeonly s OnlyWritable;
readonly s Foo = 'Tick';
readonly s Bar = 'Tock';
};
};
Matthias Clasen [Thu, 13 May 2010 01:51:06 +0000 (21:51 -0400)]
Add a note about implemented standard interfaces
David Zeuthen [Thu, 13 May 2010 00:43:40 +0000 (20:43 -0400)]
GDBusProxy: Remove error in get_cached_property() and add set_cached_property()
This makes it possible to use the cached properties mechanism even if
constructing the proxy with the DO_NOT_LOAD_PROPERTIES flag.
This is useful for cases where you obtain the and track object
properties out-of-band. For example, in udisks, the plan is to have
something like this
Manager.GetObjects (out ao paths, out aa{sa{sv}} all_properties);
Manager.ObjectAdded (o path, a{sa{sv}} all_properties);
Manager.ObjectChanged (o path, a{sa{sv}} all_properties);
Manager.ObjectRemoved (o path, a{sa{sv}} all_properties);
E.g. the first GetObjects() call will return *all* data about *all*
exported objects. Further, this way a client will only need to listen
these three signals (three AddMatch) on the Manager object and it will
never need to do GetAll() etc (e.g. can use DO_NOT_LOAD_PROPERTIES).
(Of course this only works if the client is interested in all
objects... while this is true for udisks it is generally not true for
other D-Bus services).
Also use expected_interface to check for programming errors.
Thomas Thurman [Wed, 12 May 2010 22:41:27 +0000 (18:41 -0400)]
Updated Shavian transliteration
Matthias Clasen [Wed, 12 May 2010 21:56:56 +0000 (17:56 -0400)]
Add some more verbiage
David Zeuthen [Wed, 12 May 2010 19:49:48 +0000 (15:49 -0400)]
GDBus: Add an example of a GDBusProxy subclass
Matthias Clasen [Wed, 12 May 2010 17:01:40 +0000 (13:01 -0400)]
Update an example to the latest auth observer api
Matthias Clasen [Wed, 12 May 2010 17:01:02 +0000 (13:01 -0400)]
Correct env var names
and add a note about priority