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

Unified Diff: content/child/child_thread_impl.h

Issue 2096643002: Eliminate MojoApplicationHost (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@mah3
Patch Set: . Created 4 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 | « content/child/blink_platform_impl.cc ('k') | content/child/child_thread_impl.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/child/child_thread_impl.h
diff --git a/content/child/child_thread_impl.h b/content/child/child_thread_impl.h
index 0438b9cfe40126da4c92fc436e80882a0a92e8a4..2f8f9a03efeffe231a5857a1d7f17915d71180e3 100644
--- a/content/child/child_thread_impl.h
+++ b/content/child/child_thread_impl.h
@@ -18,12 +18,12 @@
#include "base/sequenced_task_runner.h"
#include "base/tracked_objects.h"
#include "build/build_config.h"
-#include "content/child/mojo/mojo_application.h"
#include "content/common/content_export.h"
#include "content/public/child/child_thread.h"
#include "ipc/ipc_message.h" // For IPC_MESSAGE_LOG_ENABLED.
#include "ipc/ipc_platform_file.h"
#include "ipc/message_router.h"
+#include "services/shell/public/cpp/shell_client.h"
namespace base {
class MessageLoop;
@@ -54,6 +54,7 @@ class ChildResourceMessageFilter;
class ChildSharedBitmapManager;
class FileSystemDispatcher;
class InProcessChildThreadParams;
+class MojoShellConnection;
class NotificationDispatcher;
class PushDispatcher;
class ServiceWorkerMessageFilter;
@@ -68,7 +69,8 @@ struct RequestInfo;
// The main thread of a child process derives from this class.
class CONTENT_EXPORT ChildThreadImpl
: public IPC::Listener,
- virtual public ChildThread {
+ virtual public ChildThread,
+ NON_EXPORTED_BASE(shell::ShellClient) {
public:
struct CONTENT_EXPORT Options;
@@ -96,6 +98,13 @@ class CONTENT_EXPORT ChildThreadImpl
#endif
void RecordAction(const base::UserMetricsAction& action) override;
void RecordComputedAction(const std::string& action) override;
+ MojoShellConnection* GetMojoShellConnection() override;
+ shell::InterfaceRegistry* GetInterfaceRegistry() override;
+ shell::InterfaceProvider* GetRemoteInterfaces() override;
+
+ // shell::ShellClient implementation:
+ shell::InterfaceRegistry* GetInterfaceRegistryForConnection() override;
+ shell::InterfaceProvider* GetInterfaceProviderForConnection() override;
IPC::SyncChannel* channel() { return channel_.get(); }
@@ -195,14 +204,6 @@ class CONTENT_EXPORT ChildThreadImpl
static void ShutdownThread();
#endif
- shell::InterfaceRegistry* interface_registry() {
- return mojo_application_->interface_registry();
- }
-
- shell::InterfaceProvider* remote_interfaces() const {
- return mojo_application_->remote_interfaces();
- }
-
protected:
friend class ChildProcess;
@@ -253,7 +254,9 @@ class CONTENT_EXPORT ChildThreadImpl
void EnsureConnected();
std::unique_ptr<mojo::edk::ScopedIPCSupport> mojo_ipc_support_;
- std::unique_ptr<MojoApplication> mojo_application_;
+ std::unique_ptr<MojoShellConnection> mojo_shell_connection_;
+ std::unique_ptr<shell::InterfaceRegistry> interface_registry_;
+ std::unique_ptr<shell::InterfaceProvider> remote_interfaces_;
std::string channel_name_;
std::unique_ptr<IPC::SyncChannel> channel_;
« no previous file with comments | « content/child/blink_platform_impl.cc ('k') | content/child/child_thread_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698