Index: services/service_manager/connect_params.h |
diff --git a/services/service_manager/connect_params.h b/services/service_manager/connect_params.h |
index a2104cd29a213368e79554d070c45ef0a4bf4a88..8c8787a454c0cd2d815064bd29b6dbe527c0335a 100644 |
--- a/services/service_manager/connect_params.h |
+++ b/services/service_manager/connect_params.h |
@@ -52,6 +52,22 @@ class ConnectParams { |
return std::move(pid_receiver_request_); |
} |
+ void set_interface_request_info( |
+ const std::string& interface_name, |
+ mojo::ScopedMessagePipeHandle interface_pipe) { |
+ interface_name_ = interface_name; |
+ interface_pipe_ = std::move(interface_pipe); |
+ } |
+ const std::string& interface_name() const { |
+ return interface_name_; |
+ } |
+ bool HasInterfaceRequestInfo() const { |
+ return !interface_name_.empty() && interface_pipe_.is_valid(); |
+ } |
+ mojo::ScopedMessagePipeHandle TakeInterfaceRequestPipe() { |
+ return std::move(interface_pipe_); |
+ } |
+ |
void set_connect_callback(const mojom::Connector::ConnectCallback& value) { |
connect_callback_ = value; |
} |
@@ -59,6 +75,15 @@ class ConnectParams { |
return connect_callback_; |
} |
+ void set_bind_interface_callback( |
+ const mojom::Connector::BindInterfaceCallback& callback) { |
+ bind_interface_callback_ = callback; |
+ } |
+ const mojom::Connector::BindInterfaceCallback& |
+ bind_interface_callback() const { |
+ return bind_interface_callback_; |
+ } |
+ |
private: |
// It may be null (i.e., is_null() returns true) which indicates that there is |
// no source (e.g., for the first application or in tests). |
@@ -69,7 +94,10 @@ class ConnectParams { |
mojom::InterfaceProviderRequest remote_interfaces_; |
mojom::ServicePtr service_; |
mojom::PIDReceiverRequest pid_receiver_request_; |
+ std::string interface_name_; |
+ mojo::ScopedMessagePipeHandle interface_pipe_; |
mojom::Connector::ConnectCallback connect_callback_; |
+ mojom::Connector::BindInterfaceCallback bind_interface_callback_; |
DISALLOW_COPY_AND_ASSIGN(ConnectParams); |
}; |