Add ApplicationImplBase::Bind().
(And make the constructor not take an Application request.)
This is to allow implementations to be instantiated before the
message/run loop.
R=vardhan@google.com
Review URL: https://codereview.chromium.org/1993743004 .
diff --git a/mojo/public/cpp/application/application_impl_base.h b/mojo/public/cpp/application/application_impl_base.h
index 04109d7..8d3cbf6 100644
--- a/mojo/public/cpp/application/application_impl_base.h
+++ b/mojo/public/cpp/application/application_impl_base.h
@@ -31,10 +31,14 @@
// use this class in the current setup).
class ApplicationImplBase : public Application {
public:
- explicit ApplicationImplBase(
- InterfaceRequest<Application> application_request);
+ ApplicationImplBase();
~ApplicationImplBase() override;
+ // Binds the given |Application| request to this object. This must be done
+ // with the message (run) loop available/running, and this will cause this
+ // object to start serving requests (via that message loop).
+ void Bind(InterfaceRequest<Application> application_request);
+
// Quits the main run loop for this application.
// TODO(vtl): This is implemented in application_runner.cc (for example). Its
// presence here is pretty dubious.