| Index: content/browser/mojo/mojo_application_host.h
|
| diff --git a/content/browser/mojo/mojo_application_host.h b/content/browser/mojo/mojo_application_host.h
|
| index 4e3e3e1625faf8823e3cb8986ad9fa366fd8baed..810f04411f30f9adb8d49490afdcd26eeae83b4d 100644
|
| --- a/content/browser/mojo/mojo_application_host.h
|
| +++ b/content/browser/mojo/mojo_application_host.h
|
| @@ -6,9 +6,9 @@
|
| #define CONTENT_BROWSER_MOJO_MOJO_APPLICATION_HOST_H_
|
|
|
| #include "base/process/process_handle.h"
|
| +#include "content/common/mojo/service_registry_impl.h"
|
| #include "mojo/common/channel_init.h"
|
| #include "mojo/embedder/scoped_platform_handle.h"
|
| -#include "mojo/public/interfaces/service_provider/service_provider.mojom.h"
|
|
|
| namespace IPC {
|
| class Sender;
|
| @@ -19,49 +19,31 @@ namespace content {
|
| // MojoApplicationHost represents the code needed on the browser side to setup
|
| // a child process as a Mojo application via Chrome IPC. The child process
|
| // should use MojoApplication to handle messages generated by an instance of
|
| -// MojoApplicationHost. MojoApplicationHost makes the mojo::ShellClient
|
| -// interface available so that child-provided services can be invoked.
|
| +// MojoApplicationHost. MojoApplicationHost makes the ServiceRegistry interface
|
| +// available so that child-provided services can be invoked.
|
| class MojoApplicationHost {
|
| public:
|
| MojoApplicationHost();
|
| virtual ~MojoApplicationHost();
|
|
|
| // Two-phase initialization:
|
| - // 1- Init makes the shell_client() available synchronously.
|
| + // 1- Init makes service_registry() available synchronously.
|
| // 2- Activate establishes the actual connection to the peer process.
|
| bool Init();
|
| bool Activate(IPC::Sender* sender, base::ProcessHandle process_handle);
|
|
|
| bool did_activate() const { return did_activate_; }
|
|
|
| - mojo::ServiceProvider* service_provider() {
|
| - DCHECK(child_service_provider_.get());
|
| - return child_service_provider_->client();
|
| - }
|
| + ServiceRegistry* service_registry() { return &service_registry_; }
|
|
|
| private:
|
| - class ServiceProviderImpl
|
| - : public mojo::InterfaceImpl<mojo::ServiceProvider> {
|
| - public:
|
| - virtual void OnConnectionError() OVERRIDE {
|
| - // TODO(darin): How should we handle this error?
|
| - }
|
| -
|
| - // mojo::ServiceProvider methods:
|
| - virtual void ConnectToService(
|
| - const mojo::String& service_url,
|
| - const mojo::String& service_name,
|
| - mojo::ScopedMessagePipeHandle handle,
|
| - const mojo::String& requestor_url) OVERRIDE;
|
| - };
|
| -
|
| mojo::common::ChannelInit channel_init_;
|
| mojo::embedder::ScopedPlatformHandle client_handle_;
|
|
|
| - scoped_ptr<ServiceProviderImpl> child_service_provider_;
|
| -
|
| bool did_activate_;
|
|
|
| + ServiceRegistryImpl service_registry_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(MojoApplicationHost);
|
| };
|
|
|
|
|