Chromium Code Reviews| Index: content/common/mojo/service_registry_impl.h |
| diff --git a/content/common/mojo/service_registry_impl.h b/content/common/mojo/service_registry_impl.h |
| index 5e4fd73fd917b8c4874f5965df9ca52bb5f1e4a4..ecfb93872d9cbee91fe6afb365f4c582e5726e3d 100644 |
| --- a/content/common/mojo/service_registry_impl.h |
| +++ b/content/common/mojo/service_registry_impl.h |
| @@ -24,6 +24,8 @@ class CONTENT_EXPORT ServiceRegistryImpl |
| : public ServiceRegistry, |
| public NON_EXPORTED_BASE(mojo::ServiceProvider) { |
| public: |
| + using ServiceFactory = base::Callback<void(mojo::ScopedMessagePipeHandle)>; |
| + |
| ServiceRegistryImpl(); |
| ~ServiceRegistryImpl() override; |
| @@ -36,10 +38,15 @@ class CONTENT_EXPORT ServiceRegistryImpl |
| // ServiceProvider. |
| void BindRemoteServiceProvider(mojo::ServiceProviderPtr service_provider); |
| + // Registers a local service factory to intercept ConnectToRemoteService |
| + // requests instead of actually connecting to the remote registry. Used only |
| + // for testing. |
| + void AddServiceOverride(const std::string& service_name, |
|
jam
2016/01/26 23:04:19
add ForTesting method suffix to make presubmit che
Ken Rockot(use gerrit already)
2016/01/26 23:58:07
Done.
|
| + const ServiceFactory& service_factory); |
| + |
| // ServiceRegistry overrides. |
| void AddService(const std::string& service_name, |
| - const base::Callback<void(mojo::ScopedMessagePipeHandle)> |
| - service_factory) override; |
| + const ServiceFactory service_factory) override; |
| void RemoveService(const std::string& service_name) override; |
| void ConnectToRemoteService(const base::StringPiece& service_name, |
| mojo::ScopedMessagePipeHandle handle) override; |
| @@ -58,11 +65,12 @@ class CONTENT_EXPORT ServiceRegistryImpl |
| mojo::Binding<mojo::ServiceProvider> binding_; |
| mojo::ServiceProviderPtr remote_provider_; |
| - std::map<std::string, base::Callback<void(mojo::ScopedMessagePipeHandle)> > |
| - service_factories_; |
| + std::map<std::string, ServiceFactory> service_factories_; |
| std::queue<std::pair<std::string, mojo::MessagePipeHandle> > |
| pending_connects_; |
| + std::map<std::string, ServiceFactory> service_overrides_; |
| + |
| base::WeakPtrFactory<ServiceRegistry> weak_factory_; |
| }; |