
This migrates all Mojo interfaces exposed to the browser (by renderers) off of Service Manager APIs like ConnectionFilter. Instead RenderThreadImpl populates a BinderMap during initialization and passes it along to ChildThreadImpl::ExposeInterfacesToBrowser. NOPRESUBMIT=true Bug: 977637 Change-Id: If51249c2215046ce641151e486a034903e0878ae Tbr: boliu@chromium.org Tbr: groby@chromium.org Tbr: sky@chromium.org Tbr: xhwang@chromium.org Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1907273 Commit-Queue: Ken Rockot <rockot@google.com> Reviewed-by: Robert Sesek <rsesek@chromium.org> Reviewed-by: Avi Drissman <avi@chromium.org> Reviewed-by: Kentaro Hara <haraken@chromium.org> Cr-Commit-Position: refs/heads/master@{#715377}
29 lines
933 B
C++
29 lines
933 B
C++
// Copyright 2019 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.
|
|
|
|
#ifndef CONTENT_RENDERER_BROWSER_EXPOSED_RENDERER_INTERFACES_H_
|
|
#define CONTENT_RENDERER_BROWSER_EXPOSED_RENDERER_INTERFACES_H_
|
|
|
|
#include "base/memory/weak_ptr.h"
|
|
|
|
namespace mojo {
|
|
class BinderMap;
|
|
}
|
|
|
|
namespace content {
|
|
|
|
class RenderThreadImpl;
|
|
|
|
// Populates |*binders| with callbacks to expose interfaces from every renderer
|
|
// process to the browser process. These interfaces are scoped to the entire
|
|
// render process rather than to a specific (e.g. frame) context and can be
|
|
// acquired by the browser through |RenderProcessHost::BindReceiver()|.
|
|
void ExposeRendererInterfacesToBrowser(
|
|
base::WeakPtr<RenderThreadImpl> render_thread,
|
|
mojo::BinderMap* binders);
|
|
|
|
} // namespace content
|
|
|
|
#endif // CONTENT_RENDERER_BROWSER_EXPOSED_RENDERER_INTERFACES_H_
|