Make DBus a singleton.
All the proxies need dbus to initialize, so we are passing dbus around,
to make it easier to compile dbus conditionally, this patch makes it a
singleton so that the proxies can get dbus on their own.
Test: mma
Bug: 28800946
Change-Id: Idf062c843aa34a431c2201bae5b895dc1d0ea787
diff --git a/real_system_state.h b/real_system_state.h
index 071e3e0..bd51cb0 100644
--- a/real_system_state.h
+++ b/real_system_state.h
@@ -34,6 +34,7 @@
#include "update_engine/common/prefs.h"
#include "update_engine/connection_manager.h"
#include "update_engine/daemon_state_interface.h"
+#include "update_engine/dbus_connection.h"
#include "update_engine/p2p_manager.h"
#include "update_engine/payload_state.h"
#include "update_engine/shill_proxy.h"
@@ -49,7 +50,9 @@
public:
// Constructs all system objects that do not require separate initialization;
// see Initialize() below for the remaining ones.
+ // TODO(senj): Remove this constructor once all proxies get DBus themselves.
explicit RealSystemState(const scoped_refptr<dbus::Bus>& bus);
+ RealSystemState() : RealSystemState(DBusConnection::Get()->GetDBus()){};
~RealSystemState() override;
// Initializes and sets systems objects that require an initialization