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