summaryrefslogtreecommitdiffstats
path: root/mono/Message.cs
Commit message (Collapse)AuthorAgeFilesLines
* 2005-03-08 Joe Shaw <joeshaw@novell.com>Joe Shaw2005-03-091-2/+24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a bunch of lifecycle and memory management problems in the mono bindings. * mono/Arguments.cs (Arguments): Implement IDisposable * mono/Bus.cs (Bus): Don't allow public instantiation. This is strictly a static class. * mono/Connection.cs: Move the DBusObjectPathVTable and associated delegates into this file. (Connection): Implement IDisposable. (Dispose): Disconnect the connection and set the raw connection pointer to IntPtr.Zero. (~Connection): Call Dispose(). (RegisterObjectPath): Added. Manages the registration of object paths so we can cleanly disconnect them at dispose/finalize time. (UnregisterObjectPath): Ditto. (set_RawConnection): Unregister all of the object paths when changing the underlying DBusConnection. Add them back onto the new connection, if any. * mono/Handler.cs: Don't implement IDisposable; it doesn't use any more unmanaged resources anymore, so it's not necessary. Move all the DBusObjectPathVTable stuff out of here. (Handler): Save references to our delegates so that they don't get finalized. Call Connection.RegisterObjectPath() instead of dbus_connection_register_object_path() directly. (Message_Called): Dispose the message after we're finished with it. * mono/Message.cs (Message): Implement IDisposable. (Dispose): Dispose the Arguments, and set the RawMessage to IntPtr.Zero. (SendWithReplyAndBlock): We own the ref to the reply that comes back from dbus_connection_send_with_reply_and_block() so add a comment about that and unref it after we've constructed a managed MethodReturn class around it. Fixes a big, big leak. * mono/ProxyBuilder.cs: Reflect into Message to get the Dispose method. (BuildSignalHandler): After we've sent the Signal message, dispose of it. (BuildMethod): Dispose of the method call and reply messages after we've sent the message and extracted the data we want from the reply. * mono/Service.cs (UnregisterObject): Don't call handler.Dispose() anymore. (Service_FilterCalled): Dispose of the message after we're finished with it.
* 2004-08-30 Jon Trowbridge <trow@ximian.com>Jon Trowbridge2004-08-311-0/+38
| | | | | | | | | | | | | | | | | | | * mono/BusDriver.cs: Added. This is a class for interacting with the org.freedesktop.DBus service. * mono/Message.cs: Added a mechanism to expose the message that is currently being dispatched via the static Message.Current property. Added Message.Sender and Message.Destination properties. * mono/Handler.cs: Expose the dispatched message via Message.Current when handling method calls. * mono/Service.cs: Expose the dispatched message via Message.Current when handling signal emissions. * mono/Connection.cs: Bind dbus_bus_get_base_service via the Connection.BaseService property.
* Added signal support.Owen Fraser-Green2004-03-261-17/+24
|
* Added InterfaceProxy to Mono bindings to avoid having to generate a proxy ↵Owen Fraser-Green2004-03-231-0/+12
| | | | for every registered object. Also added object_path functions to dbus-message.
* First checkin of the Mono bindings.Owen Fraser-Green2004-03-231-95/+324
|
* 2003-06-24 Havoc Pennington <hp@pobox.com>Havoc Pennington2003-06-251-8/+8
| | | | * mono/*.cs: Use IntPtr.Zero instead of ((IntPtr) 0)
* 2003-06-22 Havoc Pennington <hp@pobox.com>Havoc Pennington2003-06-231-9/+11
| | | | | | | * mono/Connection.cs: add more bindings * dbus/dbus-threads.c (dbus_threads_init): allow calling this more than once.
* 2003-06-22 Havoc Pennington <hp@pobox.com>Havoc Pennington2003-06-221-9/+10
| | | | | * mono/Connection.cs, mono/DBus.cs, mono/Error.cs: Start wrapping more stuff.
* 2003-06-22 Havoc Pennington <hp@pobox.com>Havoc Pennington2003-06-221-5/+81
| | | | | | | | | | | * mono/Message.cs: implement Message.Wrap() that ensures we only have a single C# wrapper per DBusMessage, assuming it works which it probably doesn't. * dbus/dbus-message.c (dbus_message_allocate_data_slot): new (dbus_message_free_data_slot): new (dbus_message_set_data): new (dbus_message_get_data): new
* 2003-06-22 Havoc Pennington <hp@pobox.com>Havoc Pennington2003-06-221-0/+50
* mono/*, gcj/*, configure.in, Makefile.am: Check in makefiles and subdirs for mono and gcj bindings. Neither binding actually exists, just trying to get through all the build and other boring bits.