Home | History | Annotate | Download | only in browser
      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_FLAGS_STORAGE_H_
      6 #define CHROME_BROWSER_FLAGS_STORAGE_H_
      7 
      8 #include <set>
      9 #include <string>
     10 
     11 namespace about_flags {
     12 
     13 // Base class for flags storage implementations.  Enables the about_flags
     14 // functions to store and retrieve data from various sources like PrefService
     15 // and CrosSettings.
     16 class FlagsStorage {
     17  public:
     18   virtual ~FlagsStorage() {}
     19 
     20   // Retrieves the flags as a set of strings.
     21   virtual std::set<std::string> GetFlags() = 0;
     22   // Stores the |flags| and returns true on success.
     23   virtual bool SetFlags(const std::set<std::string>& flags) = 0;
     24 };
     25 
     26 }  // namespace about_flags
     27 
     28 #endif  // CHROME_BROWSER_FLAGS_STORAGE_H_
     29