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

Side by Side Diff: chromeos/dbus/session_manager_client.cc

Issue 628883002: replace OVERRIDE and FINAL with override and final in chromeos/ (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 6 years, 2 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 (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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 "chromeos/dbus/session_manager_client.h" 5 #include "chromeos/dbus/session_manager_client.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/callback.h" 8 #include "base/callback.h"
9 #include "base/files/file_path.h" 9 #include "base/files/file_path.h"
10 #include "base/files/file_util.h" 10 #include "base/files/file_util.h"
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
65 class SessionManagerClientImpl : public SessionManagerClient { 65 class SessionManagerClientImpl : public SessionManagerClient {
66 public: 66 public:
67 SessionManagerClientImpl() 67 SessionManagerClientImpl()
68 : session_manager_proxy_(NULL), 68 : session_manager_proxy_(NULL),
69 weak_ptr_factory_(this) {} 69 weak_ptr_factory_(this) {}
70 70
71 virtual ~SessionManagerClientImpl() { 71 virtual ~SessionManagerClientImpl() {
72 } 72 }
73 73
74 // SessionManagerClient overrides: 74 // SessionManagerClient overrides:
75 virtual void SetStubDelegate(StubDelegate* delegate) OVERRIDE { 75 virtual void SetStubDelegate(StubDelegate* delegate) override {
76 // Do nothing; this isn't a stub implementation. 76 // Do nothing; this isn't a stub implementation.
77 } 77 }
78 78
79 virtual void AddObserver(Observer* observer) OVERRIDE { 79 virtual void AddObserver(Observer* observer) override {
80 observers_.AddObserver(observer); 80 observers_.AddObserver(observer);
81 } 81 }
82 82
83 virtual void RemoveObserver(Observer* observer) OVERRIDE { 83 virtual void RemoveObserver(Observer* observer) override {
84 observers_.RemoveObserver(observer); 84 observers_.RemoveObserver(observer);
85 } 85 }
86 86
87 virtual bool HasObserver(Observer* observer) OVERRIDE { 87 virtual bool HasObserver(Observer* observer) override {
88 return observers_.HasObserver(observer); 88 return observers_.HasObserver(observer);
89 } 89 }
90 90
91 virtual void EmitLoginPromptVisible() OVERRIDE { 91 virtual void EmitLoginPromptVisible() override {
92 SimpleMethodCallToSessionManager( 92 SimpleMethodCallToSessionManager(
93 login_manager::kSessionManagerEmitLoginPromptVisible); 93 login_manager::kSessionManagerEmitLoginPromptVisible);
94 FOR_EACH_OBSERVER(Observer, observers_, EmitLoginPromptVisibleCalled()); 94 FOR_EACH_OBSERVER(Observer, observers_, EmitLoginPromptVisibleCalled());
95 } 95 }
96 96
97 virtual void RestartJob(int pid, const std::string& command_line) OVERRIDE { 97 virtual void RestartJob(int pid, const std::string& command_line) override {
98 dbus::MethodCall method_call(login_manager::kSessionManagerInterface, 98 dbus::MethodCall method_call(login_manager::kSessionManagerInterface,
99 login_manager::kSessionManagerRestartJob); 99 login_manager::kSessionManagerRestartJob);
100 dbus::MessageWriter writer(&method_call); 100 dbus::MessageWriter writer(&method_call);
101 writer.AppendInt32(pid); 101 writer.AppendInt32(pid);
102 writer.AppendString(command_line); 102 writer.AppendString(command_line);
103 session_manager_proxy_->CallMethod( 103 session_manager_proxy_->CallMethod(
104 &method_call, 104 &method_call,
105 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 105 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
106 base::Bind(&SessionManagerClientImpl::OnRestartJob, 106 base::Bind(&SessionManagerClientImpl::OnRestartJob,
107 weak_ptr_factory_.GetWeakPtr())); 107 weak_ptr_factory_.GetWeakPtr()));
108 } 108 }
109 109
110 virtual void StartSession(const std::string& user_email) OVERRIDE { 110 virtual void StartSession(const std::string& user_email) override {
111 dbus::MethodCall method_call(login_manager::kSessionManagerInterface, 111 dbus::MethodCall method_call(login_manager::kSessionManagerInterface,
112 login_manager::kSessionManagerStartSession); 112 login_manager::kSessionManagerStartSession);
113 dbus::MessageWriter writer(&method_call); 113 dbus::MessageWriter writer(&method_call);
114 writer.AppendString(user_email); 114 writer.AppendString(user_email);
115 writer.AppendString(""); // Unique ID is deprecated 115 writer.AppendString(""); // Unique ID is deprecated
116 session_manager_proxy_->CallMethod( 116 session_manager_proxy_->CallMethod(
117 &method_call, 117 &method_call,
118 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 118 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
119 base::Bind(&SessionManagerClientImpl::OnStartSession, 119 base::Bind(&SessionManagerClientImpl::OnStartSession,
120 weak_ptr_factory_.GetWeakPtr())); 120 weak_ptr_factory_.GetWeakPtr()));
121 } 121 }
122 122
123 virtual void StopSession() OVERRIDE { 123 virtual void StopSession() override {
124 dbus::MethodCall method_call(login_manager::kSessionManagerInterface, 124 dbus::MethodCall method_call(login_manager::kSessionManagerInterface,
125 login_manager::kSessionManagerStopSession); 125 login_manager::kSessionManagerStopSession);
126 dbus::MessageWriter writer(&method_call); 126 dbus::MessageWriter writer(&method_call);
127 writer.AppendString(""); // Unique ID is deprecated 127 writer.AppendString(""); // Unique ID is deprecated
128 session_manager_proxy_->CallMethod( 128 session_manager_proxy_->CallMethod(
129 &method_call, 129 &method_call,
130 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 130 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
131 base::Bind(&SessionManagerClientImpl::OnStopSession, 131 base::Bind(&SessionManagerClientImpl::OnStopSession,
132 weak_ptr_factory_.GetWeakPtr())); 132 weak_ptr_factory_.GetWeakPtr()));
133 } 133 }
134 134
135 virtual void StartDeviceWipe() OVERRIDE { 135 virtual void StartDeviceWipe() override {
136 dbus::MethodCall method_call(login_manager::kSessionManagerInterface, 136 dbus::MethodCall method_call(login_manager::kSessionManagerInterface,
137 login_manager::kSessionManagerStartDeviceWipe); 137 login_manager::kSessionManagerStartDeviceWipe);
138 session_manager_proxy_->CallMethod( 138 session_manager_proxy_->CallMethod(
139 &method_call, 139 &method_call,
140 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 140 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
141 base::Bind(&SessionManagerClientImpl::OnDeviceWipe, 141 base::Bind(&SessionManagerClientImpl::OnDeviceWipe,
142 weak_ptr_factory_.GetWeakPtr())); 142 weak_ptr_factory_.GetWeakPtr()));
143 } 143 }
144 144
145 virtual void RequestLockScreen() OVERRIDE { 145 virtual void RequestLockScreen() override {
146 SimpleMethodCallToSessionManager(login_manager::kSessionManagerLockScreen); 146 SimpleMethodCallToSessionManager(login_manager::kSessionManagerLockScreen);
147 } 147 }
148 148
149 virtual void NotifyLockScreenShown() OVERRIDE { 149 virtual void NotifyLockScreenShown() override {
150 SimpleMethodCallToSessionManager( 150 SimpleMethodCallToSessionManager(
151 login_manager::kSessionManagerHandleLockScreenShown); 151 login_manager::kSessionManagerHandleLockScreenShown);
152 } 152 }
153 153
154 virtual void NotifyLockScreenDismissed() OVERRIDE { 154 virtual void NotifyLockScreenDismissed() override {
155 SimpleMethodCallToSessionManager( 155 SimpleMethodCallToSessionManager(
156 login_manager::kSessionManagerHandleLockScreenDismissed); 156 login_manager::kSessionManagerHandleLockScreenDismissed);
157 } 157 }
158 158
159 virtual void RetrieveActiveSessions( 159 virtual void RetrieveActiveSessions(
160 const ActiveSessionsCallback& callback) OVERRIDE { 160 const ActiveSessionsCallback& callback) override {
161 dbus::MethodCall method_call( 161 dbus::MethodCall method_call(
162 login_manager::kSessionManagerInterface, 162 login_manager::kSessionManagerInterface,
163 login_manager::kSessionManagerRetrieveActiveSessions); 163 login_manager::kSessionManagerRetrieveActiveSessions);
164 164
165 session_manager_proxy_->CallMethod( 165 session_manager_proxy_->CallMethod(
166 &method_call, 166 &method_call,
167 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 167 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
168 base::Bind(&SessionManagerClientImpl::OnRetrieveActiveSessions, 168 base::Bind(&SessionManagerClientImpl::OnRetrieveActiveSessions,
169 weak_ptr_factory_.GetWeakPtr(), 169 weak_ptr_factory_.GetWeakPtr(),
170 login_manager::kSessionManagerRetrieveActiveSessions, 170 login_manager::kSessionManagerRetrieveActiveSessions,
171 callback)); 171 callback));
172 } 172 }
173 173
174 virtual void RetrieveDevicePolicy( 174 virtual void RetrieveDevicePolicy(
175 const RetrievePolicyCallback& callback) OVERRIDE { 175 const RetrievePolicyCallback& callback) override {
176 dbus::MethodCall method_call(login_manager::kSessionManagerInterface, 176 dbus::MethodCall method_call(login_manager::kSessionManagerInterface,
177 login_manager::kSessionManagerRetrievePolicy); 177 login_manager::kSessionManagerRetrievePolicy);
178 session_manager_proxy_->CallMethod( 178 session_manager_proxy_->CallMethod(
179 &method_call, 179 &method_call,
180 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 180 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
181 base::Bind(&SessionManagerClientImpl::OnRetrievePolicy, 181 base::Bind(&SessionManagerClientImpl::OnRetrievePolicy,
182 weak_ptr_factory_.GetWeakPtr(), 182 weak_ptr_factory_.GetWeakPtr(),
183 login_manager::kSessionManagerRetrievePolicy, 183 login_manager::kSessionManagerRetrievePolicy,
184 callback)); 184 callback));
185 } 185 }
186 186
187 virtual void RetrievePolicyForUser( 187 virtual void RetrievePolicyForUser(
188 const std::string& username, 188 const std::string& username,
189 const RetrievePolicyCallback& callback) OVERRIDE { 189 const RetrievePolicyCallback& callback) override {
190 CallRetrievePolicyByUsername( 190 CallRetrievePolicyByUsername(
191 login_manager::kSessionManagerRetrievePolicyForUser, 191 login_manager::kSessionManagerRetrievePolicyForUser,
192 username, 192 username,
193 callback); 193 callback);
194 } 194 }
195 195
196 virtual std::string BlockingRetrievePolicyForUser( 196 virtual std::string BlockingRetrievePolicyForUser(
197 const std::string& username) OVERRIDE { 197 const std::string& username) override {
198 dbus::MethodCall method_call( 198 dbus::MethodCall method_call(
199 login_manager::kSessionManagerInterface, 199 login_manager::kSessionManagerInterface,
200 login_manager::kSessionManagerRetrievePolicyForUser); 200 login_manager::kSessionManagerRetrievePolicyForUser);
201 dbus::MessageWriter writer(&method_call); 201 dbus::MessageWriter writer(&method_call);
202 writer.AppendString(username); 202 writer.AppendString(username);
203 scoped_ptr<dbus::Response> response = 203 scoped_ptr<dbus::Response> response =
204 blocking_method_caller_->CallMethodAndBlock(&method_call); 204 blocking_method_caller_->CallMethodAndBlock(&method_call);
205 std::string policy; 205 std::string policy;
206 ExtractString(login_manager::kSessionManagerRetrievePolicyForUser, 206 ExtractString(login_manager::kSessionManagerRetrievePolicyForUser,
207 response.get(), 207 response.get(),
208 &policy); 208 &policy);
209 return policy; 209 return policy;
210 } 210 }
211 211
212 virtual void RetrieveDeviceLocalAccountPolicy( 212 virtual void RetrieveDeviceLocalAccountPolicy(
213 const std::string& account_name, 213 const std::string& account_name,
214 const RetrievePolicyCallback& callback) OVERRIDE { 214 const RetrievePolicyCallback& callback) override {
215 CallRetrievePolicyByUsername( 215 CallRetrievePolicyByUsername(
216 login_manager::kSessionManagerRetrieveDeviceLocalAccountPolicy, 216 login_manager::kSessionManagerRetrieveDeviceLocalAccountPolicy,
217 account_name, 217 account_name,
218 callback); 218 callback);
219 } 219 }
220 220
221 virtual void StoreDevicePolicy(const std::string& policy_blob, 221 virtual void StoreDevicePolicy(const std::string& policy_blob,
222 const StorePolicyCallback& callback) OVERRIDE { 222 const StorePolicyCallback& callback) override {
223 dbus::MethodCall method_call(login_manager::kSessionManagerInterface, 223 dbus::MethodCall method_call(login_manager::kSessionManagerInterface,
224 login_manager::kSessionManagerStorePolicy); 224 login_manager::kSessionManagerStorePolicy);
225 dbus::MessageWriter writer(&method_call); 225 dbus::MessageWriter writer(&method_call);
226 // static_cast does not work due to signedness. 226 // static_cast does not work due to signedness.
227 writer.AppendArrayOfBytes( 227 writer.AppendArrayOfBytes(
228 reinterpret_cast<const uint8*>(policy_blob.data()), policy_blob.size()); 228 reinterpret_cast<const uint8*>(policy_blob.data()), policy_blob.size());
229 session_manager_proxy_->CallMethod( 229 session_manager_proxy_->CallMethod(
230 &method_call, 230 &method_call,
231 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 231 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
232 base::Bind(&SessionManagerClientImpl::OnStorePolicy, 232 base::Bind(&SessionManagerClientImpl::OnStorePolicy,
233 weak_ptr_factory_.GetWeakPtr(), 233 weak_ptr_factory_.GetWeakPtr(),
234 login_manager::kSessionManagerStorePolicy, 234 login_manager::kSessionManagerStorePolicy,
235 callback)); 235 callback));
236 } 236 }
237 237
238 virtual void StorePolicyForUser( 238 virtual void StorePolicyForUser(
239 const std::string& username, 239 const std::string& username,
240 const std::string& policy_blob, 240 const std::string& policy_blob,
241 const StorePolicyCallback& callback) OVERRIDE { 241 const StorePolicyCallback& callback) override {
242 CallStorePolicyByUsername(login_manager::kSessionManagerStorePolicyForUser, 242 CallStorePolicyByUsername(login_manager::kSessionManagerStorePolicyForUser,
243 username, 243 username,
244 policy_blob, 244 policy_blob,
245 callback); 245 callback);
246 } 246 }
247 247
248 virtual void StoreDeviceLocalAccountPolicy( 248 virtual void StoreDeviceLocalAccountPolicy(
249 const std::string& account_name, 249 const std::string& account_name,
250 const std::string& policy_blob, 250 const std::string& policy_blob,
251 const StorePolicyCallback& callback) OVERRIDE { 251 const StorePolicyCallback& callback) override {
252 CallStorePolicyByUsername( 252 CallStorePolicyByUsername(
253 login_manager::kSessionManagerStoreDeviceLocalAccountPolicy, 253 login_manager::kSessionManagerStoreDeviceLocalAccountPolicy,
254 account_name, 254 account_name,
255 policy_blob, 255 policy_blob,
256 callback); 256 callback);
257 } 257 }
258 258
259 virtual void SetFlagsForUser(const std::string& username, 259 virtual void SetFlagsForUser(const std::string& username,
260 const std::vector<std::string>& flags) OVERRIDE { 260 const std::vector<std::string>& flags) override {
261 dbus::MethodCall method_call(login_manager::kSessionManagerInterface, 261 dbus::MethodCall method_call(login_manager::kSessionManagerInterface,
262 login_manager::kSessionManagerSetFlagsForUser); 262 login_manager::kSessionManagerSetFlagsForUser);
263 dbus::MessageWriter writer(&method_call); 263 dbus::MessageWriter writer(&method_call);
264 writer.AppendString(username); 264 writer.AppendString(username);
265 writer.AppendArrayOfStrings(flags); 265 writer.AppendArrayOfStrings(flags);
266 session_manager_proxy_->CallMethod( 266 session_manager_proxy_->CallMethod(
267 &method_call, 267 &method_call,
268 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 268 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
269 dbus::ObjectProxy::EmptyResponseCallback()); 269 dbus::ObjectProxy::EmptyResponseCallback());
270 } 270 }
271 271
272 virtual void GetServerBackedStateKeys(const StateKeysCallback& callback) 272 virtual void GetServerBackedStateKeys(const StateKeysCallback& callback)
273 OVERRIDE { 273 override {
274 dbus::MethodCall method_call( 274 dbus::MethodCall method_call(
275 login_manager::kSessionManagerInterface, 275 login_manager::kSessionManagerInterface,
276 login_manager::kSessionManagerGetServerBackedStateKeys); 276 login_manager::kSessionManagerGetServerBackedStateKeys);
277 277
278 session_manager_proxy_->CallMethod( 278 session_manager_proxy_->CallMethod(
279 &method_call, 279 &method_call,
280 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT, 280 dbus::ObjectProxy::TIMEOUT_USE_DEFAULT,
281 base::Bind(&SessionManagerClientImpl::OnGetServerBackedStateKeys, 281 base::Bind(&SessionManagerClientImpl::OnGetServerBackedStateKeys,
282 weak_ptr_factory_.GetWeakPtr(), 282 weak_ptr_factory_.GetWeakPtr(),
283 callback)); 283 callback));
284 } 284 }
285 285
286 protected: 286 protected:
287 virtual void Init(dbus::Bus* bus) OVERRIDE { 287 virtual void Init(dbus::Bus* bus) override {
288 session_manager_proxy_ = bus->GetObjectProxy( 288 session_manager_proxy_ = bus->GetObjectProxy(
289 login_manager::kSessionManagerServiceName, 289 login_manager::kSessionManagerServiceName,
290 dbus::ObjectPath(login_manager::kSessionManagerServicePath)); 290 dbus::ObjectPath(login_manager::kSessionManagerServicePath));
291 blocking_method_caller_.reset( 291 blocking_method_caller_.reset(
292 new BlockingMethodCaller(bus, session_manager_proxy_)); 292 new BlockingMethodCaller(bus, session_manager_proxy_));
293 293
294 // Signals emitted on the session manager's interface. 294 // Signals emitted on the session manager's interface.
295 session_manager_proxy_->ConnectToSignal( 295 session_manager_proxy_->ConnectToSignal(
296 login_manager::kSessionManagerInterface, 296 login_manager::kSessionManagerInterface,
297 login_manager::kOwnerKeySetSignal, 297 login_manager::kOwnerKeySetSignal,
(...skipping 273 matching lines...) Expand 10 before | Expand all | Expand 10 after
571 }; 571 };
572 572
573 // The SessionManagerClient implementation used on Linux desktop, 573 // The SessionManagerClient implementation used on Linux desktop,
574 // which does nothing. 574 // which does nothing.
575 class SessionManagerClientStubImpl : public SessionManagerClient { 575 class SessionManagerClientStubImpl : public SessionManagerClient {
576 public: 576 public:
577 SessionManagerClientStubImpl() : delegate_(NULL) {} 577 SessionManagerClientStubImpl() : delegate_(NULL) {}
578 virtual ~SessionManagerClientStubImpl() {} 578 virtual ~SessionManagerClientStubImpl() {}
579 579
580 // SessionManagerClient overrides 580 // SessionManagerClient overrides
581 virtual void Init(dbus::Bus* bus) OVERRIDE {} 581 virtual void Init(dbus::Bus* bus) override {}
582 virtual void SetStubDelegate(StubDelegate* delegate) OVERRIDE { 582 virtual void SetStubDelegate(StubDelegate* delegate) override {
583 delegate_ = delegate; 583 delegate_ = delegate;
584 } 584 }
585 virtual void AddObserver(Observer* observer) OVERRIDE { 585 virtual void AddObserver(Observer* observer) override {
586 observers_.AddObserver(observer); 586 observers_.AddObserver(observer);
587 } 587 }
588 virtual void RemoveObserver(Observer* observer) OVERRIDE { 588 virtual void RemoveObserver(Observer* observer) override {
589 observers_.RemoveObserver(observer); 589 observers_.RemoveObserver(observer);
590 } 590 }
591 virtual bool HasObserver(Observer* observer) OVERRIDE { 591 virtual bool HasObserver(Observer* observer) override {
592 return observers_.HasObserver(observer); 592 return observers_.HasObserver(observer);
593 } 593 }
594 virtual void EmitLoginPromptVisible() OVERRIDE {} 594 virtual void EmitLoginPromptVisible() override {}
595 virtual void RestartJob(int pid, const std::string& command_line) OVERRIDE {} 595 virtual void RestartJob(int pid, const std::string& command_line) override {}
596 virtual void StartSession(const std::string& user_email) OVERRIDE {} 596 virtual void StartSession(const std::string& user_email) override {}
597 virtual void StopSession() OVERRIDE {} 597 virtual void StopSession() override {}
598 virtual void StartDeviceWipe() OVERRIDE {} 598 virtual void StartDeviceWipe() override {}
599 virtual void RequestLockScreen() OVERRIDE { 599 virtual void RequestLockScreen() override {
600 if (delegate_) 600 if (delegate_)
601 delegate_->LockScreenForStub(); 601 delegate_->LockScreenForStub();
602 } 602 }
603 virtual void NotifyLockScreenShown() OVERRIDE { 603 virtual void NotifyLockScreenShown() override {
604 FOR_EACH_OBSERVER(Observer, observers_, ScreenIsLocked()); 604 FOR_EACH_OBSERVER(Observer, observers_, ScreenIsLocked());
605 } 605 }
606 virtual void NotifyLockScreenDismissed() OVERRIDE { 606 virtual void NotifyLockScreenDismissed() override {
607 FOR_EACH_OBSERVER(Observer, observers_, ScreenIsUnlocked()); 607 FOR_EACH_OBSERVER(Observer, observers_, ScreenIsUnlocked());
608 } 608 }
609 virtual void RetrieveActiveSessions( 609 virtual void RetrieveActiveSessions(
610 const ActiveSessionsCallback& callback) OVERRIDE {} 610 const ActiveSessionsCallback& callback) override {}
611 virtual void RetrieveDevicePolicy( 611 virtual void RetrieveDevicePolicy(
612 const RetrievePolicyCallback& callback) OVERRIDE { 612 const RetrievePolicyCallback& callback) override {
613 base::FilePath owner_key_path; 613 base::FilePath owner_key_path;
614 if (!PathService::Get(chromeos::FILE_OWNER_KEY, &owner_key_path)) { 614 if (!PathService::Get(chromeos::FILE_OWNER_KEY, &owner_key_path)) {
615 callback.Run(""); 615 callback.Run("");
616 return; 616 return;
617 } 617 }
618 base::FilePath device_policy_path = 618 base::FilePath device_policy_path =
619 owner_key_path.DirName().AppendASCII("stub_device_policy"); 619 owner_key_path.DirName().AppendASCII("stub_device_policy");
620 base::PostTaskAndReplyWithResult( 620 base::PostTaskAndReplyWithResult(
621 base::WorkerPool::GetTaskRunner(false).get(), 621 base::WorkerPool::GetTaskRunner(false).get(),
622 FROM_HERE, 622 FROM_HERE,
623 base::Bind(&GetFileContent, device_policy_path), 623 base::Bind(&GetFileContent, device_policy_path),
624 callback); 624 callback);
625 } 625 }
626 virtual void RetrievePolicyForUser( 626 virtual void RetrievePolicyForUser(
627 const std::string& username, 627 const std::string& username,
628 const RetrievePolicyCallback& callback) OVERRIDE { 628 const RetrievePolicyCallback& callback) override {
629 base::PostTaskAndReplyWithResult( 629 base::PostTaskAndReplyWithResult(
630 base::WorkerPool::GetTaskRunner(false).get(), 630 base::WorkerPool::GetTaskRunner(false).get(),
631 FROM_HERE, 631 FROM_HERE,
632 base::Bind(&GetFileContent, GetUserFilePath(username, "stub_policy")), 632 base::Bind(&GetFileContent, GetUserFilePath(username, "stub_policy")),
633 callback); 633 callback);
634 } 634 }
635 virtual std::string BlockingRetrievePolicyForUser( 635 virtual std::string BlockingRetrievePolicyForUser(
636 const std::string& username) OVERRIDE { 636 const std::string& username) override {
637 return GetFileContent(GetUserFilePath(username, "stub_policy")); 637 return GetFileContent(GetUserFilePath(username, "stub_policy"));
638 } 638 }
639 virtual void RetrieveDeviceLocalAccountPolicy( 639 virtual void RetrieveDeviceLocalAccountPolicy(
640 const std::string& account_name, 640 const std::string& account_name,
641 const RetrievePolicyCallback& callback) OVERRIDE { 641 const RetrievePolicyCallback& callback) override {
642 RetrievePolicyForUser(account_name, callback); 642 RetrievePolicyForUser(account_name, callback);
643 } 643 }
644 virtual void StoreDevicePolicy(const std::string& policy_blob, 644 virtual void StoreDevicePolicy(const std::string& policy_blob,
645 const StorePolicyCallback& callback) OVERRIDE { 645 const StorePolicyCallback& callback) override {
646 enterprise_management::PolicyFetchResponse response; 646 enterprise_management::PolicyFetchResponse response;
647 base::FilePath owner_key_path; 647 base::FilePath owner_key_path;
648 if (!response.ParseFromString(policy_blob) || 648 if (!response.ParseFromString(policy_blob) ||
649 !PathService::Get(chromeos::FILE_OWNER_KEY, &owner_key_path)) { 649 !PathService::Get(chromeos::FILE_OWNER_KEY, &owner_key_path)) {
650 callback.Run(false); 650 callback.Run(false);
651 return; 651 return;
652 } 652 }
653 653
654 if (response.has_new_public_key()) { 654 if (response.has_new_public_key()) {
655 base::WorkerPool::PostTask( 655 base::WorkerPool::PostTask(
(...skipping 11 matching lines...) Expand all
667 owner_key_path.DirName().AppendASCII("stub_device_policy"); 667 owner_key_path.DirName().AppendASCII("stub_device_policy");
668 base::WorkerPool::PostTaskAndReply( 668 base::WorkerPool::PostTaskAndReply(
669 FROM_HERE, 669 FROM_HERE,
670 base::Bind(&StoreFile, device_policy_path, policy_blob), 670 base::Bind(&StoreFile, device_policy_path, policy_blob),
671 base::Bind(callback, true), 671 base::Bind(callback, true),
672 false); 672 false);
673 } 673 }
674 virtual void StorePolicyForUser( 674 virtual void StorePolicyForUser(
675 const std::string& username, 675 const std::string& username,
676 const std::string& policy_blob, 676 const std::string& policy_blob,
677 const StorePolicyCallback& callback) OVERRIDE { 677 const StorePolicyCallback& callback) override {
678 // The session manager writes the user policy key to a well-known 678 // The session manager writes the user policy key to a well-known
679 // location. Do the same with the stub impl, so that user policy works and 679 // location. Do the same with the stub impl, so that user policy works and
680 // can be tested on desktop builds. 680 // can be tested on desktop builds.
681 enterprise_management::PolicyFetchResponse response; 681 enterprise_management::PolicyFetchResponse response;
682 if (!response.ParseFromString(policy_blob)) { 682 if (!response.ParseFromString(policy_blob)) {
683 callback.Run(false); 683 callback.Run(false);
684 return; 684 return;
685 } 685 }
686 686
687 if (response.has_new_public_key()) { 687 if (response.has_new_public_key()) {
688 base::FilePath key_path = GetUserFilePath(username, "policy.pub"); 688 base::FilePath key_path = GetUserFilePath(username, "policy.pub");
689 base::WorkerPool::PostTask( 689 base::WorkerPool::PostTask(
690 FROM_HERE, 690 FROM_HERE,
691 base::Bind(&StoreFile, key_path, response.new_public_key()), 691 base::Bind(&StoreFile, key_path, response.new_public_key()),
692 false); 692 false);
693 } 693 }
694 694
695 // This file isn't read directly by Chrome, but is used by this class to 695 // This file isn't read directly by Chrome, but is used by this class to
696 // reload the user policy across restarts. 696 // reload the user policy across restarts.
697 base::FilePath stub_policy_path = GetUserFilePath(username, "stub_policy"); 697 base::FilePath stub_policy_path = GetUserFilePath(username, "stub_policy");
698 base::WorkerPool::PostTaskAndReply( 698 base::WorkerPool::PostTaskAndReply(
699 FROM_HERE, 699 FROM_HERE,
700 base::Bind(&StoreFile, stub_policy_path, policy_blob), 700 base::Bind(&StoreFile, stub_policy_path, policy_blob),
701 base::Bind(callback, true), 701 base::Bind(callback, true),
702 false); 702 false);
703 } 703 }
704 virtual void StoreDeviceLocalAccountPolicy( 704 virtual void StoreDeviceLocalAccountPolicy(
705 const std::string& account_name, 705 const std::string& account_name,
706 const std::string& policy_blob, 706 const std::string& policy_blob,
707 const StorePolicyCallback& callback) OVERRIDE { 707 const StorePolicyCallback& callback) override {
708 StorePolicyForUser(account_name, policy_blob, callback); 708 StorePolicyForUser(account_name, policy_blob, callback);
709 } 709 }
710 virtual void SetFlagsForUser(const std::string& username, 710 virtual void SetFlagsForUser(const std::string& username,
711 const std::vector<std::string>& flags) OVERRIDE { 711 const std::vector<std::string>& flags) override {
712 } 712 }
713 713
714 virtual void GetServerBackedStateKeys(const StateKeysCallback& callback) 714 virtual void GetServerBackedStateKeys(const StateKeysCallback& callback)
715 OVERRIDE { 715 override {
716 std::vector<std::string> state_keys; 716 std::vector<std::string> state_keys;
717 for (int i = 0; i < 5; ++i) 717 for (int i = 0; i < 5; ++i)
718 state_keys.push_back(crypto::SHA256HashString(base::IntToString(i))); 718 state_keys.push_back(crypto::SHA256HashString(base::IntToString(i)));
719 719
720 if (!callback.is_null()) 720 if (!callback.is_null())
721 callback.Run(state_keys, false); 721 callback.Run(state_keys, false);
722 } 722 }
723 723
724 private: 724 private:
725 StubDelegate* delegate_; // Weak pointer; may be NULL. 725 StubDelegate* delegate_; // Weak pointer; may be NULL.
(...skipping 11 matching lines...) Expand all
737 737
738 SessionManagerClient* SessionManagerClient::Create( 738 SessionManagerClient* SessionManagerClient::Create(
739 DBusClientImplementationType type) { 739 DBusClientImplementationType type) {
740 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION) 740 if (type == REAL_DBUS_CLIENT_IMPLEMENTATION)
741 return new SessionManagerClientImpl(); 741 return new SessionManagerClientImpl();
742 DCHECK_EQ(STUB_DBUS_CLIENT_IMPLEMENTATION, type); 742 DCHECK_EQ(STUB_DBUS_CLIENT_IMPLEMENTATION, type);
743 return new SessionManagerClientStubImpl(); 743 return new SessionManagerClientStubImpl();
744 } 744 }
745 745
746 } // namespace chromeos 746 } // namespace chromeos
OLDNEW
« no previous file with comments | « chromeos/dbus/power_policy_controller_unittest.cc ('k') | chromeos/dbus/shill_client_unittest_base.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698