Home | History | Annotate | Download | only in login
      1 // Copyright (c) 2012 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_CHROMEOS_LOGIN_STARTUP_UTILS_H_
      6 #define CHROME_BROWSER_CHROMEOS_LOGIN_STARTUP_UTILS_H_
      7 
      8 #include <string>
      9 
     10 class PrefRegistrySimple;
     11 
     12 namespace chromeos {
     13 
     14 // Static utitliy methods used in startup time to get/change bits of device
     15 // state.
     16 class StartupUtils {
     17  public:
     18   // Returns true if EULA has been accepted.
     19   static bool IsEulaAccepted();
     20 
     21   // Returns OOBE completion status.
     22   static bool IsOobeCompleted();
     23 
     24   // Marks EULA status as accepted.
     25   static void MarkEulaAccepted();
     26 
     27   // Marks OOBE process as completed.
     28   static void MarkOobeCompleted();
     29 
     30   // Returns device registration completion status, i.e. second part of OOBE.
     31   static bool IsDeviceRegistered();
     32 
     33   // Marks device registered. i.e. second part of OOBE is completed.
     34   static void MarkDeviceRegistered();
     35 
     36   // Returns initial locale from local settings.
     37   static std::string GetInitialLocale();
     38 
     39   // Sets initial locale in local settings.
     40   static void SetInitialLocale(const std::string& locale);
     41 
     42   // Registers OOBE preferences.
     43   static void RegisterPrefs(PrefRegistrySimple* registry);
     44 };
     45 
     46 }  // namespace chromeos
     47 
     48 #endif  // CHROME_BROWSER_CHROMEOS_LOGIN_STARTUP_UTILS_H_
     49