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

Side by Side Diff: content/common/mojo/mojo_shell_connection_impl.cc

Issue 1822213002: Changes to get mash browser_tests shutdown working correctly (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: order Created 4 years, 9 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 unified diff | Download patch
OLDNEW
1 // Copyright 2015 The Chromium Authors. All rights reserved. 1 // Copyright 2015 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/common/mojo/mojo_shell_connection_impl.h" 5 #include "content/common/mojo/mojo_shell_connection_impl.h"
6 6
7 #include <utility> 7 #include <utility>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/lazy_instance.h" 10 #include "base/lazy_instance.h"
(...skipping 117 matching lines...) Expand 10 before | Expand all | Expand 10 after
128 128
129 mojo::Connector* MojoShellConnectionImpl::GetConnector() { 129 mojo::Connector* MojoShellConnectionImpl::GetConnector() {
130 DCHECK(shell_connection_); 130 DCHECK(shell_connection_);
131 return shell_connection_->connector(); 131 return shell_connection_->connector();
132 } 132 }
133 133
134 bool MojoShellConnectionImpl::UsingExternalShell() const { 134 bool MojoShellConnectionImpl::UsingExternalShell() const {
135 return external_; 135 return external_;
136 } 136 }
137 137
138 void MojoShellConnectionImpl::SetConnectionLostClosure(
139 const base::Closure& closure) {
140 shell_connection_->set_connection_lost_closure(closure);
141 }
142
138 void MojoShellConnectionImpl::AddListener(Listener* listener) { 143 void MojoShellConnectionImpl::AddListener(Listener* listener) {
139 DCHECK(std::find(listeners_.begin(), listeners_.end(), listener) == 144 DCHECK(std::find(listeners_.begin(), listeners_.end(), listener) ==
140 listeners_.end()); 145 listeners_.end());
141 listeners_.push_back(listener); 146 listeners_.push_back(listener);
142 } 147 }
143 148
144 void MojoShellConnectionImpl::RemoveListener(Listener* listener) { 149 void MojoShellConnectionImpl::RemoveListener(Listener* listener) {
145 auto it = std::find(listeners_.begin(), listeners_.end(), listener); 150 auto it = std::find(listeners_.begin(), listeners_.end(), listener);
146 DCHECK(it != listeners_.end()); 151 DCHECK(it != listeners_.end());
147 listeners_.erase(it); 152 listeners_.erase(it);
148 } 153 }
149 154
150 // static 155 // static
151 MojoShellConnection* MojoShellConnection::Get() { 156 MojoShellConnection* MojoShellConnection::Get() {
152 return lazy_tls_ptr.Pointer()->Get(); 157 return lazy_tls_ptr.Pointer()->Get();
153 } 158 }
154 159
155 // static 160 // static
156 void MojoShellConnection::Destroy() { 161 void MojoShellConnection::Destroy() {
157 // This joins the shell controller thread. 162 // This joins the shell controller thread.
158 delete Get(); 163 delete Get();
159 lazy_tls_ptr.Pointer()->Set(nullptr); 164 lazy_tls_ptr.Pointer()->Set(nullptr);
160 } 165 }
161 166
162 MojoShellConnection::~MojoShellConnection() {} 167 MojoShellConnection::~MojoShellConnection() {}
163 168
164 } // namespace content 169 } // namespace content
OLDNEW
« no previous file with comments | « content/common/mojo/mojo_shell_connection_impl.h ('k') | content/public/common/mojo_shell_connection.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698