Index: components/gcm_driver/instance_id/instance_id_driver.cc |
diff --git a/components/gcm_driver/instance_id/instance_id_driver.cc b/components/gcm_driver/instance_id/instance_id_driver.cc |
index f0ea456a65f4e86eaeca57aa2b14d92059c69e31..edb5270ff0bd2868bc1b28425522f5c48c4ef4c2 100644 |
--- a/components/gcm_driver/instance_id/instance_id_driver.cc |
+++ b/components/gcm_driver/instance_id/instance_id_driver.cc |
@@ -4,10 +4,29 @@ |
#include "components/gcm_driver/instance_id/instance_id_driver.h" |
+#include "base/metrics/field_trial.h" |
#include "components/gcm_driver/instance_id/instance_id.h" |
namespace instance_id { |
+namespace { |
+#if !defined(OS_ANDROID) |
+const char kInstanceIDFieldTrialName[] = "InstanceID"; |
+const char kInstanceIDFieldTrialEnabledGroupName[] = "Enabled"; |
+#endif // !defined(OS_ANDROID) |
+} // namespace |
+ |
+// static |
+bool InstanceIDDriver::IsInstanceIDEnabled() { |
+#if defined(OS_ANDROID) |
+ return true; |
+#else |
+ std::string group_name = |
+ base::FieldTrialList::FindFullName(kInstanceIDFieldTrialName); |
+ return group_name == kInstanceIDFieldTrialEnabledGroupName; |
+#endif // defined(OS_ANDROID) |
+} |
+ |
InstanceIDDriver::InstanceIDDriver(gcm::GCMDriver* gcm_driver) |
: gcm_driver_(gcm_driver), |
instance_id_map_deleter_(&instance_id_map_) { |