diff options
author | Alex Deymo <deymo@google.com> | 2016-02-04 13:52:56 -0800 |
---|---|---|
committer | Alex Deymo <deymo@google.com> | 2016-02-04 13:56:38 -0800 |
commit | d18192373f99852bf0a41e7c8a050856a0333003 (patch) | |
tree | 0b39e20fa88eca042c16bf8741cd2889b9eab6f7 | |
parent | e8437582167f3c7bea5c63317a6d1166302353e2 (diff) | |
download | metricsd-d18192373f99852bf0a41e7c8a050856a0333003.tar.gz |
metricsd: Create a brillo::MessageLoop.
brillo::BinderWatcher now requires a brillo::MessageLoop, so this patch
creates a brillo::BaseMessageLoop and passes it when creating the
brillo::BinderWatcher.
Bug: 26356682
TEST=Deployed metricsd to edison-eng.
Change-Id: I6a9e592623faf231205ae44e479bec2b873b8898
-rw-r--r-- | uploader/metricsd_service_runner.cc | 7 | ||||
-rw-r--r-- | uploader/metricsd_service_runner.h | 2 |
2 files changed, 7 insertions, 2 deletions
diff --git a/uploader/metricsd_service_runner.cc b/uploader/metricsd_service_runner.cc index 5a759d3..4361cac 100644 --- a/uploader/metricsd_service_runner.cc +++ b/uploader/metricsd_service_runner.cc @@ -20,6 +20,7 @@ #include <binder/IServiceManager.h> #include <brillo/binder_watcher.h> +#include <brillo/message_loops/base_message_loop.h> #include <utils/Errors.h> #include "uploader/bn_metricsd_impl.h" @@ -40,15 +41,17 @@ void MetricsdServiceRunner::Run() { CHECK(status == android::OK) << "Metricsd service registration failed"; message_loop_for_io_.reset(new base::MessageLoopForIO); + message_loop_.reset(new brillo::BaseMessageLoop(message_loop_for_io_.get())); - brillo::BinderWatcher watcher; + brillo::BinderWatcher watcher(message_loop_.get()); CHECK(watcher.Init()) << "failed to initialize the binder file descriptor " << "watcher"; - message_loop_for_io_->Run(); + message_loop_->Run(); // Delete the message loop here as it needs to be deconstructed in the thread // it is attached to. + message_loop_.reset(); message_loop_for_io_.reset(); } diff --git a/uploader/metricsd_service_runner.h b/uploader/metricsd_service_runner.h index 1715de0..f5dad21 100644 --- a/uploader/metricsd_service_runner.h +++ b/uploader/metricsd_service_runner.h @@ -21,6 +21,7 @@ #include <thread> #include <base/message_loop/message_loop.h> +#include <brillo/message_loops/message_loop.h> #include "uploader/crash_counters.h" @@ -39,6 +40,7 @@ class MetricsdServiceRunner { void Run(); std::unique_ptr<base::MessageLoopForIO> message_loop_for_io_; + std::unique_ptr<brillo::MessageLoop> message_loop_; std::unique_ptr<std::thread> thread_; std::shared_ptr<CrashCounters> counters_; |