| Index: chrome/browser/chromeos/mobile_config.h
|
| diff --git a/chrome/browser/chromeos/mobile_config.h b/chrome/browser/chromeos/mobile_config.h
|
| index 4f4f40765c92e5a2fe6a25e4594b433ce9102919..1a37f40e53fde8425d6995885193367e52f5784f 100644
|
| --- a/chrome/browser/chromeos/mobile_config.h
|
| +++ b/chrome/browser/chromeos/mobile_config.h
|
| @@ -116,6 +116,27 @@ class MobileConfig : public CustomizationDocument {
|
| DISALLOW_COPY_AND_ASSIGN(Carrier);
|
| };
|
|
|
| + // Carrier config for a specific initial locale.
|
| + class LocaleConfig {
|
| + public:
|
| + explicit LocaleConfig(base::DictionaryValue* locale_dict);
|
| + ~LocaleConfig();
|
| +
|
| + const std::string& setup_url() const { return setup_url_; }
|
| +
|
| + // Initializes local config carrier from supplied dictionary.
|
| + // Multiple calls supported (i.e. second call for local config).
|
| + void InitFromDictionary(base::DictionaryValue* locale_dict);
|
| +
|
| + private:
|
| + // Carrier setup URL. Used in network menu ("Set-up Mobile Data" link).
|
| + // Displayed when SIM card is not installed on the device with a
|
| + // particular initial locale.
|
| + std::string setup_url_;
|
| +
|
| + DISALLOW_COPY_AND_ASSIGN(LocaleConfig);
|
| + };
|
| +
|
| // External carrier ID (ex. "Verizon (us)") mapping to internal carrier ID.
|
| typedef std::map<std::string, std::string> CarrierIdMap;
|
|
|
| @@ -124,9 +145,13 @@ class MobileConfig : public CustomizationDocument {
|
|
|
| static MobileConfig* GetInstance();
|
|
|
| - // Returns carrier by external ID.
|
| + // Returns carrier by external ID or NULL if there's no such carrier.
|
| const MobileConfig::Carrier* GetCarrier(const std::string& carrier_id) const;
|
|
|
| + // Returns locale specific config by initial locale or NULL
|
| + // if there's no such config defined.
|
| + const MobileConfig::LocaleConfig* GetLocaleConfig() const;
|
| +
|
| protected:
|
| virtual bool LoadManifestFromString(const std::string& manifest) OVERRIDE;
|
|
|
| @@ -165,6 +190,9 @@ class MobileConfig : public CustomizationDocument {
|
| // Carrier configuration (including carrier deals).
|
| Carriers carriers_;
|
|
|
| + // Initial locale specific config if defined.
|
| + scoped_ptr<LocaleConfig> locale_config_;
|
| +
|
| // Initial locale value.
|
| std::string initial_locale_;
|
|
|
|
|