| Index: mojo/public/cpp/application/application_impl.h
|
| diff --git a/mojo/public/cpp/application/application_impl.h b/mojo/public/cpp/application/application_impl.h
|
| index 2621daa1bb2a0a5cd017cb0359ebd139a6b7091c..fffc89078f679507741db5795f34a6169853d440 100644
|
| --- a/mojo/public/cpp/application/application_impl.h
|
| +++ b/mojo/public/cpp/application/application_impl.h
|
| @@ -5,17 +5,12 @@
|
| #ifndef MOJO_PUBLIC_CPP_APPLICATION_APPLICATION_IMPL_H_
|
| #define MOJO_PUBLIC_CPP_APPLICATION_APPLICATION_IMPL_H_
|
|
|
| -#include <memory>
|
| -#include <string>
|
| -#include <vector>
|
| -
|
| -#include "mojo/public/cpp/application/application_delegate.h"
|
| +#include "mojo/public/cpp/application/application_impl_base.h"
|
| #include "mojo/public/cpp/system/macros.h"
|
| -#include "mojo/public/interfaces/application/application.mojom.h"
|
| -#include "mojo/public/interfaces/application/shell.mojom.h"
|
|
|
| namespace mojo {
|
|
|
| +class ApplicationDelegate;
|
| class ServiceProviderImpl;
|
|
|
| // Implements the Application interface, which the shell uses for basic
|
| @@ -30,7 +25,7 @@ class ServiceProviderImpl;
|
| // ConfigureIncomingConnection() adds services to each connection. Finally, you
|
| // instantiate your delegate and pass it to an ApplicationRunner, which will
|
| // create the ApplicationImpl and then run a message (or run) loop.
|
| -class ApplicationImpl : public Application {
|
| +class ApplicationImpl : public ApplicationImplBase {
|
| public:
|
| // Does not take ownership of |delegate|, which must remain valid for the
|
| // lifetime of ApplicationImpl.
|
| @@ -38,38 +33,13 @@ class ApplicationImpl : public Application {
|
| InterfaceRequest<Application> request);
|
| ~ApplicationImpl() override;
|
|
|
| - // 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.
|
| - static void Terminate();
|
| -
|
| - // The Mojo shell. This will return a valid pointer after Initialize() has
|
| - // been invoked. It will remain valid until this object is destroyed.
|
| - Shell* shell() const { return shell_.get(); }
|
| -
|
| - const std::string& url() const { return url_; }
|
| -
|
| - // Returns any initial configuration arguments, passed by the Shell.
|
| - const std::vector<std::string>& args() const { return args_; }
|
| - bool HasArg(const std::string& arg) const;
|
| -
|
| private:
|
| - // |Application| implementation.
|
| - void Initialize(InterfaceHandle<Shell> shell,
|
| - Array<String> args,
|
| - const mojo::String& url) override;
|
| - void AcceptConnection(const String& requestor_url,
|
| - InterfaceRequest<ServiceProvider> services,
|
| - InterfaceHandle<ServiceProvider> exposed_services,
|
| - const String& url) override;
|
| - void RequestQuit() override;
|
| + // |ApplicationImplBase| implementation/overrides:
|
| + void OnInitialize() final;
|
| + bool OnAcceptConnection(ServiceProviderImpl* service_provider_impl) final;
|
| + void OnQuit() final;
|
|
|
| - std::vector<std::unique_ptr<ServiceProviderImpl>> service_provider_impls_;
|
| - ApplicationDelegate* delegate_;
|
| - Binding<Application> application_binding_;
|
| - ShellPtr shell_;
|
| - std::string url_;
|
| - std::vector<std::string> args_;
|
| + ApplicationDelegate* const delegate_;
|
|
|
| MOJO_DISALLOW_COPY_AND_ASSIGN(ApplicationImpl);
|
| };
|
|
|