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

Side by Side Diff: chrome/browser/chromeos/customization/customization_document.h

Issue 1870793002: Convert //chrome/browser/chromeos from scoped_ptr to std::unique_ptr (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: rebase Created 4 years, 8 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 #ifndef CHROME_BROWSER_CHROMEOS_CUSTOMIZATION_CUSTOMIZATION_DOCUMENT_H_ 5 #ifndef CHROME_BROWSER_CHROMEOS_CUSTOMIZATION_CUSTOMIZATION_DOCUMENT_H_
6 #define CHROME_BROWSER_CHROMEOS_CUSTOMIZATION_CUSTOMIZATION_DOCUMENT_H_ 6 #define CHROME_BROWSER_CHROMEOS_CUSTOMIZATION_CUSTOMIZATION_DOCUMENT_H_
7 7
8 #include <stddef.h> 8 #include <stddef.h>
9 9
10 #include <memory>
10 #include <string> 11 #include <string>
11 #include <vector> 12 #include <vector>
12 13
13 #include "base/compiler_specific.h" 14 #include "base/compiler_specific.h"
14 #include "base/gtest_prod_util.h" 15 #include "base/gtest_prod_util.h"
15 #include "base/macros.h" 16 #include "base/macros.h"
16 #include "base/memory/scoped_ptr.h"
17 #include "base/memory/singleton.h" 17 #include "base/memory/singleton.h"
18 #include "base/memory/weak_ptr.h" 18 #include "base/memory/weak_ptr.h"
19 #include "base/values.h" 19 #include "base/values.h"
20 #include "net/url_request/url_fetcher_delegate.h" 20 #include "net/url_request/url_fetcher_delegate.h"
21 #include "url/gurl.h" 21 #include "url/gurl.h"
22 22
23 class PrefRegistrySimple; 23 class PrefRegistrySimple;
24 class Profile; 24 class Profile;
25 25
26 namespace base { 26 namespace base {
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
62 protected: 62 protected:
63 explicit CustomizationDocument(const std::string& accepted_version); 63 explicit CustomizationDocument(const std::string& accepted_version);
64 64
65 virtual bool LoadManifestFromFile(const base::FilePath& manifest_path); 65 virtual bool LoadManifestFromFile(const base::FilePath& manifest_path);
66 virtual bool LoadManifestFromString(const std::string& manifest); 66 virtual bool LoadManifestFromString(const std::string& manifest);
67 67
68 std::string GetLocaleSpecificString(const std::string& locale, 68 std::string GetLocaleSpecificString(const std::string& locale,
69 const std::string& dictionary_name, 69 const std::string& dictionary_name,
70 const std::string& entry_name) const; 70 const std::string& entry_name) const;
71 71
72 scoped_ptr<base::DictionaryValue> root_; 72 std::unique_ptr<base::DictionaryValue> root_;
73 73
74 // Value of the "version" attribute that is supported. 74 // Value of the "version" attribute that is supported.
75 // Otherwise config is not loaded. 75 // Otherwise config is not loaded.
76 std::string accepted_version_; 76 std::string accepted_version_;
77 77
78 private: 78 private:
79 DISALLOW_COPY_AND_ASSIGN(CustomizationDocument); 79 DISALLOW_COPY_AND_ASSIGN(CustomizationDocument);
80 }; 80 };
81 81
82 // OEM startup customization document class. 82 // OEM startup customization document class.
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
167 167
168 // Apply customization and save in machine options that customization was 168 // Apply customization and save in machine options that customization was
169 // applied successfully. Return true if customization was applied. 169 // applied successfully. Return true if customization was applied.
170 bool ApplyOOBECustomization(); 170 bool ApplyOOBECustomization();
171 171
172 // Returns true if default wallpaper URL attribute found in manifest. 172 // Returns true if default wallpaper URL attribute found in manifest.
173 // |out_url| is set to attribute value. 173 // |out_url| is set to attribute value.
174 bool GetDefaultWallpaperUrl(GURL* out_url) const; 174 bool GetDefaultWallpaperUrl(GURL* out_url) const;
175 175
176 // Returns list of default apps. 176 // Returns list of default apps.
177 scoped_ptr<base::DictionaryValue> GetDefaultApps() const; 177 std::unique_ptr<base::DictionaryValue> GetDefaultApps() const;
178 178
179 // Creates an extensions::ExternalLoader that will provide OEM default apps. 179 // Creates an extensions::ExternalLoader that will provide OEM default apps.
180 // Cache of OEM default apps stored in profile preferences. 180 // Cache of OEM default apps stored in profile preferences.
181 extensions::ExternalLoader* CreateExternalLoader(Profile* profile); 181 extensions::ExternalLoader* CreateExternalLoader(Profile* profile);
182 182
183 // Returns the name of the folder for OEM apps for given |locale|. 183 // Returns the name of the folder for OEM apps for given |locale|.
184 std::string GetOemAppsFolderName(const std::string& locale) const; 184 std::string GetOemAppsFolderName(const std::string& locale) const;
185 185
186 // Initialize instance of ServicesCustomizationDocument for tests that will 186 // Initialize instance of ServicesCustomizationDocument for tests that will
187 // override singleton until ShutdownForTesting is called. 187 // override singleton until ShutdownForTesting is called.
(...skipping 53 matching lines...) Expand 10 before | Expand all | Expand 10 after
241 base::WeakPtr<ServicesCustomizationDocument> self, 241 base::WeakPtr<ServicesCustomizationDocument> self,
242 const base::FilePath& file); 242 const base::FilePath& file);
243 243
244 // Called on UI thread with results of ReadFileInBackground. 244 // Called on UI thread with results of ReadFileInBackground.
245 void OnManifesteRead(const std::string& manifest); 245 void OnManifesteRead(const std::string& manifest);
246 246
247 // Method called when manifest was successfully loaded. 247 // Method called when manifest was successfully loaded.
248 void OnManifestLoaded(); 248 void OnManifestLoaded();
249 249
250 // Returns list of default apps in ExternalProvider format. 250 // Returns list of default apps in ExternalProvider format.
251 static scoped_ptr<base::DictionaryValue> GetDefaultAppsInProviderFormat( 251 static std::unique_ptr<base::DictionaryValue> GetDefaultAppsInProviderFormat(
252 const base::DictionaryValue& root); 252 const base::DictionaryValue& root);
253 253
254 // Update cached manifest for |profile|. 254 // Update cached manifest for |profile|.
255 void UpdateCachedManifest(Profile* profile); 255 void UpdateCachedManifest(Profile* profile);
256 256
257 // Customization document not found for give ID. 257 // Customization document not found for give ID.
258 void OnCustomizationNotFound(); 258 void OnCustomizationNotFound();
259 259
260 // Set OEM apps folder name for AppListSyncableService for |profile|. 260 // Set OEM apps folder name for AppListSyncableService for |profile|.
261 void SetOemFolderName(Profile* profile, const base::DictionaryValue& root); 261 void SetOemFolderName(Profile* profile, const base::DictionaryValue& root);
262 262
263 // Returns the name of the folder for OEM apps for given |locale|. 263 // Returns the name of the folder for OEM apps for given |locale|.
264 std::string GetOemAppsFolderNameImpl( 264 std::string GetOemAppsFolderNameImpl(
265 const std::string& locale, 265 const std::string& locale,
266 const base::DictionaryValue& root) const; 266 const base::DictionaryValue& root) const;
267 267
268 // Start download of wallpaper image if needed. 268 // Start download of wallpaper image if needed.
269 void StartOEMWallpaperDownload(const GURL& wallpaper_url, 269 void StartOEMWallpaperDownload(const GURL& wallpaper_url,
270 scoped_ptr<ApplyingTask> applying); 270 std::unique_ptr<ApplyingTask> applying);
271 271
272 // Check that current customized wallpaper cache exists. Once wallpaper is 272 // Check that current customized wallpaper cache exists. Once wallpaper is
273 // downloaded, it's never updated (even if manifest is re-fetched). 273 // downloaded, it's never updated (even if manifest is re-fetched).
274 // Start wallpaper download if needed. 274 // Start wallpaper download if needed.
275 void CheckAndApplyWallpaper(); 275 void CheckAndApplyWallpaper();
276 276
277 // Intermediate function to pass the result of PathExists to ApplyWallpaper. 277 // Intermediate function to pass the result of PathExists to ApplyWallpaper.
278 void OnCheckedWallpaperCacheExists(scoped_ptr<bool> exists, 278 void OnCheckedWallpaperCacheExists(std::unique_ptr<bool> exists,
279 scoped_ptr<ApplyingTask> applying); 279 std::unique_ptr<ApplyingTask> applying);
280 280
281 // Called after downloaded wallpaper has been checked. 281 // Called after downloaded wallpaper has been checked.
282 void ApplyWallpaper(bool default_wallpaper_file_exists, 282 void ApplyWallpaper(bool default_wallpaper_file_exists,
283 scoped_ptr<ApplyingTask> applying); 283 std::unique_ptr<ApplyingTask> applying);
284 284
285 // Set Shell default wallpaper to customized. 285 // Set Shell default wallpaper to customized.
286 // It's wrapped as a callback and passed as a parameter to 286 // It's wrapped as a callback and passed as a parameter to
287 // CustomizationWallpaperDownloader. 287 // CustomizationWallpaperDownloader.
288 void OnOEMWallpaperDownloaded(scoped_ptr<ApplyingTask> applying, 288 void OnOEMWallpaperDownloaded(std::unique_ptr<ApplyingTask> applying,
289 bool success, 289 bool success,
290 const GURL& wallpaper_url); 290 const GURL& wallpaper_url);
291 291
292 // Register one of Customization applying tasks. 292 // Register one of Customization applying tasks.
293 void ApplyingTaskStarted(); 293 void ApplyingTaskStarted();
294 294
295 // Mark task finished and check for "all customization applied". 295 // Mark task finished and check for "all customization applied".
296 void ApplyingTaskFinished(bool success); 296 void ApplyingTaskFinished(bool success);
297 297
298 // Services customization manifest URL. 298 // Services customization manifest URL.
299 GURL url_; 299 GURL url_;
300 300
301 // URLFetcher instance. 301 // URLFetcher instance.
302 scoped_ptr<net::URLFetcher> url_fetcher_; 302 std::unique_ptr<net::URLFetcher> url_fetcher_;
303 303
304 // How many times we already tried to fetch customization manifest file. 304 // How many times we already tried to fetch customization manifest file.
305 int num_retries_; 305 int num_retries_;
306 306
307 // Manifest fetch is already in progress. 307 // Manifest fetch is already in progress.
308 bool fetch_started_; 308 bool fetch_started_;
309 309
310 // Delay between checks for network online state. 310 // Delay between checks for network online state.
311 base::TimeDelta network_delay_; 311 base::TimeDelta network_delay_;
312 312
313 // Known external loaders. 313 // Known external loaders.
314 ExternalLoaders external_loaders_; 314 ExternalLoaders external_loaders_;
315 315
316 scoped_ptr<CustomizationWallpaperDownloader> wallpaper_downloader_; 316 std::unique_ptr<CustomizationWallpaperDownloader> wallpaper_downloader_;
317 317
318 // This is barrier until customization is applied. 318 // This is barrier until customization is applied.
319 // When number of finished tasks match number of started - customization is 319 // When number of finished tasks match number of started - customization is
320 // applied. 320 // applied.
321 size_t apply_tasks_started_; 321 size_t apply_tasks_started_;
322 size_t apply_tasks_finished_; 322 size_t apply_tasks_finished_;
323 323
324 // This is the number of successfully finished customization tasks. 324 // This is the number of successfully finished customization tasks.
325 // If it matches number of tasks finished - customization is applied 325 // If it matches number of tasks finished - customization is applied
326 // successfully. 326 // successfully.
327 size_t apply_tasks_success_; 327 size_t apply_tasks_success_;
328 328
329 // Weak factory for callbacks. 329 // Weak factory for callbacks.
330 base::WeakPtrFactory<ServicesCustomizationDocument> weak_ptr_factory_; 330 base::WeakPtrFactory<ServicesCustomizationDocument> weak_ptr_factory_;
331 331
332 DISALLOW_COPY_AND_ASSIGN(ServicesCustomizationDocument); 332 DISALLOW_COPY_AND_ASSIGN(ServicesCustomizationDocument);
333 }; 333 };
334 334
335 } // namespace chromeos 335 } // namespace chromeos
336 336
337 #endif // CHROME_BROWSER_CHROMEOS_CUSTOMIZATION_CUSTOMIZATION_DOCUMENT_H_ 337 #endif // CHROME_BROWSER_CHROMEOS_CUSTOMIZATION_CUSTOMIZATION_DOCUMENT_H_
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/chrome_interface_factory.h ('k') | chrome/browser/chromeos/customization/customization_document.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698