Dap.Bluetooth: Add DBusInverter
authorNicholas Little <arealityfarbetween@googlemail.com>
Thu, 26 Jun 2014 13:28:10 +0000 (14:28 +0100)
committerNicholas Little <arealityfarbetween@googlemail.com>
Thu, 26 Jun 2014 17:32:16 +0000 (18:32 +0100)
commit5e56cfaac970fa3c38a31a523c73d5fd78af3ecb
tree06931086892e979ff10563c84b473654e84fb0d3
parentce8c1909e2deb9d463ac3759704056cf20325e5b
Dap.Bluetooth: Add DBusInverter

Realising that I'd have to write essentially all the same style of
wrappers and supporting life management types for sessions as I'd
already written for devices and adapters I figured we need some sort of
factory.

This solves three problems, it:
1) ensures that properties are kept up to date, even for types that
   aren't registered initially;
2) provides a standard interface for creating wrappers that won't throw
   tantrums when calling property methods on their interfaces, and;
3) allows management of DBus polymorphism.
src/Banshee.Dap.Bluetooth/Banshee.Dap.Bluetooth.fsproj
src/Banshee.Dap.Bluetooth/Banshee.Dap.Bluetooth/DBusApi.fs
src/Banshee.Dap.Bluetooth/Banshee.Dap.Bluetooth/DeviceManager.fs
src/Banshee.Dap.Bluetooth/Banshee.Dap.Bluetooth/Gui/ManagerSource.fs
src/Banshee.Dap.Bluetooth/Banshee.Dap.Bluetooth/InversionApi.fs [new file with mode: 0644]
src/Banshee.Dap.Bluetooth/Banshee.Dap.Bluetooth/ObexApi.fs
src/Banshee.Dap.Bluetooth/Banshee.Dap.Bluetooth/SupportApi.fs
src/Banshee.Dap.Bluetooth/Banshee.Dap.Bluetooth/Wrappers.fs