Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(397)

Unified Diff: trunk/src/content/renderer/render_thread_impl.cc

Issue 352013002: Revert 279557 "Support exposing Mojo services between render fra..." (Closed) Base URL: svn://svn.chromium.org/chrome/
Patch Set: Created 6 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « trunk/src/content/renderer/render_thread_impl.h ('k') | trunk/src/content/renderer/web_ui_mojo.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: trunk/src/content/renderer/render_thread_impl.cc
===================================================================
--- trunk/src/content/renderer/render_thread_impl.cc (revision 279559)
+++ trunk/src/content/renderer/render_thread_impl.cc (working copy)
@@ -51,7 +51,7 @@
#include "content/common/gpu/client/gpu_memory_buffer_impl.h"
#include "content/common/gpu/gpu_messages.h"
#include "content/common/gpu/gpu_process_launch_causes.h"
-#include "content/common/render_frame_setup.mojom.h"
+#include "content/common/mojo/mojo_service_names.h"
#include "content/common/resource_messages.h"
#include "content/common/view_messages.h"
#include "content/common/worker_messages.h"
@@ -95,6 +95,7 @@
#include "content/renderer/service_worker/embedded_worker_context_message_filter.h"
#include "content/renderer/service_worker/embedded_worker_dispatcher.h"
#include "content/renderer/shared_worker/embedded_shared_worker_stub.h"
+#include "content/renderer/web_ui_setup_impl.h"
#include "grit/content_resources.h"
#include "ipc/ipc_channel_handle.h"
#include "ipc/ipc_forwarding_message_filter.h"
@@ -265,31 +266,6 @@
v8::Date::DateTimeConfigurationChangeNotification(isolate);
}
-class RenderFrameSetupImpl : public mojo::InterfaceImpl<RenderFrameSetup> {
- public:
- virtual void GetServiceProviderForFrame(
- int32_t frame_routing_id,
- mojo::InterfaceRequest<mojo::IInterfaceProvider> request) OVERRIDE {
- RenderFrameImpl* frame = RenderFrameImpl::FromRoutingID(frame_routing_id);
- // We can receive a GetServiceProviderForFrame message for a frame not yet
- // created due to a race between the message and a ViewMsg_New IPC that
- // triggers creation of the RenderFrame we want.
- if (!frame) {
- RenderThreadImpl::current()->RegisterPendingRenderFrameConnect(
- frame_routing_id, request.PassMessagePipe());
- return;
- }
-
- frame->BindServiceRegistry(request.PassMessagePipe());
- }
-
- virtual void OnConnectionError() OVERRIDE { delete this; }
-};
-
-void CreateRenderFrameSetup(mojo::InterfaceRequest<RenderFrameSetup> request) {
- mojo::BindToRequest(new RenderFrameSetupImpl(), &request);
-}
-
} // namespace
RenderThreadImpl::HistogramCustomizer::HistogramCustomizer() {
@@ -532,19 +508,10 @@
}
}
- service_registry()->AddService<RenderFrameSetup>(
- base::Bind(CreateRenderFrameSetup));
-
TRACE_EVENT_END_ETW("RenderThreadImpl::Init", 0, "");
}
RenderThreadImpl::~RenderThreadImpl() {
- for (std::map<int, mojo::MessagePipeHandle>::iterator it =
- pending_render_frame_connects_.begin();
- it != pending_render_frame_connects_.end();
- ++it) {
- mojo::CloseRaw(it->second);
- }
}
void RenderThreadImpl::Shutdown() {
@@ -713,18 +680,6 @@
void RenderThreadImpl::AddRoute(int32 routing_id, IPC::Listener* listener) {
ChildThread::GetRouter()->AddRoute(routing_id, listener);
- std::map<int, mojo::MessagePipeHandle>::iterator it =
- pending_render_frame_connects_.find(routing_id);
- if (it == pending_render_frame_connects_.end())
- return;
-
- RenderFrameImpl* frame = RenderFrameImpl::FromRoutingID(routing_id);
- if (!frame)
- return;
-
- mojo::ScopedMessagePipeHandle handle(it->second);
- pending_render_frame_connects_.erase(it);
- frame->BindServiceRegistry(handle.Pass());
}
void RenderThreadImpl::RemoveRoute(int32 routing_id) {
@@ -748,15 +703,6 @@
}
}
-void RenderThreadImpl::RegisterPendingRenderFrameConnect(
- int routing_id,
- mojo::ScopedMessagePipeHandle handle) {
- std::pair<std::map<int, mojo::MessagePipeHandle>::iterator, bool> result =
- pending_render_frame_connects_.insert(
- std::make_pair(routing_id, handle.release()));
- CHECK(result.second) << "Inserting a duplicate item.";
-}
-
int RenderThreadImpl::GenerateRoutingID() {
int routing_id = MSG_ROUTING_NONE;
Send(new ViewHostMsg_GenerateRoutingID(&routing_id));
@@ -1153,10 +1099,6 @@
#endif // OS_WIN
-ServiceRegistry* RenderThreadImpl::GetServiceRegistry() {
- return service_registry();
-}
-
bool RenderThreadImpl::IsMainThread() {
return !!current();
}
@@ -1237,6 +1179,19 @@
.PassAs<gfx::GpuMemoryBuffer>();
}
+void RenderThreadImpl::ConnectToService(
+ const mojo::String& service_url,
+ const mojo::String& service_name,
+ mojo::ScopedMessagePipeHandle message_pipe,
+ const mojo::String& requestor_url) {
+ // TODO(darin): Invent some kind of registration system to use here.
+ if (service_url.To<base::StringPiece>() == kRendererService_WebUISetup) {
+ WebUISetupImpl::Bind(message_pipe.Pass());
+ } else {
+ NOTREACHED() << "Unknown service name";
+ }
+}
+
void RenderThreadImpl::DoNotSuspendWebKitSharedTimer() {
suspend_webkit_shared_timer_ = false;
}
« no previous file with comments | « trunk/src/content/renderer/render_thread_impl.h ('k') | trunk/src/content/renderer/web_ui_mojo.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698