Index: content/common/associated_interface_provider_impl.cc |
diff --git a/content/common/associated_interface_provider_impl.cc b/content/common/associated_interface_provider_impl.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..e380a761fd7b4b69162435a2c37a6ca47da684c4 |
--- /dev/null |
+++ b/content/common/associated_interface_provider_impl.cc |
@@ -0,0 +1,32 @@ |
+// Copyright 2016 The Chromium Authors. All rights reserved. |
+// Use of this source code is governed by a BSD-style license that can be |
+// found in the LICENSE file. |
+ |
+#include "content/common/associated_interface_provider_impl.h" |
+ |
+namespace content { |
+ |
+AssociatedInterfaceProviderImpl::AssociatedInterfaceProviderImpl( |
+ const mojo::AssociatedGroup& associated_group, |
+ mojom::RouteProvider* route_provider, |
+ int32_t routing_id) : associated_group_(associated_group) { |
+ mojom::AssociatedInterfaceProviderAssociatedRequest request = |
+ mojo::GetProxy(&proxy_, &associated_group_); |
+ route_provider->GetRoute(routing_id, std::move(request)); |
+} |
+ |
+AssociatedInterfaceProviderImpl::~AssociatedInterfaceProviderImpl() {} |
+ |
+void AssociatedInterfaceProviderImpl::GetInterface( |
+ const std::string& name, |
+ mojo::ScopedInterfaceEndpointHandle handle) { |
+ mojom::AssociatedInterfaceAssociatedRequest request; |
+ request.Bind(std::move(handle)); |
+ return proxy_->GetAssociatedInterface(name, std::move(request)); |
+} |
+ |
+mojo::AssociatedGroup* AssociatedInterfaceProviderImpl::GetAssociatedGroup() { |
+ return &associated_group_; |
+} |
+ |
+} // namespace content |