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

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

Issue 8258018: Generate Chrome policy definition list from policy_templates.json. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fix the unittest fix Created 9 years, 2 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 (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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_pref_store.h" 5 #include "chrome/browser/policy/configuration_policy_pref_store.h"
6 6
7 #include <map> 7 #include <map>
8 #include <string> 8 #include <string>
9 #include <vector> 9 #include <vector>
10 10
(...skipping 1026 matching lines...) Expand 10 before | Expand all | Expand 10 after
1037 } 1037 }
1038 1038
1039 // static 1039 // static
1040 ConfigurationPolicyPrefStore* 1040 ConfigurationPolicyPrefStore*
1041 ConfigurationPolicyPrefStore::CreateRecommendedCloudPolicyPrefStore() { 1041 ConfigurationPolicyPrefStore::CreateRecommendedCloudPolicyPrefStore() {
1042 return new ConfigurationPolicyPrefStore( 1042 return new ConfigurationPolicyPrefStore(
1043 g_browser_process->browser_policy_connector()-> 1043 g_browser_process->browser_policy_connector()->
1044 GetRecommendedCloudProvider()); 1044 GetRecommendedCloudProvider());
1045 } 1045 }
1046 1046
1047 /* static */
1048 const ConfigurationPolicyProvider::PolicyDefinitionList*
1049 ConfigurationPolicyPrefStore::GetChromePolicyDefinitionList() {
1050 static ConfigurationPolicyProvider::PolicyDefinitionList::Entry entries[] = {
1051 { kPolicyHomepageLocation, Value::TYPE_STRING, key::kHomepageLocation },
1052 { kPolicyHomepageIsNewTabPage, Value::TYPE_BOOLEAN,
1053 key::kHomepageIsNewTabPage },
1054 { kPolicyRestoreOnStartup, Value::TYPE_INTEGER, key::kRestoreOnStartup },
1055 { kPolicyRestoreOnStartupURLs, Value::TYPE_LIST,
1056 key::kRestoreOnStartupURLs },
1057 { kPolicyDefaultSearchProviderEnabled, Value::TYPE_BOOLEAN,
1058 key::kDefaultSearchProviderEnabled },
1059 { kPolicyDefaultSearchProviderName, Value::TYPE_STRING,
1060 key::kDefaultSearchProviderName },
1061 { kPolicyDefaultSearchProviderKeyword, Value::TYPE_STRING,
1062 key::kDefaultSearchProviderKeyword },
1063 { kPolicyDefaultSearchProviderSearchURL, Value::TYPE_STRING,
1064 key::kDefaultSearchProviderSearchURL },
1065 { kPolicyDefaultSearchProviderSuggestURL, Value::TYPE_STRING,
1066 key::kDefaultSearchProviderSuggestURL },
1067 { kPolicyDefaultSearchProviderInstantURL, Value::TYPE_STRING,
1068 key::kDefaultSearchProviderInstantURL },
1069 { kPolicyDefaultSearchProviderIconURL, Value::TYPE_STRING,
1070 key::kDefaultSearchProviderIconURL },
1071 { kPolicyDefaultSearchProviderEncodings, Value::TYPE_LIST,
1072 key::kDefaultSearchProviderEncodings },
1073 { kPolicyProxyMode, Value::TYPE_STRING, key::kProxyMode },
1074 { kPolicyProxyServerMode, Value::TYPE_INTEGER, key::kProxyServerMode },
1075 { kPolicyProxyServer, Value::TYPE_STRING, key::kProxyServer },
1076 { kPolicyProxyPacUrl, Value::TYPE_STRING, key::kProxyPacUrl },
1077 { kPolicyProxyBypassList, Value::TYPE_STRING, key::kProxyBypassList },
1078 { kPolicyAlternateErrorPagesEnabled, Value::TYPE_BOOLEAN,
1079 key::kAlternateErrorPagesEnabled },
1080 { kPolicySearchSuggestEnabled, Value::TYPE_BOOLEAN,
1081 key::kSearchSuggestEnabled },
1082 { kPolicyDnsPrefetchingEnabled, Value::TYPE_BOOLEAN,
1083 key::kDnsPrefetchingEnabled },
1084 { kPolicyDisableSpdy, Value::TYPE_BOOLEAN, key::kDisableSpdy },
1085 { kPolicyDisabledSchemes, Value::TYPE_LIST, key::kDisabledSchemes },
1086 { kPolicySafeBrowsingEnabled, Value::TYPE_BOOLEAN,
1087 key::kSafeBrowsingEnabled },
1088 { kPolicyMetricsReportingEnabled, Value::TYPE_BOOLEAN,
1089 key::kMetricsReportingEnabled },
1090 { kPolicyPasswordManagerEnabled, Value::TYPE_BOOLEAN,
1091 key::kPasswordManagerEnabled },
1092 { kPolicyPasswordManagerAllowShowPasswords, Value::TYPE_BOOLEAN,
1093 key::kPasswordManagerAllowShowPasswords },
1094 { kPolicyAutoFillEnabled, Value::TYPE_BOOLEAN, key::kAutoFillEnabled },
1095 { kPolicyDisabledPlugins, Value::TYPE_LIST, key::kDisabledPlugins },
1096 { kPolicyDisabledPluginsExceptions, Value::TYPE_LIST,
1097 key::kDisabledPluginsExceptions },
1098 { kPolicyEnabledPlugins, Value::TYPE_LIST, key::kEnabledPlugins },
1099 { kPolicyApplicationLocaleValue, Value::TYPE_STRING,
1100 key::kApplicationLocaleValue },
1101 { kPolicySyncDisabled, Value::TYPE_BOOLEAN, key::kSyncDisabled },
1102 { kPolicyExtensionInstallWhitelist, Value::TYPE_LIST,
1103 key::kExtensionInstallWhitelist },
1104 { kPolicyExtensionInstallBlacklist, Value::TYPE_LIST,
1105 key::kExtensionInstallBlacklist },
1106 { kPolicyExtensionInstallForcelist, Value::TYPE_LIST,
1107 key::kExtensionInstallForcelist },
1108 { kPolicyShowHomeButton, Value::TYPE_BOOLEAN, key::kShowHomeButton },
1109 { kPolicyPrintingEnabled, Value::TYPE_BOOLEAN, key::kPrintingEnabled },
1110 { kPolicyJavascriptEnabled, Value::TYPE_BOOLEAN, key::kJavascriptEnabled },
1111 { kPolicyIncognitoEnabled, Value::TYPE_BOOLEAN, key::kIncognitoEnabled },
1112 { kPolicyIncognitoModeAvailability, Value::TYPE_INTEGER,
1113 key::kIncognitoModeAvailability },
1114 { kPolicySavingBrowserHistoryDisabled, Value::TYPE_BOOLEAN,
1115 key::kSavingBrowserHistoryDisabled },
1116 { kPolicyClearSiteDataOnExit, Value::TYPE_BOOLEAN,
1117 key::kClearSiteDataOnExit },
1118 { kPolicyDeveloperToolsDisabled, Value::TYPE_BOOLEAN,
1119 key::kDeveloperToolsDisabled },
1120 { kPolicyBlockThirdPartyCookies, Value::TYPE_BOOLEAN,
1121 key::kBlockThirdPartyCookies },
1122 { kPolicyDefaultCookiesSetting, Value::TYPE_INTEGER,
1123 key::kDefaultCookiesSetting },
1124 { kPolicyDefaultImagesSetting, Value::TYPE_INTEGER,
1125 key::kDefaultImagesSetting },
1126 { kPolicyDefaultJavaScriptSetting, Value::TYPE_INTEGER,
1127 key::kDefaultJavaScriptSetting },
1128 { kPolicyDefaultPluginsSetting, Value::TYPE_INTEGER,
1129 key::kDefaultPluginsSetting },
1130 { kPolicyDefaultPopupsSetting, Value::TYPE_INTEGER,
1131 key::kDefaultPopupsSetting },
1132 { kPolicyDefaultNotificationsSetting, Value::TYPE_INTEGER,
1133 key::kDefaultNotificationsSetting },
1134 { kPolicyDefaultGeolocationSetting, Value::TYPE_INTEGER,
1135 key::kDefaultGeolocationSetting },
1136 { kPolicyAutoSelectCertificateForUrls, Value::TYPE_LIST,
1137 key::kAutoSelectCertificateForUrls},
1138 { kPolicyCookiesAllowedForUrls, Value::TYPE_LIST,
1139 key::kCookiesAllowedForUrls },
1140 { kPolicyCookiesBlockedForUrls, Value::TYPE_LIST,
1141 key::kCookiesBlockedForUrls },
1142 { kPolicyCookiesSessionOnlyForUrls, Value::TYPE_LIST,
1143 key::kCookiesSessionOnlyForUrls },
1144 { kPolicyImagesAllowedForUrls, Value::TYPE_LIST,
1145 key::kImagesAllowedForUrls },
1146 { kPolicyImagesBlockedForUrls, Value::TYPE_LIST,
1147 key::kImagesBlockedForUrls },
1148 { kPolicyJavaScriptAllowedForUrls, Value::TYPE_LIST,
1149 key::kJavaScriptAllowedForUrls },
1150 { kPolicyJavaScriptBlockedForUrls, Value::TYPE_LIST,
1151 key::kJavaScriptBlockedForUrls },
1152 { kPolicyPluginsAllowedForUrls, Value::TYPE_LIST,
1153 key::kPluginsAllowedForUrls },
1154 { kPolicyPluginsBlockedForUrls, Value::TYPE_LIST,
1155 key::kPluginsBlockedForUrls },
1156 { kPolicyPopupsAllowedForUrls, Value::TYPE_LIST,
1157 key::kPopupsAllowedForUrls },
1158 { kPolicyPopupsBlockedForUrls, Value::TYPE_LIST,
1159 key::kPopupsBlockedForUrls },
1160 { kPolicyNotificationsAllowedForUrls, Value::TYPE_LIST,
1161 key::kNotificationsAllowedForUrls },
1162 { kPolicyNotificationsBlockedForUrls, Value::TYPE_LIST,
1163 key::kNotificationsBlockedForUrls },
1164 { kPolicyAuthSchemes, Value::TYPE_STRING, key::kAuthSchemes },
1165 { kPolicyDisableAuthNegotiateCnameLookup, Value::TYPE_BOOLEAN,
1166 key::kDisableAuthNegotiateCnameLookup },
1167 { kPolicyEnableAuthNegotiatePort, Value::TYPE_BOOLEAN,
1168 key::kEnableAuthNegotiatePort },
1169 { kPolicyAuthServerWhitelist, Value::TYPE_STRING,
1170 key::kAuthServerWhitelist },
1171 { kPolicyAuthNegotiateDelegateWhitelist, Value::TYPE_STRING,
1172 key::kAuthNegotiateDelegateWhitelist },
1173 { kPolicyGSSAPILibraryName, Value::TYPE_STRING,
1174 key::kGSSAPILibraryName },
1175 { kPolicyAllowCrossOriginAuthPrompt, Value::TYPE_BOOLEAN,
1176 key::kAllowCrossOriginAuthPrompt },
1177 { kPolicyDisable3DAPIs, Value::TYPE_BOOLEAN,
1178 key::kDisable3DAPIs },
1179 { kPolicyDisablePluginFinder, Value::TYPE_BOOLEAN,
1180 key::kDisablePluginFinder },
1181 { kPolicyPolicyRefreshRate, Value::TYPE_INTEGER,
1182 key::kPolicyRefreshRate },
1183 { kPolicyDevicePolicyRefreshRate, Value::TYPE_INTEGER,
1184 key::kDevicePolicyRefreshRate },
1185 { kPolicyInstantEnabled, Value::TYPE_BOOLEAN, key::kInstantEnabled },
1186 { kPolicyDefaultBrowserSettingEnabled, Value::TYPE_BOOLEAN,
1187 key::kDefaultBrowserSettingEnabled },
1188 { kPolicyRemoteAccessClientFirewallTraversal, Value::TYPE_BOOLEAN,
1189 key::kRemoteAccessClientFirewallTraversal },
1190 { kPolicyRemoteAccessHostFirewallTraversal, Value::TYPE_BOOLEAN,
1191 key::kRemoteAccessHostFirewallTraversal },
1192 { kPolicyCloudPrintProxyEnabled, Value::TYPE_BOOLEAN,
1193 key::kCloudPrintProxyEnabled },
1194 { kPolicyDownloadDirectory, Value::TYPE_STRING,
1195 key::kDownloadDirectory },
1196 { kPolicyTranslateEnabled, Value::TYPE_BOOLEAN, key::kTranslateEnabled },
1197 { kPolicyAllowOutdatedPlugins, Value::TYPE_BOOLEAN,
1198 key::kAllowOutdatedPlugins },
1199 { kPolicyAlwaysAuthorizePlugins, Value::TYPE_BOOLEAN,
1200 key::kAlwaysAuthorizePlugins },
1201 { kPolicyBookmarkBarEnabled, Value::TYPE_BOOLEAN,
1202 key::kBookmarkBarEnabled },
1203 { kPolicyEditBookmarksEnabled, Value::TYPE_BOOLEAN,
1204 key::kEditBookmarksEnabled },
1205 { kPolicyAllowFileSelectionDialogs, Value::TYPE_BOOLEAN,
1206 key::kAllowFileSelectionDialogs },
1207 { kPolicyDiskCacheDir, Value::TYPE_STRING,
1208 key::kDiskCacheDir },
1209 { kPolicyImportBookmarks, Value::TYPE_BOOLEAN,
1210 key::kImportBookmarks },
1211 { kPolicyImportHistory, Value::TYPE_BOOLEAN,
1212 key::kImportHistory },
1213 { kPolicyImportHomepage, Value::TYPE_BOOLEAN,
1214 key::kImportHomepage },
1215 { kPolicyImportSearchEngine, Value::TYPE_BOOLEAN,
1216 key::kImportSearchEngine },
1217 { kPolicyImportSavedPasswords, Value::TYPE_BOOLEAN,
1218 key::kImportSavedPasswords },
1219 { kPolicyMaxConnectionsPerProxy, Value::TYPE_INTEGER,
1220 key::kMaxConnectionsPerProxy },
1221 { kPolicyHideWebStorePromo, Value::TYPE_BOOLEAN,
1222 key::kHideWebStorePromo },
1223 { kPolicyURLBlacklist, Value::TYPE_LIST,
1224 key::kURLBlacklist },
1225 { kPolicyURLWhitelist, Value::TYPE_LIST,
1226 key::kURLWhitelist },
1227
1228 #if defined(OS_CHROMEOS)
1229 { kPolicyChromeOsLockOnIdleSuspend, Value::TYPE_BOOLEAN,
1230 key::kChromeOsLockOnIdleSuspend },
1231 { kPolicyChromeOsReleaseChannel, Value::TYPE_STRING,
1232 key::kChromeOsReleaseChannel },
1233 #endif
1234 };
1235
1236 static ConfigurationPolicyProvider::PolicyDefinitionList policy_list = {
1237 entries,
1238 entries + arraysize(entries),
1239 };
1240 return &policy_list;
1241 }
1242
1243 bool 1047 bool
1244 ConfigurationPolicyPrefStore::IsProxyPolicy(ConfigurationPolicyType policy) { 1048 ConfigurationPolicyPrefStore::IsProxyPolicy(ConfigurationPolicyType policy) {
1245 return policy == kPolicyProxyMode || 1049 return policy == kPolicyProxyMode ||
1246 policy == kPolicyProxyServerMode || 1050 policy == kPolicyProxyServerMode ||
1247 policy == kPolicyProxyServer || 1051 policy == kPolicyProxyServer ||
1248 policy == kPolicyProxyPacUrl || 1052 policy == kPolicyProxyPacUrl ||
1249 policy == kPolicyProxyBypassList; 1053 policy == kPolicyProxyBypassList;
1250 } 1054 }
1251 1055
1252 void ConfigurationPolicyPrefStore::Refresh() { 1056 void ConfigurationPolicyPrefStore::Refresh() {
(...skipping 18 matching lines...) Expand all
1271 // Update the initialization flag. 1075 // Update the initialization flag.
1272 if (!initialization_complete_ && 1076 if (!initialization_complete_ &&
1273 provider_->IsInitializationComplete()) { 1077 provider_->IsInitializationComplete()) {
1274 initialization_complete_ = true; 1078 initialization_complete_ = true;
1275 FOR_EACH_OBSERVER(PrefStore::Observer, observers_, 1079 FOR_EACH_OBSERVER(PrefStore::Observer, observers_,
1276 OnInitializationCompleted(true)); 1080 OnInitializationCompleted(true));
1277 } 1081 }
1278 } 1082 }
1279 1083
1280 } // namespace policy 1084 } // namespace policy
OLDNEW
« no previous file with comments | « chrome/browser/policy/configuration_policy_pref_store.h ('k') | chrome/browser/policy/configuration_policy_provider.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698