| Index: mojo/public/cpp/bindings/lib/binding_state.cc
|
| diff --git a/mojo/public/cpp/bindings/lib/binding_state.cc b/mojo/public/cpp/bindings/lib/binding_state.cc
|
| index 6beae550a2378c897f99a580cbdba759e34aa4bd..6d92f7239acf3d1b3ef17df8e78d7ab537e20e81 100644
|
| --- a/mojo/public/cpp/bindings/lib/binding_state.cc
|
| +++ b/mojo/public/cpp/bindings/lib/binding_state.cc
|
| @@ -4,6 +4,8 @@
|
|
|
| #include "mojo/public/cpp/bindings/lib/binding_state.h"
|
|
|
| +#include "mojo/public/cpp/bindings/lib/control_message_proxy.h"
|
| +
|
| namespace mojo {
|
| namespace internal {
|
|
|
| @@ -38,6 +40,10 @@ void SimpleBindingState::Close() {
|
| DestroyRouter();
|
| }
|
|
|
| +void SimpleBindingState::FlushForTesting() {
|
| + router_->control_message_proxy()->FlushForTesting();
|
| +}
|
| +
|
| void SimpleBindingState::EnableTestingMode() {
|
| DCHECK(is_bound());
|
| router_->EnableTestingMode();
|
| @@ -49,13 +55,15 @@ void SimpleBindingState::BindInternal(
|
| const char* interface_name,
|
| std::unique_ptr<MessageReceiver> request_validator,
|
| bool has_sync_methods,
|
| - MessageReceiverWithResponderStatus* stub) {
|
| + MessageReceiverWithResponderStatus* stub,
|
| + uint32_t interface_version) {
|
| FilterChain filters;
|
| filters.Append<MessageHeaderValidator>(interface_name);
|
| filters.Append(std::move(request_validator));
|
|
|
| router_ = new internal::Router(std::move(handle), std::move(filters),
|
| - has_sync_methods, std::move(runner));
|
| + has_sync_methods, std::move(runner),
|
| + interface_version);
|
| router_->set_incoming_receiver(stub);
|
| router_->set_connection_error_handler(base::Bind(
|
| &SimpleBindingState::RunConnectionErrorHandler, base::Unretained(this)));
|
| @@ -113,6 +121,10 @@ void MultiplexedBindingState::Close() {
|
| connection_error_handler_.Reset();
|
| }
|
|
|
| +void MultiplexedBindingState::FlushForTesting() {
|
| + endpoint_client_->control_message_proxy()->FlushForTesting();
|
| +}
|
| +
|
| void MultiplexedBindingState::EnableTestingMode() {
|
| DCHECK(is_bound());
|
| router_->EnableTestingMode();
|
| @@ -124,7 +136,8 @@ void MultiplexedBindingState::BindInternal(
|
| const char* interface_name,
|
| std::unique_ptr<MessageReceiver> request_validator,
|
| bool has_sync_methods,
|
| - MessageReceiverWithResponderStatus* stub) {
|
| + MessageReceiverWithResponderStatus* stub,
|
| + uint32_t interface_version) {
|
| DCHECK(!router_);
|
|
|
| router_ = new internal::MultiplexRouter(false, std::move(handle), runner);
|
| @@ -132,7 +145,8 @@ void MultiplexedBindingState::BindInternal(
|
|
|
| endpoint_client_.reset(new InterfaceEndpointClient(
|
| router_->CreateLocalEndpointHandle(kMasterInterfaceId), stub,
|
| - std::move(request_validator), has_sync_methods, std::move(runner)));
|
| + std::move(request_validator), has_sync_methods, std::move(runner),
|
| + interface_version));
|
|
|
| endpoint_client_->set_connection_error_handler(
|
| base::Bind(&MultiplexedBindingState::RunConnectionErrorHandler,
|
|
|