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

Side by Side Diff: chrome/browser/chromeos/app_mode/kiosk_app_manager.cc

Issue 386633003: kiosk: Retry failed app data fetch. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: minor tweak to use URLFetcher default behavior rather than set 0 retry Created 6 years, 5 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 | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 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 "chrome/browser/chromeos/app_mode/kiosk_app_manager.h" 5 #include "chrome/browser/chromeos/app_mode/kiosk_app_manager.h"
6 6
7 #include <map> 7 #include <map>
8 #include <set> 8 #include <set>
9 9
10 #include "base/bind.h" 10 #include "base/bind.h"
(...skipping 338 matching lines...) Expand 10 before | Expand all | Expand 10 after
349 const std::string& app_id, 349 const std::string& app_id,
350 Profile* profile, 350 Profile* profile,
351 const extensions::Extension* app) { 351 const extensions::Extension* app) {
352 KioskAppData* app_data = GetAppDataMutable(app_id); 352 KioskAppData* app_data = GetAppDataMutable(app_id);
353 if (!app_data) 353 if (!app_data)
354 return; 354 return;
355 355
356 app_data->LoadFromInstalledApp(profile, app); 356 app_data->LoadFromInstalledApp(profile, app);
357 } 357 }
358 358
359 void KioskAppManager::RetryFailedAppDataFetch() {
360 for (size_t i = 0; i < apps_.size(); ++i) {
361 if (apps_[i]->status() == KioskAppData::STATUS_ERROR)
362 apps_[i]->Load();
363 }
364 }
365
359 void KioskAppManager::AddObserver(KioskAppManagerObserver* observer) { 366 void KioskAppManager::AddObserver(KioskAppManagerObserver* observer) {
360 observers_.AddObserver(observer); 367 observers_.AddObserver(observer);
361 } 368 }
362 369
363 void KioskAppManager::RemoveObserver(KioskAppManagerObserver* observer) { 370 void KioskAppManager::RemoveObserver(KioskAppManagerObserver* observer) {
364 observers_.RemoveObserver(observer); 371 observers_.RemoveObserver(observer);
365 } 372 }
366 373
367 KioskAppManager::KioskAppManager() : ownership_established_(false) { 374 KioskAppManager::KioskAppManager() : ownership_established_(false) {
368 base::FilePath cache_dir; 375 base::FilePath cache_dir;
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
462 STLDeleteValues(&old_apps); 469 STLDeleteValues(&old_apps);
463 external_cache_->RemoveExtensions(apps_to_remove); 470 external_cache_->RemoveExtensions(apps_to_remove);
464 471
465 // Request external_cache_ to download new apps and update the existing 472 // Request external_cache_ to download new apps and update the existing
466 // apps. 473 // apps.
467 scoped_ptr<base::DictionaryValue> prefs(new base::DictionaryValue); 474 scoped_ptr<base::DictionaryValue> prefs(new base::DictionaryValue);
468 for (size_t i = 0; i < apps_.size(); ++i) 475 for (size_t i = 0; i < apps_.size(); ++i)
469 prefs->Set(apps_[i]->app_id(), new base::DictionaryValue); 476 prefs->Set(apps_[i]->app_id(), new base::DictionaryValue);
470 external_cache_->UpdateExtensionsList(prefs.Pass()); 477 external_cache_->UpdateExtensionsList(prefs.Pass());
471 478
479 RetryFailedAppDataFetch();
480
472 FOR_EACH_OBSERVER(KioskAppManagerObserver, observers_, 481 FOR_EACH_OBSERVER(KioskAppManagerObserver, observers_,
473 OnKioskAppsSettingsChanged()); 482 OnKioskAppsSettingsChanged());
474 } 483 }
475 484
476 void KioskAppManager::GetKioskAppIconCacheDir(base::FilePath* cache_dir) { 485 void KioskAppManager::GetKioskAppIconCacheDir(base::FilePath* cache_dir) {
477 base::FilePath user_data_dir; 486 base::FilePath user_data_dir;
478 CHECK(PathService::Get(chrome::DIR_USER_DATA, &user_data_dir)); 487 CHECK(PathService::Get(chrome::DIR_USER_DATA, &user_data_dir));
479 *cache_dir = user_data_dir.AppendASCII(kIconCacheDir); 488 *cache_dir = user_data_dir.AppendASCII(kIconCacheDir);
480 } 489 }
481 490
(...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after
536 *cache_dir = user_data_dir.AppendASCII(kCrxCacheDir); 545 *cache_dir = user_data_dir.AppendASCII(kCrxCacheDir);
537 } 546 }
538 547
539 bool KioskAppManager::GetCachedCrx(const std::string& app_id, 548 bool KioskAppManager::GetCachedCrx(const std::string& app_id,
540 base::FilePath* file_path, 549 base::FilePath* file_path,
541 std::string* version) { 550 std::string* version) {
542 return external_cache_->GetExtension(app_id, file_path, version); 551 return external_cache_->GetExtension(app_id, file_path, version);
543 } 552 }
544 553
545 } // namespace chromeos 554 } // namespace chromeos
OLDNEW
« no previous file with comments | « chrome/browser/chromeos/app_mode/kiosk_app_manager.h ('k') | chrome/browser/extensions/webstore_data_fetcher.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698