diff options
author | Joe Shaw <joeshaw@novell.com> | 2005-01-25 19:47:13 +0000 |
---|---|---|
committer | Joe Shaw <joeshaw@novell.com> | 2005-01-25 19:47:13 +0000 |
commit | b0002eb697ec4b1e35846b51d9e6e1a7824e0b03 (patch) | |
tree | d14e5cdc6646cb3de31d6e9e9ded564ac7bff82a /mono/DBusType/ObjectPath.cs | |
parent | f4d4d5ace5804acc363fbcff51fbdc82c078702b (diff) |
2005-01-25 Joe Shaw <joeshaw@novell.com>
* Land the mono binding changes to conform to the new APIs.
* mono/Makefile.am: Remove Custom.cs, DBusType/Custom.cs,
DBusType/Dict.cs, and DBusType/Nil.cs from the build.
* mono/Arguments.cs (GetCodeAsString): Added. Returns the dbus
type code as a string.
(InitAppending): Rename dbus_message_append_iter_init() to
dbus_message_iter_init_append().
* mono/BusDriver.cs: Rename ServiceEventHandler to
NameOwnerChangedHandler. Rename GetServiceOwner to GetOwner.
Rename ServiceOwnerChanged to NameOwnerChanged.
* mono/Connection.cs: Rename BaseService to UniqueName, and the
underlying C call.
* mono/Custom.cs: Removed. The CUSTOM type has been removed.
* mono/Service.cs: Rename Exists to HasOwner, internally rename
dbus_bus_acquire_service() to dbus_bus_request_name().
* mono/DBusType/Array.cs (ctor): Use Type.GetElementType() instead
of Type.UnderlyingSystemType to get the correct element type for
the array.
(ctor): Update code for new APIs: use dbus_message_iter_recurse(),
dbus_message_get_{element|arg}_type() instead of
dbus_message_iter_init_array_iterator().
(Append): Replace dbus_message_iter_append_array() with
dbus_message_iter_open_container() and
dbus_message_iter_close_container().
* mono/DBusType/Custom.cs, mono/DBusType/Nil.cs: Removed. These
types have been removed.
* mono/DBusType/*.cs: Replace calls of
dbus_message_iter_get_[type]() to dbus_message_iter_get_basic(),
but specify the type in the DllImport extern declaration. Ditto
for dbus_message_iter_append_[type]() ->
dbus_message_iter_append_basic().
* mono/example/BusListener.cs: Update for ServiceEventHandler ->
NameOwnerChangedHandler.
Diffstat (limited to 'mono/DBusType/ObjectPath.cs')
-rw-r--r-- | mono/DBusType/ObjectPath.cs | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/mono/DBusType/ObjectPath.cs b/mono/DBusType/ObjectPath.cs index f82c6804..01a21ca9 100644 --- a/mono/DBusType/ObjectPath.cs +++ b/mono/DBusType/ObjectPath.cs @@ -28,8 +28,11 @@ namespace DBus.DBusType public ObjectPath(IntPtr iter, Service service) { - - this.path = Marshal.PtrToStringAnsi(dbus_message_iter_get_object_path(iter)); + IntPtr raw; + + dbus_message_iter_get_basic (iter, out raw); + + this.path = Marshal.PtrToStringAnsi (raw); this.service = service; } @@ -47,7 +50,9 @@ namespace DBus.DBusType public void Append(IntPtr iter) { - if (!dbus_message_iter_append_object_path(iter, Marshal.StringToHGlobalAnsi(Path))) + IntPtr marshalVal = Marshal.StringToHGlobalAnsi (Path); + + if (!dbus_message_iter_append_basic (iter, (int) Code, ref marshalVal)) throw new ApplicationException("Failed to append OBJECT_PATH argument:" + val); } @@ -91,9 +96,9 @@ namespace DBus.DBusType } [DllImport("dbus-1")] - private extern static IntPtr dbus_message_iter_get_object_path(IntPtr iter); + private extern static void dbus_message_iter_get_basic (IntPtr iter, out IntPtr path); [DllImport("dbus-1")] - private extern static bool dbus_message_iter_append_object_path(IntPtr iter, IntPtr path); + private extern static bool dbus_message_iter_append_basic (IntPtr iter, int type, ref IntPtr path); } } |