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

Side by Side Diff: chrome/browser/policy/configuration_policy_handler_list_factory.cc

Issue 197013007: Set drive as the default download folder (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Version 1 Created 6 years, 9 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 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/policy/configuration_policy_handler_list_factory.h" 5 #include "chrome/browser/policy/configuration_policy_handler_list_factory.h"
6 6
7 #include "base/basictypes.h" 7 #include "base/basictypes.h"
8 #include "base/bind.h" 8 #include "base/bind.h"
9 #include "base/memory/scoped_vector.h" 9 #include "base/memory/scoped_vector.h"
10 #include "base/values.h" 10 #include "base/values.h"
11 #include "chrome/browser/net/proxy_policy_handler.h" 11 #include "chrome/browser/net/proxy_policy_handler.h"
12 #include "chrome/browser/profiles/incognito_mode_policy_handler.h" 12 #include "chrome/browser/profiles/incognito_mode_policy_handler.h"
13 #include "chrome/browser/search_engines/default_search_policy_handler.h" 13 #include "chrome/browser/search_engines/default_search_policy_handler.h"
14 #include "chrome/common/pref_names.h" 14 #include "chrome/common/pref_names.h"
15 #include "components/password_manager/core/common/password_manager_pref_names.h" 15 #include "components/password_manager/core/common/password_manager_pref_names.h"
16 #include "components/policy/core/browser/autofill_policy_handler.h" 16 #include "components/policy/core/browser/autofill_policy_handler.h"
17 #include "components/policy/core/browser/configuration_policy_handler.h" 17 #include "components/policy/core/browser/configuration_policy_handler.h"
18 #include "components/policy/core/browser/configuration_policy_handler_list.h" 18 #include "components/policy/core/browser/configuration_policy_handler_list.h"
19 #include "components/policy/core/browser/configuration_policy_handler_parameters .h"
19 #include "components/policy/core/browser/url_blacklist_policy_handler.h" 20 #include "components/policy/core/browser/url_blacklist_policy_handler.h"
20 #include "components/policy/core/common/policy_details.h" 21 #include "components/policy/core/common/policy_details.h"
21 #include "components/policy/core/common/policy_map.h" 22 #include "components/policy/core/common/policy_map.h"
22 #include "components/policy/core/common/policy_pref_names.h" 23 #include "components/policy/core/common/policy_pref_names.h"
23 #include "components/policy/core/common/schema.h" 24 #include "components/policy/core/common/schema.h"
24 #include "components/translate/core/common/translate_pref_names.h" 25 #include "components/translate/core/common/translate_pref_names.h"
25 #include "grit/component_strings.h" 26 #include "grit/component_strings.h"
26 #include "policy/policy_constants.h" 27 #include "policy/policy_constants.h"
27 28
28 #if !defined(OS_IOS) 29 #if !defined(OS_IOS)
29 #include "chrome/browser/extensions/api/messaging/native_messaging_policy_handle r.h" 30 #include "chrome/browser/extensions/api/messaging/native_messaging_policy_handle r.h"
30 #include "chrome/browser/extensions/policy_handlers.h" 31 #include "chrome/browser/extensions/policy_handlers.h"
31 #include "chrome/browser/net/disk_cache_dir_policy_handler.h" 32 #include "chrome/browser/net/disk_cache_dir_policy_handler.h"
32 #include "chrome/browser/policy/file_selection_dialogs_policy_handler.h" 33 #include "chrome/browser/policy/file_selection_dialogs_policy_handler.h"
33 #include "chrome/browser/policy/javascript_policy_handler.h" 34 #include "chrome/browser/policy/javascript_policy_handler.h"
34 #include "chrome/browser/sessions/restore_on_startup_policy_handler.h" 35 #include "chrome/browser/sessions/restore_on_startup_policy_handler.h"
35 #include "chrome/browser/sync/sync_policy_handler.h" 36 #include "chrome/browser/sync/sync_policy_handler.h"
36 #include "extensions/browser/pref_names.h" 37 #include "extensions/browser/pref_names.h"
37 #include "extensions/common/manifest.h" 38 #include "extensions/common/manifest.h"
38 #endif 39 #endif
39 40
40 #if defined(OS_CHROMEOS) 41 #if defined(OS_CHROMEOS)
41 #include "ash/magnifier/magnifier_constants.h" 42 #include "ash/magnifier/magnifier_constants.h"
43 #include "chrome/browser/chromeos/login/user.h"
44 #include "chrome/browser/chromeos/login/user_manager.h"
42 #include "chrome/browser/chromeos/policy/configuration_policy_handler_chromeos.h " 45 #include "chrome/browser/chromeos/policy/configuration_policy_handler_chromeos.h "
43 #include "chromeos/dbus/power_policy_controller.h" 46 #include "chromeos/dbus/power_policy_controller.h"
44 #endif // defined(OS_CHROMEOS) 47 #endif // defined(OS_CHROMEOS)
45 48
46 #if defined(OS_ANDROID) 49 #if defined(OS_ANDROID)
47 #include "chrome/browser/policy/configuration_policy_handler_android.h" 50 #include "chrome/browser/policy/configuration_policy_handler_android.h"
48 #endif // defined(OS_ANDROID) 51 #endif // defined(OS_ANDROID)
49 52
50 #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID) && !defined(OS_IOS) 53 #if !defined(OS_ANDROID) && !defined(OS_IOS)
51 #include "chrome/browser/download/download_dir_policy_handler.h" 54 #include "chrome/browser/download/download_dir_policy_handler.h"
52 #endif 55 #endif
53 56
54 #if !defined(OS_MACOSX) && !defined(OS_IOS) 57 #if !defined(OS_MACOSX) && !defined(OS_IOS)
55 #include "apps/pref_names.h" 58 #include "apps/pref_names.h"
56 #endif 59 #endif
57 60
58 namespace policy { 61 namespace policy {
59 62
60 namespace { 63 namespace {
(...skipping 418 matching lines...) Expand 10 before | Expand all | Expand 10 after
479 { "theme", extensions::Manifest::TYPE_THEME }, 482 { "theme", extensions::Manifest::TYPE_THEME },
480 { "user_script", extensions::Manifest::TYPE_USER_SCRIPT }, 483 { "user_script", extensions::Manifest::TYPE_USER_SCRIPT },
481 { "hosted_app", extensions::Manifest::TYPE_HOSTED_APP }, 484 { "hosted_app", extensions::Manifest::TYPE_HOSTED_APP },
482 { "legacy_packaged_app", extensions::Manifest::TYPE_LEGACY_PACKAGED_APP }, 485 { "legacy_packaged_app", extensions::Manifest::TYPE_LEGACY_PACKAGED_APP },
483 { "platform_app", extensions::Manifest::TYPE_PLATFORM_APP }, 486 { "platform_app", extensions::Manifest::TYPE_PLATFORM_APP },
484 }; 487 };
485 #endif // !defined(OS_IOS) 488 #endif // !defined(OS_IOS)
486 489
487 } // namespace 490 } // namespace
488 491
492 void PopulatePolicyHandlerParameters(PolicyHandlerParameters* parameters) {
493 #if defined(OS_CHROMEOS)
494 if (chromeos::UserManager::IsInitialized()) {
495 const chromeos::User* user = chromeos::UserManager::Get()->GetActiveUser();
496 if (user)
497 parameters->active_username_hash = user->username_hash();
498 }
499 #endif
500 }
501
489 scoped_ptr<ConfigurationPolicyHandlerList> BuildHandlerList( 502 scoped_ptr<ConfigurationPolicyHandlerList> BuildHandlerList(
490 const Schema& chrome_schema) { 503 const Schema& chrome_schema) {
491 scoped_ptr<ConfigurationPolicyHandlerList> handlers( 504 scoped_ptr<ConfigurationPolicyHandlerList> handlers(
492 new ConfigurationPolicyHandlerList(base::Bind(&GetChromePolicyDetails))); 505 new ConfigurationPolicyHandlerList(
506 base::Bind(&PopulatePolicyHandlerParameters),
507 base::Bind(&GetChromePolicyDetails)));
493 for (size_t i = 0; i < arraysize(kSimplePolicyMap); ++i) { 508 for (size_t i = 0; i < arraysize(kSimplePolicyMap); ++i) {
494 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>( 509 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>(
495 new SimplePolicyHandler(kSimplePolicyMap[i].policy_name, 510 new SimplePolicyHandler(kSimplePolicyMap[i].policy_name,
496 kSimplePolicyMap[i].preference_path, 511 kSimplePolicyMap[i].preference_path,
497 kSimplePolicyMap[i].value_type))); 512 kSimplePolicyMap[i].value_type)));
498 } 513 }
499 514
500 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>( 515 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>(
501 new AutofillPolicyHandler())); 516 new AutofillPolicyHandler()));
502 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>( 517 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>(
(...skipping 35 matching lines...) Expand 10 before | Expand all | Expand 10 after
538 new StringToIntEnumListPolicyHandler( 553 new StringToIntEnumListPolicyHandler(
539 key::kExtensionAllowedTypes, 554 key::kExtensionAllowedTypes,
540 extensions::pref_names::kAllowedTypes, 555 extensions::pref_names::kAllowedTypes,
541 kExtensionAllowedTypesMap, 556 kExtensionAllowedTypesMap,
542 kExtensionAllowedTypesMap + arraysize(kExtensionAllowedTypesMap)))); 557 kExtensionAllowedTypesMap + arraysize(kExtensionAllowedTypesMap))));
543 #endif // !defined(OS_IOS) 558 #endif // !defined(OS_IOS)
544 559
545 #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID) && !defined(OS_IOS) 560 #if !defined(OS_CHROMEOS) && !defined(OS_ANDROID) && !defined(OS_IOS)
546 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>( 561 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>(
547 new DiskCacheDirPolicyHandler())); 562 new DiskCacheDirPolicyHandler()));
548 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>(
549 new DownloadDirPolicyHandler));
550 563
551 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>( 564 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>(
552 new extensions::NativeMessagingHostListPolicyHandler( 565 new extensions::NativeMessagingHostListPolicyHandler(
553 key::kNativeMessagingWhitelist, 566 key::kNativeMessagingWhitelist,
554 extensions::pref_names::kNativeMessagingWhitelist, 567 extensions::pref_names::kNativeMessagingWhitelist,
555 false))); 568 false)));
556 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>( 569 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>(
557 new extensions::NativeMessagingHostListPolicyHandler( 570 new extensions::NativeMessagingHostListPolicyHandler(
558 key::kNativeMessagingBlacklist, 571 key::kNativeMessagingBlacklist,
559 extensions::pref_names::kNativeMessagingBlacklist, 572 extensions::pref_names::kNativeMessagingBlacklist,
560 true))); 573 true)));
561 #endif // !defined(OS_CHROMEOS) && !defined(OS_ANDROID) && !defined(OS_IOS) 574 #endif // !defined(OS_CHROMEOS) && !defined(OS_ANDROID) && !defined(OS_IOS)
562 575
576 #if !defined(OS_ANDROID) && !defined(OS_IOS)
577 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>(
578 new DownloadDirPolicyHandler));
579 #endif
580
563 #if defined(OS_CHROMEOS) 581 #if defined(OS_CHROMEOS)
564 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>( 582 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>(
565 new extensions::ExtensionListPolicyHandler( 583 new extensions::ExtensionListPolicyHandler(
566 key::kAttestationExtensionWhitelist, 584 key::kAttestationExtensionWhitelist,
567 prefs::kAttestationExtensionWhitelist, 585 prefs::kAttestationExtensionWhitelist,
568 false))); 586 false)));
569 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>( 587 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>(
570 NetworkConfigurationPolicyHandler::CreateForDevicePolicy())); 588 NetworkConfigurationPolicyHandler::CreateForDevicePolicy()));
571 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>( 589 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>(
572 NetworkConfigurationPolicyHandler::CreateForUserPolicy())); 590 NetworkConfigurationPolicyHandler::CreateForUserPolicy()));
(...skipping 134 matching lines...) Expand 10 before | Expand all | Expand 10 after
707 #endif // defined(OS_CHROMEOS) 725 #endif // defined(OS_CHROMEOS)
708 726
709 #if defined(OS_ANDROID) 727 #if defined(OS_ANDROID)
710 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>( 728 handlers->AddHandler(make_scoped_ptr<ConfigurationPolicyHandler>(
711 new ManagedBookmarksPolicyHandler())); 729 new ManagedBookmarksPolicyHandler()));
712 #endif 730 #endif
713 return handlers.Pass(); 731 return handlers.Pass();
714 } 732 }
715 733
716 } // namespace policy 734 } // namespace policy
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698