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.
5 #ifndef CHROME_BROWSER_CHROMEOS_SETTINGS_OWNER_FLAGS_STORAGE_H_
6 #define CHROME_BROWSER_CHROMEOS_SETTINGS_OWNER_FLAGS_STORAGE_H_
8 #include "base/compiler_specific.h"
9 #include "chrome/browser/pref_service_flags_storage.h"
15 namespace about_flags
{
17 // Implements the FlagsStorage interface for the owner flags. It inherits from
18 // PrefServiceFlagsStorage but extends it with storing the flags in the signed
19 // settings as well which effectively applies them to the login session as well.
20 class OwnerFlagsStorage
: public ::about_flags::PrefServiceFlagsStorage
{
22 OwnerFlagsStorage(PrefService
*prefs
, CrosSettings
*cros_settings
);
23 virtual ~OwnerFlagsStorage();
25 virtual bool SetFlags(const std::set
<std::string
>& flags
) OVERRIDE
;
28 CrosSettings
* cros_settings_
;
31 } // namespace about_flags
32 } // namespace chromeos
34 #endif // CHROME_BROWSER_CHROMEOS_SETTINGS_OWNER_FLAGS_STORAGE_H_