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 11class PrefService; 12 13namespace about_flags { 14 15// Implements the FlagsStorage interface with a PrefService backend. 16// This is the implementation used on desktop Chrome for all users. 17class 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