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 #include "chrome/browser/extensions/external_provider_impl.h" | 5 #include "chrome/browser/extensions/external_provider_impl.h" |
6 | 6 |
7 #include <set> | 7 #include <set> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/command_line.h" | 10 #include "base/command_line.h" |
(...skipping 473 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
484 crx_location, | 484 crx_location, |
485 Manifest::EXTERNAL_POLICY_DOWNLOAD, | 485 Manifest::EXTERNAL_POLICY_DOWNLOAD, |
486 Extension::NO_FLAGS))); | 486 Extension::NO_FLAGS))); |
487 } | 487 } |
488 | 488 |
489 // Load the KioskAppExternalProvider when running in kiosk mode. | 489 // Load the KioskAppExternalProvider when running in kiosk mode. |
490 if (chrome::IsRunningInForcedAppMode()) { | 490 if (chrome::IsRunningInForcedAppMode()) { |
491 #if defined(OS_CHROMEOS) | 491 #if defined(OS_CHROMEOS) |
492 chromeos::KioskAppManager* kiosk_app_manager = | 492 chromeos::KioskAppManager* kiosk_app_manager = |
493 chromeos::KioskAppManager::Get(); | 493 chromeos::KioskAppManager::Get(); |
494 DCHECK(kiosk_app_manager); | 494 CHECK(kiosk_app_manager); |
495 if (kiosk_app_manager && !kiosk_app_manager->external_loader_created()) { | 495 |
| 496 // Kiosk primary app external provider. |
| 497 if (!kiosk_app_manager->external_loader_created()) { |
496 scoped_ptr<ExternalProviderImpl> kiosk_app_provider( | 498 scoped_ptr<ExternalProviderImpl> kiosk_app_provider( |
497 new ExternalProviderImpl( | 499 new ExternalProviderImpl( |
498 service, kiosk_app_manager->CreateExternalLoader(), profile, | 500 service, kiosk_app_manager->CreateExternalLoader(), profile, |
499 Manifest::EXTERNAL_PREF, Manifest::INVALID_LOCATION, | 501 Manifest::EXTERNAL_PREF, Manifest::INVALID_LOCATION, |
500 Extension::NO_FLAGS)); | 502 Extension::NO_FLAGS)); |
501 kiosk_app_provider->set_auto_acknowledge(true); | 503 kiosk_app_provider->set_auto_acknowledge(true); |
502 kiosk_app_provider->set_install_immediately(true); | 504 kiosk_app_provider->set_install_immediately(true); |
503 provider_list->push_back( | 505 provider_list->push_back( |
504 linked_ptr<ExternalProviderInterface>(kiosk_app_provider.release())); | 506 linked_ptr<ExternalProviderInterface>(kiosk_app_provider.release())); |
505 } | 507 } |
| 508 |
| 509 // Kiosk secondary app external provider. |
| 510 if (!kiosk_app_manager->secondary_app_external_loader_created()) { |
| 511 scoped_ptr<ExternalProviderImpl> secondary_kiosk_app_provider( |
| 512 new ExternalProviderImpl( |
| 513 service, kiosk_app_manager->CreateSecondaryAppExternalLoader(), |
| 514 profile, Manifest::EXTERNAL_PREF, |
| 515 Manifest::EXTERNAL_PREF_DOWNLOAD, Extension::NO_FLAGS)); |
| 516 secondary_kiosk_app_provider->set_auto_acknowledge(true); |
| 517 secondary_kiosk_app_provider->set_install_immediately(true); |
| 518 provider_list->push_back(linked_ptr<ExternalProviderInterface>( |
| 519 secondary_kiosk_app_provider.release())); |
| 520 } |
506 #endif | 521 #endif |
507 return; | 522 return; |
508 } | 523 } |
509 | 524 |
510 // Extensions provided by recommended policies. | 525 // Extensions provided by recommended policies. |
511 if (external_recommended_loader.get()) { | 526 if (external_recommended_loader.get()) { |
512 provider_list->push_back(linked_ptr<ExternalProviderInterface>( | 527 provider_list->push_back(linked_ptr<ExternalProviderInterface>( |
513 new ExternalProviderImpl(service, | 528 new ExternalProviderImpl(service, |
514 external_recommended_loader, | 529 external_recommended_loader, |
515 profile, | 530 profile, |
(...skipping 148 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
664 new ExternalProviderImpl( | 679 new ExternalProviderImpl( |
665 service, | 680 service, |
666 new ExternalComponentLoader(profile), | 681 new ExternalComponentLoader(profile), |
667 profile, | 682 profile, |
668 Manifest::INVALID_LOCATION, | 683 Manifest::INVALID_LOCATION, |
669 Manifest::EXTERNAL_COMPONENT, | 684 Manifest::EXTERNAL_COMPONENT, |
670 Extension::FROM_WEBSTORE | Extension::WAS_INSTALLED_BY_DEFAULT))); | 685 Extension::FROM_WEBSTORE | Extension::WAS_INSTALLED_BY_DEFAULT))); |
671 } | 686 } |
672 | 687 |
673 } // namespace extensions | 688 } // namespace extensions |
OLD | NEW |