OLD | NEW |
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 #ifndef CHROMEOS_DBUS_SESSION_MANAGER_CLIENT_H_ | 5 #ifndef CHROMEOS_DBUS_SESSION_MANAGER_CLIENT_H_ |
6 #define CHROMEOS_DBUS_SESSION_MANAGER_CLIENT_H_ | 6 #define CHROMEOS_DBUS_SESSION_MANAGER_CLIENT_H_ |
7 | 7 |
8 #include <map> | 8 #include <map> |
9 #include <string> | 9 #include <string> |
10 #include <vector> | 10 #include <vector> |
(...skipping 230 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
241 // reached). | 241 // reached). |
242 virtual void StopArcInstance(const ArcCallback& callback) = 0; | 242 virtual void StopArcInstance(const ArcCallback& callback) = 0; |
243 | 243 |
244 // Prioritizes the ARC instance by removing cgroups restrictions that | 244 // Prioritizes the ARC instance by removing cgroups restrictions that |
245 // session_manager applies to the instance by default. Upon completion, | 245 // session_manager applies to the instance by default. Upon completion, |
246 // invokes |callback| with the result; true on success, false on failure. | 246 // invokes |callback| with the result; true on success, false on failure. |
247 // Calling this multiple times is okay. Such calls except the first one | 247 // Calling this multiple times is okay. Such calls except the first one |
248 // will be ignored. | 248 // will be ignored. |
249 virtual void PrioritizeArcInstance(const ArcCallback& callback) = 0; | 249 virtual void PrioritizeArcInstance(const ArcCallback& callback) = 0; |
250 | 250 |
| 251 // Emits the "arc-booted" upstart signal. |
| 252 virtual void EmitArcBooted() = 0; |
| 253 |
251 // Asynchronously retrieves the timestamp which ARC instance is invoked or | 254 // Asynchronously retrieves the timestamp which ARC instance is invoked or |
252 // returns false if there is no ARC instance or ARC is not available. | 255 // returns false if there is no ARC instance or ARC is not available. |
253 virtual void GetArcStartTime(const GetArcStartTimeCallback& callback) = 0; | 256 virtual void GetArcStartTime(const GetArcStartTimeCallback& callback) = 0; |
254 | 257 |
255 // Asynchronously removes all ARC user data for the user whose cryptohome is | 258 // Asynchronously removes all ARC user data for the user whose cryptohome is |
256 // located by |cryptohome_id|. Upon completion, invokes |callback| with the | 259 // located by |cryptohome_id|. Upon completion, invokes |callback| with the |
257 // result; true on success, false on failure (either session manager failed | 260 // result; true on success, false on failure (either session manager failed |
258 // to remove user data or session manager can not be reached). | 261 // to remove user data or session manager can not be reached). |
259 virtual void RemoveArcData(const cryptohome::Identification& cryptohome_id, | 262 virtual void RemoveArcData(const cryptohome::Identification& cryptohome_id, |
260 const ArcCallback& callback) = 0; | 263 const ArcCallback& callback) = 0; |
261 | 264 |
262 // Creates the instance. | 265 // Creates the instance. |
263 static SessionManagerClient* Create(DBusClientImplementationType type); | 266 static SessionManagerClient* Create(DBusClientImplementationType type); |
264 | 267 |
265 ~SessionManagerClient() override; | 268 ~SessionManagerClient() override; |
266 | 269 |
267 protected: | 270 protected: |
268 // Create() should be used instead. | 271 // Create() should be used instead. |
269 SessionManagerClient(); | 272 SessionManagerClient(); |
270 | 273 |
271 private: | 274 private: |
272 DISALLOW_COPY_AND_ASSIGN(SessionManagerClient); | 275 DISALLOW_COPY_AND_ASSIGN(SessionManagerClient); |
273 }; | 276 }; |
274 | 277 |
275 } // namespace chromeos | 278 } // namespace chromeos |
276 | 279 |
277 #endif // CHROMEOS_DBUS_SESSION_MANAGER_CLIENT_H_ | 280 #endif // CHROMEOS_DBUS_SESSION_MANAGER_CLIENT_H_ |
OLD | NEW |