diff options
5 files changed, 16 insertions, 0 deletions
diff --git a/chrome/browser/chromeos/extensions/info_private_api.cc b/chrome/browser/chromeos/extensions/info_private_api.cc index 2172109..fea4b4f 100644 --- a/chrome/browser/chromeos/extensions/info_private_api.cc +++ b/chrome/browser/chromeos/extensions/info_private_api.cc @@ -32,6 +32,9 @@ namespace { // Key which corresponds to the HWID setting. const char kPropertyHWID[] = "hwid"; +// Key which corresponds to the customization ID setting. +const char kPropertyCustomizationID[] = "customizationId"; + // Key which corresponds to the home provider property. const char kPropertyHomeProvider[] = "homeProvider"; @@ -133,6 +136,13 @@ base::Value* ChromeosInfoPrivateGetFunction::GetValue( chromeos::system::StatisticsProvider::GetInstance(); provider->GetMachineStatistic(chromeos::system::kHardwareClassKey, &hwid); return new base::StringValue(hwid); + } else if (property_name == kPropertyCustomizationID) { + std::string customization_id; + chromeos::system::StatisticsProvider* provider = + chromeos::system::StatisticsProvider::GetInstance(); + provider->GetMachineStatistic(chromeos::system::kCustomizationIdKey, + &customization_id); + return new base::StringValue(customization_id); } else if (property_name == kPropertyHomeProvider) { const chromeos::DeviceState* cellular_device = NetworkHandler::Get()->network_state_handler()->GetDeviceStateByType( diff --git a/chrome/common/extensions/api/chromeos_info_private.json b/chrome/common/extensions/api/chromeos_info_private.json index d09a3e3..9c73881 100644 --- a/chrome/common/extensions/api/chromeos_info_private.json +++ b/chrome/common/extensions/api/chromeos_info_private.json @@ -33,6 +33,7 @@ "description": "Dictionary which contains all requested properties", "properties": { "board" : {"type": "string", "optional": "true", "description": "Board name"}, + "customizationId": {"type": "string", "optional": "true", "description": "Customization ID"}, "homeProvider" : {"type": "string", "optional": "true", "description": "Home provider which is used by the cellular device"}, "hwid": {"type": "string", "optional": "true", "description": "Hardware ID"}, "initialLocale" : {"type": "string", "optional": "true", "description": "Initial locale for the device"}, diff --git a/chrome/test/data/extensions/api_test/chromeos_info_private/background.js b/chrome/test/data/extensions/api_test/chromeos_info_private/background.js index fe29574..0ab4c03 100644 --- a/chrome/test/data/extensions/api_test/chromeos_info_private/background.js +++ b/chrome/test/data/extensions/api_test/chromeos_info_private/background.js @@ -102,6 +102,7 @@ function prefsTest() { // Run generated chrome.chromeosInfoPrivate.get() tests. var tests = generateTestsForKeys(['hwid', + 'customizationId', 'homeProvider', 'initialLocale', 'board', diff --git a/chromeos/system/statistics_provider.cc b/chromeos/system/statistics_provider.cc index 9b40d59..10ad688 100644 --- a/chromeos/system/statistics_provider.cc +++ b/chromeos/system/statistics_provider.cc @@ -67,6 +67,7 @@ const CommandLine::CharType kOemManifestFilePath[] = // Key values for GetMachineStatistic()/GetMachineFlag() calls. const char kDevSwitchBootMode[] = "devsw_boot"; +const char kCustomizationIdKey[] = "customization_id"; const char kHardwareClassKey[] = "hardware_class"; const char kOffersCouponCodeKey[] = "ubind_attribute"; const char kOffersGroupCodeKey[] = "gbind_attribute"; diff --git a/chromeos/system/statistics_provider.h b/chromeos/system/statistics_provider.h index 7df0b99..071923d 100644 --- a/chromeos/system/statistics_provider.h +++ b/chromeos/system/statistics_provider.h @@ -20,6 +20,9 @@ namespace system { // Developer switch value. CHROMEOS_EXPORT extern const char kDevSwitchBootMode[]; +// Customization ID key. +CHROMEOS_EXPORT extern const char kCustomizationIdKey[]; + // HWID key. CHROMEOS_EXPORT extern const char kHardwareClassKey[]; |