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 // This class keeps track of the currently-active profiles in the runtime. | 5 // This class keeps track of the currently-active profiles in the runtime. |
6 | 6 |
7 #ifndef CHROME_BROWSER_PROFILES_PROFILE_MANAGER_H_ | 7 #ifndef CHROME_BROWSER_PROFILES_PROFILE_MANAGER_H_ |
8 #define CHROME_BROWSER_PROFILES_PROFILE_MANAGER_H_ | 8 #define CHROME_BROWSER_PROFILES_PROFILE_MANAGER_H_ |
9 | 9 |
10 #include <list> | 10 #include <list> |
(...skipping 124 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
135 const base::string16& icon_url, | 135 const base::string16& icon_url, |
136 const CreateCallback& callback, | 136 const CreateCallback& callback, |
137 const std::string& supervised_user_id); | 137 const std::string& supervised_user_id); |
138 | 138 |
139 // Returns the full path to be used for guest profiles. | 139 // Returns the full path to be used for guest profiles. |
140 static base::FilePath GetGuestProfilePath(); | 140 static base::FilePath GetGuestProfilePath(); |
141 | 141 |
142 // Returns the full path to be used for system profiles. | 142 // Returns the full path to be used for system profiles. |
143 static base::FilePath GetSystemProfilePath(); | 143 static base::FilePath GetSystemProfilePath(); |
144 | 144 |
| 145 // Deletes the Profile from memory, removes it from the ProfileInfoCache and |
| 146 // from the ProfileManager. |
| 147 // DANGER: Only call this for a Guest Profile. Anything else will likely |
| 148 // explode and lead to insanity. |
| 149 // Exercise for the reader: Solve insanity. |
| 150 void DeleteProfile(Profile* profile); |
| 151 |
145 // Get the path of the next profile directory and increment the internal | 152 // Get the path of the next profile directory and increment the internal |
146 // count. | 153 // count. |
147 // Lack of side effects: | 154 // Lack of side effects: |
148 // This function doesn't actually create the directory or touch the file | 155 // This function doesn't actually create the directory or touch the file |
149 // system. | 156 // system. |
150 base::FilePath GenerateNextProfileDirectoryPath(); | 157 base::FilePath GenerateNextProfileDirectoryPath(); |
151 | 158 |
152 // Returns a ProfileInfoCache object which can be used to get information | 159 // Returns a ProfileInfoCache object which can be used to get information |
153 // about profiles without having to load them from disk. | 160 // about profiles without having to load them from disk. |
154 ProfileInfoCache& GetProfileInfoCache(); | 161 ProfileInfoCache& GetProfileInfoCache(); |
(...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
360 class ProfileManagerWithoutInit : public ProfileManager { | 367 class ProfileManagerWithoutInit : public ProfileManager { |
361 public: | 368 public: |
362 explicit ProfileManagerWithoutInit(const base::FilePath& user_data_dir); | 369 explicit ProfileManagerWithoutInit(const base::FilePath& user_data_dir); |
363 | 370 |
364 protected: | 371 protected: |
365 void DoFinalInitForServices(Profile*, bool) override {} | 372 void DoFinalInitForServices(Profile*, bool) override {} |
366 void DoFinalInitLogging(Profile*) override {} | 373 void DoFinalInitLogging(Profile*) override {} |
367 }; | 374 }; |
368 | 375 |
369 #endif // CHROME_BROWSER_PROFILES_PROFILE_MANAGER_H_ | 376 #endif // CHROME_BROWSER_PROFILES_PROFILE_MANAGER_H_ |
OLD | NEW |