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 3 // found in the LICENSE file. 4 5 #ifndef CHROME_BROWSER_PREF_SERVICE_FLAGS_STORAGE_H_ 6 #define CHROME_BROWSER_PREF_SERVICE_FLAGS_STORAGE_H_ 7 8 #include "base/compiler_specific.h" 9 #include "chrome/browser/flags_storage.h" 10 11 class PrefService; 12 13 namespace about_flags { 14 15 // Implements the FlagsStorage interface with a PrefService backend. 16 // This is the implementation used on desktop Chrome for all users. 17 class PrefServiceFlagsStorage : public FlagsStorage { 18 public: 19 explicit PrefServiceFlagsStorage(PrefService *prefs); 20 virtual ~PrefServiceFlagsStorage(); 21 22 virtual std::set<std::string> GetFlags() OVERRIDE; 23 virtual bool SetFlags(std::set<std::string> flags) OVERRIDE; 24 25 private: 26 PrefService* prefs_; 27 }; 28 29 } // namespace about_flags 30 31 #endif // CHROME_BROWSER_PREF_SERVICE_FLAGS_STORAGE_H_ 32