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

Side by Side Diff: extensions/browser/extension_prefs.cc

Issue 412003003: Additional metrics for disabled extensions and content verification (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: merged latest origin/master 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
« no previous file with comments | « extensions/browser/extension_prefs.h ('k') | extensions/common/extension.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "extensions/browser/extension_prefs.h" 5 #include "extensions/browser/extension_prefs.h"
6 6
7 #include <iterator> 7 #include <iterator>
8 8
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/prefs/pref_notifier.h" 10 #include "base/prefs/pref_notifier.h"
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after
188 // Am installation parameter bundled with an extension. 188 // Am installation parameter bundled with an extension.
189 const char kPrefInstallParam[] = "install_parameter"; 189 const char kPrefInstallParam[] = "install_parameter";
190 190
191 // A list of installed ids and a signature. 191 // A list of installed ids and a signature.
192 const char kInstallSignature[] = "extensions.install_signature"; 192 const char kInstallSignature[] = "extensions.install_signature";
193 193
194 // A boolean preference that indicates whether the extension should not be 194 // A boolean preference that indicates whether the extension should not be
195 // synced. Default value is false. 195 // synced. Default value is false.
196 const char kPrefDoNotSync[] = "do_not_sync"; 196 const char kPrefDoNotSync[] = "do_not_sync";
197 197
198 const char kCorruptedDisableCount[] = "extensions.corrupted_disable_count";
199
198 // Provider of write access to a dictionary storing extension prefs. 200 // Provider of write access to a dictionary storing extension prefs.
199 class ScopedExtensionPrefUpdate : public DictionaryPrefUpdate { 201 class ScopedExtensionPrefUpdate : public DictionaryPrefUpdate {
200 public: 202 public:
201 ScopedExtensionPrefUpdate(PrefService* service, 203 ScopedExtensionPrefUpdate(PrefService* service,
202 const std::string& extension_id) : 204 const std::string& extension_id) :
203 DictionaryPrefUpdate(service, pref_names::kExtensions), 205 DictionaryPrefUpdate(service, pref_names::kExtensions),
204 extension_id_(extension_id) {} 206 extension_id_(extension_id) {}
205 207
206 virtual ~ScopedExtensionPrefUpdate() { 208 virtual ~ScopedExtensionPrefUpdate() {
207 } 209 }
(...skipping 1680 matching lines...) Expand 10 before | Expand all | Expand 10 after
1888 return install_parameter; 1890 return install_parameter;
1889 } 1891 }
1890 1892
1891 void ExtensionPrefs::SetInstallParam(const std::string& extension_id, 1893 void ExtensionPrefs::SetInstallParam(const std::string& extension_id,
1892 const std::string& install_parameter) { 1894 const std::string& install_parameter) {
1893 UpdateExtensionPref(extension_id, 1895 UpdateExtensionPref(extension_id,
1894 kPrefInstallParam, 1896 kPrefInstallParam,
1895 new base::StringValue(install_parameter)); 1897 new base::StringValue(install_parameter));
1896 } 1898 }
1897 1899
1900 int ExtensionPrefs::GetCorruptedDisableCount() {
1901 return prefs_->GetInteger(kCorruptedDisableCount);
1902 }
1903
1904 void ExtensionPrefs::IncrementCorruptedDisableCount() {
1905 int count = prefs_->GetInteger(kCorruptedDisableCount);
1906 prefs_->SetInteger(kCorruptedDisableCount, count + 1);
1907 }
1908
1898 ExtensionPrefs::ExtensionPrefs( 1909 ExtensionPrefs::ExtensionPrefs(
1899 PrefService* prefs, 1910 PrefService* prefs,
1900 const base::FilePath& root_dir, 1911 const base::FilePath& root_dir,
1901 ExtensionPrefValueMap* extension_pref_value_map, 1912 ExtensionPrefValueMap* extension_pref_value_map,
1902 scoped_ptr<AppSorting> app_sorting, 1913 scoped_ptr<AppSorting> app_sorting,
1903 scoped_ptr<TimeProvider> time_provider, 1914 scoped_ptr<TimeProvider> time_provider,
1904 bool extensions_disabled, 1915 bool extensions_disabled,
1905 const std::vector<ExtensionPrefsObserver*>& early_observers) 1916 const std::vector<ExtensionPrefsObserver*>& early_observers)
1906 : prefs_(prefs), 1917 : prefs_(prefs),
1907 install_directory_(root_dir), 1918 install_directory_(root_dir),
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after
1995 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); 2006 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
1996 2007
1997 registry->RegisterListPref(pref_names::kNativeMessagingBlacklist, 2008 registry->RegisterListPref(pref_names::kNativeMessagingBlacklist,
1998 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); 2009 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
1999 registry->RegisterListPref(pref_names::kNativeMessagingWhitelist, 2010 registry->RegisterListPref(pref_names::kNativeMessagingWhitelist,
2000 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); 2011 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
2001 registry->RegisterBooleanPref( 2012 registry->RegisterBooleanPref(
2002 pref_names::kNativeMessagingUserLevelHosts, 2013 pref_names::kNativeMessagingUserLevelHosts,
2003 true, // default value 2014 true, // default value
2004 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF); 2015 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
2016 registry->RegisterIntegerPref(
2017 kCorruptedDisableCount,
2018 0, // default value
2019 user_prefs::PrefRegistrySyncable::UNSYNCABLE_PREF);
2005 } 2020 }
2006 2021
2007 template <class ExtensionIdContainer> 2022 template <class ExtensionIdContainer>
2008 bool ExtensionPrefs::GetUserExtensionPrefIntoContainer( 2023 bool ExtensionPrefs::GetUserExtensionPrefIntoContainer(
2009 const char* pref, 2024 const char* pref,
2010 ExtensionIdContainer* id_container_out) { 2025 ExtensionIdContainer* id_container_out) {
2011 DCHECK(id_container_out->empty()); 2026 DCHECK(id_container_out->empty());
2012 2027
2013 const base::Value* user_pref_value = prefs_->GetUserPrefValue(pref); 2028 const base::Value* user_pref_value = prefs_->GetUserPrefValue(pref);
2014 const base::ListValue* user_pref_as_list; 2029 const base::ListValue* user_pref_as_list;
(...skipping 177 matching lines...) Expand 10 before | Expand all | Expand 10 after
2192 extension_pref_value_map_->RegisterExtension( 2207 extension_pref_value_map_->RegisterExtension(
2193 extension_id, install_time, is_enabled, is_incognito_enabled); 2208 extension_id, install_time, is_enabled, is_incognito_enabled);
2194 2209
2195 FOR_EACH_OBSERVER( 2210 FOR_EACH_OBSERVER(
2196 ExtensionPrefsObserver, 2211 ExtensionPrefsObserver,
2197 observer_list_, 2212 observer_list_,
2198 OnExtensionRegistered(extension_id, install_time, is_enabled)); 2213 OnExtensionRegistered(extension_id, install_time, is_enabled));
2199 } 2214 }
2200 2215
2201 } // namespace extensions 2216 } // namespace extensions
OLDNEW
« no previous file with comments | « extensions/browser/extension_prefs.h ('k') | extensions/common/extension.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698