Commit Graph

25 Commits

Author SHA1 Message Date
Thomas Zimmermann
d1e59e94c1 Bug 1246931: Add DBus I/O helpers, r=shuang
The I/O helpers for DBus are based on |RawDBusConnection|'s |Send*| and
|Watch| methods. Moving them out of this class will make them available
to other modules.
2016-04-12 16:14:39 +02:00
Thomas Zimmermann
963d65a3fe Bug 1246931: Add support for |RefPtr<DBusConnection>| and convert callers, r=shuang
|RefPtr<DBusConnection>| manages instances of |DBusConnection| and frees
each instance when its last reference gets released.
2016-04-12 16:14:39 +02:00
Thomas Zimmermann
3963797e05 Bug 1246931: Use |DBusConnection| in |DBusWatcher|, r=shuang
This patch replaces all references to |RawDBusConnection| in |DBusWatcher|
with |DBusConnection|.
2016-04-12 16:14:39 +02:00
Thomas Zimmermann
a3e7b00070 Bug 1246931: Move |DBusWatcher| into its own files, r=shuang
|DBusWatcher| should be usable from outside of |RawDBusConnection|, so we
move it into its own files.
2016-04-12 16:14:39 +02:00
Thomas Zimmermann
0bb9fac316 Bug 1261340: Don't refer to |ScopedFreePtrTraits| in |RawDBusConnection|, r=shuang
The class template |ScopedFreePtrTrais| has been removed. This patch
updates |RawDBusConnection| to not refer to it any longer. Instead, the
provided helper method |empty| is implemented directly.
2016-04-08 10:07:28 +02:00
Thomas Zimmermann
8a42ff3ea3 Bug 995912: Remove BLUEZ_DBUS_BASE_IFC from RawDBusConnection, r=qdot, echou
This patch removes the constant BLUEZ_DBUS_BASE_IFC from the file
RawDBusconnection.cpp. The constant is specific to BlueZ, and that's
where it's located now.
2014-04-17 11:16:12 +02:00
Thomas Zimmermann
6be2f06f78 Bug 968868: Move DBusWatcher to RawDBusConnection, r=qdot
DBusWatcher is a helper for RawDBusConnection. This patch moves
both classes into the same file. Calling RawDBusConnection::Watch
installs a DBusWatcher for the connection.
2014-02-07 12:01:27 +01:00
Thomas Zimmermann
51ee63084d Bug 968275: Remove task classes from RawDBusConnection, r=qdot
This patch removes the internal tasks from the implementation of
RawDBusConnection. All calls to RawDBusConnection are invoked on
the I/O thread, so the sender tasks only impose an overhead.
2014-02-06 17:28:44 +01:00
Ehsan Akhgari
b900d74d59 Bug 951207 - Rename the chromium LOG macro to CHROMIUM_LOG; r=bent 2013-12-17 13:26:45 -05:00
Thomas Zimmermann
5454da5acb Bug 932728: Run DBus on the I/O thread, r=qdot
This patch converts DBusWatcher to run on the I/O thread. When a
caller starts DBus, StartDBus creates a new connection and adds
it to the I/O thread's poll loop. DBusWatchers are created and
removed automatically by the DBus libary.

The I/O thread provides all features of the DBus thread. So most
of the existing code has been removed or rewritten. The former
includes the control socket and the DBus thread, the latter is in
the DBusWatcher code.
2013-10-29 16:03:40 +01:00
Thomas Zimmermann
0b4ea3d46b Bug 932728: Use private DBus connection, r=qdot
Using a private DBus connection gives each of its users, such as
Bluetooth, its own connection to the DBus server. This simplifies
the use of DBusWatch structures and ensures that all resources of
a connection are free'd when the connection gets closed.
2013-10-29 16:03:40 +01:00
Thomas Zimmermann
168c3936c1 Bug 931038: Remove blocking DBus interface, r=qdot
All blocking calls to DBus have been replaced by non-blocking
code. This patch removes the corresponding DBus interfaces.
2013-10-29 11:08:16 +01:00
Eric Chou
6344d23d67 Bug 923369 - Return true when RawDBusConnection::SendWithError() executed without any error, r=tzimmerman, r=qdot 2013-10-05 14:35:00 +08:00
Thomas Zimmermann
c36b61e2ca Bug 919913: Introduce DBusReplyCallback, r=qdot,echou
DBusReplyCallback replaces the removed DBusCallback as type for
reply-handler functions. Bluetooth, the only user of DBus, has
been updated as well.
2013-10-01 10:20:55 +02:00
Thomas Zimmermann
64ac4c51e9 Bug 919913: Add send methods to RawDBusConnection, r=qdot
This patch adds methods for sending DBus messages to the class
RawDBusConnection. There are 3 types of interfaces.

 - Send             Sends a message over DBus. No error checking or
                    handling of replies is performed. These methods
                    do not block the sending thread.

 - SendWithReply    Sends a message over DBus and runs a call-back
                    function for the reply. This should be the default
                    case for most scenarios. These methods do not
                    block the sending thread.

 - SendWithError    Sends a message over DBus and waits for the reply
                    or an error. This interface has only been added for
                    some existing code that can safely block the sending
                    thread. Don't use it in new code.

These 3 types of interfaces represent what is currently used of the
existing send functions in DBusUtils. When all users have been converted
to the new methods, the interfaces in DBusUtils can be removed.
2013-10-01 10:20:21 +02:00
Thomas Zimmermann
584ff8744a Bug 891866: Support nsRefPtr<RawDBusConnection>, r=qdot
Instances of RawDBusConnection can now be contained in nsRefPtr. This
allows to share the DBus connection among multiple threads.
2013-07-22 13:30:22 +02:00
Thomas Zimmermann
9b2d925217 Bug 830290: Cleanup DBus EventLoop function r=bent,qdot
We intent to run the DBus thread's EventLoop function as separate
nsRunnable, but the function also contains code for initializing
sockets that are used for internal communication.

With this patch the socket initialization has been moved to the
setup function. This reduces the EventLoop function to plain event
handling.
2013-01-14 11:50:18 +01:00
Eric Chou
a3ca55f0ad Bug 783932 - [b2g-bluetooth] Fix wrong textwidth(tw=) value in Mode line, r=qdot 2012-08-21 11:21:24 +08:00
Kyle Machulis
5ea51bd841 Bug 740744: Asynchronous dbus events for bluetooth, Start/StopDiscovery and device event firing; r=bent sr=mrbkap 2012-07-17 20:41:54 -07:00
Kyle Machulis
dc49029209 Bug 744349 - Create message distribution mechanism for DBus Bluetooth Signals; r=cjones 2012-06-02 11:23:16 -07:00
Ryan VanderMeulen
8ce32d72ad Re-land the patch for bug 732639 after a b2g clobber. 2012-05-07 17:50:25 -04:00
Ryan VanderMeulen
a92029d498 Backout 7a8607523522 (bug 732639) due to bustage. r=Boot2Fail 2012-05-07 17:21:01 -04:00
Kyle Machulis
bcca029f97 Bug 732639: Create event loop thread for bluetooth dbus on gonk/linux; r=cjones 2012-05-07 14:04:59 -07:00
Ms2ger
0af97e7e1b Backed out changeset db5d4c1aece7 for B2g bustage. 2012-04-14 09:29:41 +02:00
Kyle Machulis
ea09338c8f Bug 732639: DBus Thread Implementation for B2G Bluetooth r=cjones 2012-04-13 22:40:09 -07:00