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

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

Issue 196663003: Introduce an extension parameter which is used to customize the extension. It's available for exter… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Modified test parameters 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 | Annotate | Revision Log
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 #ifndef EXTENSIONS_BROWSER_EXTENSION_PREFS_H_ 5 #ifndef EXTENSIONS_BROWSER_EXTENSION_PREFS_H_
6 #define EXTENSIONS_BROWSER_EXTENSION_PREFS_H_ 6 #define EXTENSIONS_BROWSER_EXTENSION_PREFS_H_
7 7
8 #include <set> 8 #include <set>
9 #include <string> 9 #include <string>
10 #include <vector> 10 #include <vector>
(...skipping 162 matching lines...) Expand 10 before | Expand all | Expand 10 after
173 // Sets the set of known disabled extension IDs. 173 // Sets the set of known disabled extension IDs.
174 void SetKnownDisabled(const ExtensionIdSet& extension_ids); 174 void SetKnownDisabled(const ExtensionIdSet& extension_ids);
175 175
176 // Called when an extension is installed, so that prefs get created. 176 // Called when an extension is installed, so that prefs get created.
177 // |blacklisted_for_malware| should be set if the extension was included in a 177 // |blacklisted_for_malware| should be set if the extension was included in a
178 // blacklist due to being malware. If |page_ordinal| is an invalid ordinal, 178 // blacklist due to being malware. If |page_ordinal| is an invalid ordinal,
179 // then a page will be found for the App. 179 // then a page will be found for the App.
180 void OnExtensionInstalled(const Extension* extension, 180 void OnExtensionInstalled(const Extension* extension,
181 Extension::State initial_state, 181 Extension::State initial_state,
182 bool blacklisted_for_malware, 182 bool blacklisted_for_malware,
183 const syncer::StringOrdinal& page_ordinal); 183 const syncer::StringOrdinal& page_ordinal,
184 const std::string& install_parameter);
184 185
185 // Called when an extension is uninstalled, so that prefs get cleaned up. 186 // Called when an extension is uninstalled, so that prefs get cleaned up.
186 void OnExtensionUninstalled(const std::string& extension_id, 187 void OnExtensionUninstalled(const std::string& extension_id,
187 const Manifest::Location& location, 188 const Manifest::Location& location,
188 bool external_uninstall); 189 bool external_uninstall);
189 190
190 // Called to change the extension's state when it is enabled/disabled. 191 // Called to change the extension's state when it is enabled/disabled.
191 void SetExtensionState(const std::string& extension_id, Extension::State); 192 void SetExtensionState(const std::string& extension_id, Extension::State);
192 193
193 // Called to change the extension's BlacklistState. Currently only used for 194 // Called to change the extension's BlacklistState. Currently only used for
(...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after
410 // extension is not present, NULL is returned. 411 // extension is not present, NULL is returned.
411 scoped_ptr<ExtensionInfo> GetInstalledExtensionInfo( 412 scoped_ptr<ExtensionInfo> GetInstalledExtensionInfo(
412 const std::string& extension_id) const; 413 const std::string& extension_id) const;
413 414
414 // We've downloaded an updated .crx file for the extension, but are waiting 415 // We've downloaded an updated .crx file for the extension, but are waiting
415 // to install it. 416 // to install it.
416 void SetDelayedInstallInfo(const Extension* extension, 417 void SetDelayedInstallInfo(const Extension* extension,
417 Extension::State initial_state, 418 Extension::State initial_state,
418 bool blacklisted_for_malware, 419 bool blacklisted_for_malware,
419 DelayReason delay_reason, 420 DelayReason delay_reason,
420 const syncer::StringOrdinal& page_ordinal); 421 const syncer::StringOrdinal& page_ordinal,
422 const std::string& install_parameter);
421 423
422 // Removes any delayed install information we have for the given 424 // Removes any delayed install information we have for the given
423 // |extension_id|. Returns true if there was info to remove; false otherwise. 425 // |extension_id|. Returns true if there was info to remove; false otherwise.
424 bool RemoveDelayedInstallInfo(const std::string& extension_id); 426 bool RemoveDelayedInstallInfo(const std::string& extension_id);
425 427
426 // Update the prefs to finish the update for an extension. 428 // Update the prefs to finish the update for an extension.
427 bool FinishDelayedInstallInfo(const std::string& extension_id); 429 bool FinishDelayedInstallInfo(const std::string& extension_id);
428 430
429 // Returns the ExtensionInfo from the prefs for delayed install information 431 // Returns the ExtensionInfo from the prefs for delayed install information
430 // for |extension_id|, if we have any. Otherwise returns NULL. 432 // for |extension_id|, if we have any. Otherwise returns NULL.
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
473 // found. 475 // found.
474 base::Time GetInstallTime(const std::string& extension_id) const; 476 base::Time GetInstallTime(const std::string& extension_id) const;
475 477
476 // Gets/sets the last launch time of an extension. 478 // Gets/sets the last launch time of an extension.
477 base::Time GetLastLaunchTime(const std::string& extension_id) const; 479 base::Time GetLastLaunchTime(const std::string& extension_id) const;
478 void SetLastLaunchTime(const std::string& extension_id, 480 void SetLastLaunchTime(const std::string& extension_id,
479 const base::Time& time); 481 const base::Time& time);
480 482
481 static void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry); 483 static void RegisterProfilePrefs(user_prefs::PrefRegistrySyncable* registry);
482 484
483 bool extensions_disabled() { return extensions_disabled_; } 485 bool extensions_disabled() const { return extensions_disabled_; }
484 486
485 ContentSettingsStore* content_settings_store() { 487 ContentSettingsStore* content_settings_store() {
486 return content_settings_store_.get(); 488 return content_settings_store_.get();
487 } 489 }
488 490
489 // The underlying PrefService. 491 // The underlying PrefService.
490 PrefService* pref_service() const { return prefs_; } 492 PrefService* pref_service() const { return prefs_; }
491 493
492 // The underlying AppSorting. 494 // The underlying AppSorting.
493 AppSorting* app_sorting() const { return app_sorting_.get(); } 495 AppSorting* app_sorting() const { return app_sorting_.get(); }
(...skipping 13 matching lines...) Expand all
507 const base::DictionaryValue* GetGeometryCache( 509 const base::DictionaryValue* GetGeometryCache(
508 const std::string& extension_id) const; 510 const std::string& extension_id) const;
509 void SetGeometryCache(const std::string& extension_id, 511 void SetGeometryCache(const std::string& extension_id,
510 scoped_ptr<base::DictionaryValue> cache); 512 scoped_ptr<base::DictionaryValue> cache);
511 513
512 // Used for verification of installed extension ids. For the Set method, pass 514 // Used for verification of installed extension ids. For the Set method, pass
513 // null to remove the preference. 515 // null to remove the preference.
514 const base::DictionaryValue* GetInstallSignature(); 516 const base::DictionaryValue* GetInstallSignature();
515 void SetInstallSignature(const base::DictionaryValue* signature); 517 void SetInstallSignature(const base::DictionaryValue* signature);
516 518
519 // The installation parameter associated with the extension.
520 std::string GetInstallParam(const std::string& extension_id) const;
521 void SetInstallParam(const std::string& extension_id,
522 const std::string& install_parameter);
523
517 private: 524 private:
518 friend class ExtensionPrefsBlacklistedExtensions; // Unit test. 525 friend class ExtensionPrefsBlacklistedExtensions; // Unit test.
519 friend class ExtensionPrefsUninstallExtension; // Unit test. 526 friend class ExtensionPrefsUninstallExtension; // Unit test.
520 527
521 // See the Create methods. 528 // See the Create methods.
522 ExtensionPrefs(PrefService* prefs, 529 ExtensionPrefs(PrefService* prefs,
523 const base::FilePath& root_dir, 530 const base::FilePath& root_dir,
524 ExtensionPrefValueMap* extension_pref_value_map, 531 ExtensionPrefValueMap* extension_pref_value_map,
525 scoped_ptr<AppSorting> app_sorting, 532 scoped_ptr<AppSorting> app_sorting,
526 scoped_ptr<TimeProvider> time_provider, 533 scoped_ptr<TimeProvider> time_provider,
(...skipping 80 matching lines...) Expand 10 before | Expand all | Expand 10 after
607 const ExtensionIdContainer& strings); 614 const ExtensionIdContainer& strings);
608 615
609 // Helper function to populate |extension_dict| with the values needed 616 // Helper function to populate |extension_dict| with the values needed
610 // by a newly installed extension. Work is broken up between this 617 // by a newly installed extension. Work is broken up between this
611 // function and FinishExtensionInfoPrefs() to accomodate delayed 618 // function and FinishExtensionInfoPrefs() to accomodate delayed
612 // installations. 619 // installations.
613 void PopulateExtensionInfoPrefs(const Extension* extension, 620 void PopulateExtensionInfoPrefs(const Extension* extension,
614 const base::Time install_time, 621 const base::Time install_time,
615 Extension::State initial_state, 622 Extension::State initial_state,
616 bool blacklisted_for_malware, 623 bool blacklisted_for_malware,
624 const std::string& install_parameter,
617 base::DictionaryValue* extension_dict); 625 base::DictionaryValue* extension_dict);
618 626
619 // Helper function to complete initialization of the values in 627 // Helper function to complete initialization of the values in
620 // |extension_dict| for an extension install. Also see 628 // |extension_dict| for an extension install. Also see
621 // PopulateExtensionInfoPrefs(). 629 // PopulateExtensionInfoPrefs().
622 void FinishExtensionInfoPrefs( 630 void FinishExtensionInfoPrefs(
623 const std::string& extension_id, 631 const std::string& extension_id,
624 const base::Time install_time, 632 const base::Time install_time,
625 bool needs_sort_ordinal, 633 bool needs_sort_ordinal,
626 const syncer::StringOrdinal& suggested_page_ordinal, 634 const syncer::StringOrdinal& suggested_page_ordinal,
(...skipping 18 matching lines...) Expand all
645 scoped_ptr<TimeProvider> time_provider_; 653 scoped_ptr<TimeProvider> time_provider_;
646 654
647 bool extensions_disabled_; 655 bool extensions_disabled_;
648 656
649 DISALLOW_COPY_AND_ASSIGN(ExtensionPrefs); 657 DISALLOW_COPY_AND_ASSIGN(ExtensionPrefs);
650 }; 658 };
651 659
652 } // namespace extensions 660 } // namespace extensions
653 661
654 #endif // EXTENSIONS_BROWSER_EXTENSION_PREFS_H_ 662 #endif // EXTENSIONS_BROWSER_EXTENSION_PREFS_H_
OLDNEW
« no previous file with comments | « chrome/test/data/extensions/settings_override/manifest.json ('k') | extensions/browser/extension_prefs.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698