| Index: services/shell/public/cpp/interface_registry.h
|
| diff --git a/services/shell/public/cpp/interface_registry.h b/services/shell/public/cpp/interface_registry.h
|
| index f5d10dcbb7201dff05a285aa0a84f047dc077e6b..97a46ebfbfcede33f242964adfa501c832180d77 100644
|
| --- a/services/shell/public/cpp/interface_registry.h
|
| +++ b/services/shell/public/cpp/interface_registry.h
|
| @@ -104,6 +104,14 @@ class InterfaceRegistry : public mojom::InterfaceProvider {
|
| }
|
| void RemoveInterface(const std::string& name);
|
|
|
| + // Temporarily prevent incoming interface requests from being bound. Incoming
|
| + // requests will be queued internally and dispatched once UnpauseBinding() is
|
| + // called.
|
| + void PauseBinding();
|
| +
|
| + // Resumes incoming interface request binding.
|
| + void ResumeBinding();
|
| +
|
| private:
|
| using NameToInterfaceBinderMap =
|
| std::map<std::string, std::unique_ptr<InterfaceBinder>>;
|
| @@ -117,6 +125,8 @@ class InterfaceRegistry : public mojom::InterfaceProvider {
|
| bool SetInterfaceBinderForName(std::unique_ptr<InterfaceBinder> binder,
|
| const std::string& name);
|
|
|
| + mojom::InterfaceProviderRequest pending_request_;
|
| +
|
| mojo::Binding<mojom::InterfaceProvider> binding_;
|
| Connection* connection_;
|
|
|
|
|