| Index: mojo/dart/packages/mojo_services/lib/sensors/sensors.mojom.dart
 | 
| diff --git a/mojo/dart/packages/mojo_services/lib/sensors/sensors.mojom.dart b/mojo/dart/packages/mojo_services/lib/sensors/sensors.mojom.dart
 | 
| index c46154529c5c09d54bc8eb153e60d4b4af81731e..f90d0dbd9be24d826740abd9b9a3dd76c7607945 100644
 | 
| --- a/mojo/dart/packages/mojo_services/lib/sensors/sensors.mojom.dart
 | 
| +++ b/mojo/dart/packages/mojo_services/lib/sensors/sensors.mojom.dart
 | 
| @@ -8,6 +8,8 @@ import 'dart:async';
 | 
|  
 | 
|  import 'package:mojo/bindings.dart' as bindings;
 | 
|  import 'package:mojo/core.dart' as core;
 | 
| +import 'package:mojo/mojo/mojom_types.mojom.dart' as mojom_types;
 | 
| +import 'package:mojo/mojo/service_describer.mojom.dart' as service_describer;
 | 
|  class SensorType extends bindings.MojoEnum {
 | 
|    static const ACCELEROMETER = const SensorType._(0);
 | 
|    static const AMBIENT_TEMPERATURE = const SensorType._(1);
 | 
| @@ -171,12 +173,77 @@ class SensorType extends bindings.MojoEnum {
 | 
|          return 'SensorType.STEP_COUNTER';
 | 
|        case STEP_DETECTOR:
 | 
|          return 'SensorType.STEP_DETECTOR';
 | 
| +      default:
 | 
| +        return null;
 | 
|      }
 | 
|    }
 | 
|  
 | 
|    int toJson() => value;
 | 
|  }
 | 
|  
 | 
| +mojom_types.MojomEnum _sensors_SensorType__() {
 | 
| +  return new mojom_types.MojomEnum()
 | 
| +    ..declData = (new mojom_types.DeclarationData()..shortName = "SensorType")
 | 
| +    ..values = <mojom_types.EnumValue>[new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "ACCELEROMETER")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 0,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "AMBIENT_TEMPERATURE")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 1,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "GAME_ROTATION_VECTOR")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 2,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "GEOMAGNETIC_ROTATION_VECTOR")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 3,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "GRAVITY")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 4,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "GYROSCOPE")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 5,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "GYROSCOPE_UNCALIBRATED")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 6,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "HEART_RATE")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 7,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "LIGHT")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 8,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "LINEAR_ACCELERATION")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 9,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "MAGNETIC_FIELD")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 10,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "MAGNETIC_FIELD_UNCALIBRATED")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 11,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "PRESSURE")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 12,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "PROXIMITY")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 13,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "RELATIVE_HUMIDITY")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 14,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "ROTATION_VECTOR")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 15,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "SIGNIFICANT_MOTION")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 16,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "STEP_COUNTER")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 17,new mojom_types.EnumValue()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "STEP_DETECTOR")
 | 
| +        ..enumTypeKey = '_sensors_SensorType__'
 | 
| +        ..intValue = 18,];
 | 
| +}
 | 
| +
 | 
|  
 | 
|  
 | 
|  class SensorData extends bindings.Struct {
 | 
| @@ -263,6 +330,25 @@ class SensorData extends bindings.Struct {
 | 
|    }
 | 
|  }
 | 
|  
 | 
| +mojom_types.MojomStruct _sensors_SensorData__() {
 | 
| +  return new mojom_types.MojomStruct()
 | 
| +    ..declData = (new mojom_types.DeclarationData()..shortName = 'SensorData')
 | 
| +    ..fields = <mojom_types.StructField>[
 | 
| +      new mojom_types.StructField()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = 'Accuracy')
 | 
| +        ..type = (new mojom_types.Type()..simpleType = mojom_types.SimpleType.INT32),
 | 
| +      
 | 
| +      new mojom_types.StructField()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = 'TimeStamp')
 | 
| +        ..type = (new mojom_types.Type()..simpleType = mojom_types.SimpleType.INT64),
 | 
| +      
 | 
| +      new mojom_types.StructField()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = 'Values')
 | 
| +        ..type = (new mojom_types.Type()..arrayType = (new mojom_types.ArrayType()
 | 
| +    ..elementType = (new mojom_types.Type()..simpleType = mojom_types.SimpleType.FLOAT))),
 | 
| +      ];
 | 
| +}
 | 
| +
 | 
|  
 | 
|  class SensorListenerOnAccuracyChangedParams extends bindings.Struct {
 | 
|    static const List<bindings.StructDataHeader> kVersions = const [
 | 
| @@ -330,6 +416,16 @@ class SensorListenerOnAccuracyChangedParams extends bindings.Struct {
 | 
|    }
 | 
|  }
 | 
|  
 | 
| +mojom_types.MojomStruct _sensors_SensorListener_OnAccuracyChanged_Params__() {
 | 
| +  return new mojom_types.MojomStruct()
 | 
| +    ..declData = (new mojom_types.DeclarationData()..shortName = 'SensorListenerOnAccuracyChangedParams')
 | 
| +    ..fields = <mojom_types.StructField>[
 | 
| +      new mojom_types.StructField()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = 'Accuracy')
 | 
| +        ..type = (new mojom_types.Type()..simpleType = mojom_types.SimpleType.INT32),
 | 
| +      ];
 | 
| +}
 | 
| +
 | 
|  
 | 
|  class SensorListenerOnSensorChangedParams extends bindings.Struct {
 | 
|    static const List<bindings.StructDataHeader> kVersions = const [
 | 
| @@ -398,6 +494,21 @@ class SensorListenerOnSensorChangedParams extends bindings.Struct {
 | 
|    }
 | 
|  }
 | 
|  
 | 
| +mojom_types.MojomStruct _sensors_SensorListener_OnSensorChanged_Params__() {
 | 
| +  return new mojom_types.MojomStruct()
 | 
| +    ..declData = (new mojom_types.DeclarationData()..shortName = 'SensorListenerOnSensorChangedParams')
 | 
| +    ..fields = <mojom_types.StructField>[
 | 
| +      new mojom_types.StructField()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = 'Data')
 | 
| +        ..type = (new mojom_types.Type()
 | 
| +    ..typeReference = (new mojom_types.TypeReference()
 | 
| +  
 | 
| +    ..identifier = '_sensors_SensorData__'
 | 
| +    ..typeKey = '_sensors_SensorData__'
 | 
| +  )),
 | 
| +      ];
 | 
| +}
 | 
| +
 | 
|  
 | 
|  class SensorServiceAddListenerParams extends bindings.Struct {
 | 
|    static const List<bindings.StructDataHeader> kVersions = const [
 | 
| @@ -476,12 +587,64 @@ class SensorServiceAddListenerParams extends bindings.Struct {
 | 
|    }
 | 
|  }
 | 
|  
 | 
| +mojom_types.MojomStruct _sensors_SensorService_AddListener_Params__() {
 | 
| +  return new mojom_types.MojomStruct()
 | 
| +    ..declData = (new mojom_types.DeclarationData()..shortName = 'SensorServiceAddListenerParams')
 | 
| +    ..fields = <mojom_types.StructField>[
 | 
| +      new mojom_types.StructField()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = 'Type')
 | 
| +        ..type = (new mojom_types.Type()
 | 
| +    ..typeReference = (new mojom_types.TypeReference()
 | 
| +  
 | 
| +    ..identifier = '_sensors_SensorType__'
 | 
| +    ..typeKey = '_sensors_SensorType__'
 | 
| +  )),
 | 
| +      
 | 
| +      new mojom_types.StructField()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = 'Listener')
 | 
| +        ..type = (new mojom_types.Type()
 | 
| +    ..typeReference = (new mojom_types.TypeReference()
 | 
| +  
 | 
| +    ..identifier = '_sensors_SensorListener__'
 | 
| +    ..typeKey = '_sensors_SensorListener__'
 | 
| +  )),
 | 
| +      ];
 | 
| +}
 | 
| +
 | 
| +
 | 
|  const int kSensorListener_onAccuracyChanged_name = 0;
 | 
|  const int kSensorListener_onSensorChanged_name = 1;
 | 
|  
 | 
|  const String SensorListenerName =
 | 
|        'sensors::SensorListener';
 | 
|  
 | 
| +mojom_types.MojomInterface _sensors_SensorListener__() {
 | 
| +  return new mojom_types.MojomInterface()
 | 
| +    ..declData = (new mojom_types.DeclarationData()..shortName = "SensorListener")
 | 
| +    ..interfaceName = "SensorListener"
 | 
| +    ..methods = <int, mojom_types.MojomMethod>{
 | 
| +kSensorListener_onAccuracyChanged_name: new mojom_types.MojomMethod()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "OnAccuracyChanged")
 | 
| +        ..ordinal = kSensorListener_onAccuracyChanged_name..parameters = _sensors_SensorListener_OnAccuracyChanged_Params__(),kSensorListener_onSensorChanged_name: new mojom_types.MojomMethod()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "OnSensorChanged")
 | 
| +        ..ordinal = kSensorListener_onSensorChanged_name..parameters = _sensors_SensorListener_OnSensorChanged_Params__(),
 | 
| +    };
 | 
| +}
 | 
| +
 | 
| +class _SensorListenerServiceDescription extends service_describer.ServiceDescription {
 | 
| +  // Avoid infinite loop by overriding serviceDescription field.
 | 
| +  final service_describer.ServiceDescription serviceDescription = null;
 | 
| +dynamic getTopLevelInterface([Function responseFactory = null]) {
 | 
| +    return _sensors_SensorListener__();
 | 
| +  }
 | 
| +  dynamic getTypeDefinition(String typeKey,[Function responseFactory = null]) {
 | 
| +    return getAllMojomTypeDefinitions()[typeKey];
 | 
| +  }
 | 
| +  dynamic getAllTypeDefinitions([Function responseFactory = null]) {
 | 
| +    return getAllMojomTypeDefinitions();
 | 
| +  }
 | 
| +}
 | 
| +
 | 
|  abstract class SensorListener {
 | 
|    void onAccuracyChanged(int accuracy);
 | 
|    void onSensorChanged(SensorData data);
 | 
| @@ -506,6 +669,9 @@ class SensorListenerProxyImpl extends bindings.Proxy {
 | 
|  
 | 
|    String get name => SensorListenerName;
 | 
|  
 | 
| +  service_describer.ServiceDescription get serviceDescription =>
 | 
| +    new _SensorListenerServiceDescription();
 | 
| +
 | 
|    void handleResponse(bindings.ServiceMessage message) {
 | 
|      switch (message.header.type) {
 | 
|        default:
 | 
| @@ -666,6 +832,9 @@ class SensorListenerStub extends bindings.Stub {
 | 
|    }
 | 
|  
 | 
|    int get version => 0;
 | 
| +
 | 
| +  service_describer.ServiceDescription get serviceDescription =>
 | 
| +    new _SensorListenerServiceDescription();
 | 
|  }
 | 
|  
 | 
|  const int kSensorService_addListener_name = 0;
 | 
| @@ -673,6 +842,31 @@ const int kSensorService_addListener_name = 0;
 | 
|  const String SensorServiceName =
 | 
|        'sensors::SensorService';
 | 
|  
 | 
| +mojom_types.MojomInterface _sensors_SensorService__() {
 | 
| +  return new mojom_types.MojomInterface()
 | 
| +    ..declData = (new mojom_types.DeclarationData()..shortName = "SensorService")
 | 
| +    ..interfaceName = "SensorService"
 | 
| +    ..methods = <int, mojom_types.MojomMethod>{
 | 
| +kSensorService_addListener_name: new mojom_types.MojomMethod()
 | 
| +        ..declData = (new mojom_types.DeclarationData()..shortName = "AddListener")
 | 
| +        ..ordinal = kSensorService_addListener_name..parameters = _sensors_SensorService_AddListener_Params__(),
 | 
| +    };
 | 
| +}
 | 
| +
 | 
| +class _SensorServiceServiceDescription extends service_describer.ServiceDescription {
 | 
| +  // Avoid infinite loop by overriding serviceDescription field.
 | 
| +  final service_describer.ServiceDescription serviceDescription = null;
 | 
| +dynamic getTopLevelInterface([Function responseFactory = null]) {
 | 
| +    return _sensors_SensorService__();
 | 
| +  }
 | 
| +  dynamic getTypeDefinition(String typeKey,[Function responseFactory = null]) {
 | 
| +    return getAllMojomTypeDefinitions()[typeKey];
 | 
| +  }
 | 
| +  dynamic getAllTypeDefinitions([Function responseFactory = null]) {
 | 
| +    return getAllMojomTypeDefinitions();
 | 
| +  }
 | 
| +}
 | 
| +
 | 
|  abstract class SensorService {
 | 
|    void addListener(SensorType type, Object listener);
 | 
|  
 | 
| @@ -696,6 +890,9 @@ class SensorServiceProxyImpl extends bindings.Proxy {
 | 
|  
 | 
|    String get name => SensorServiceName;
 | 
|  
 | 
| +  service_describer.ServiceDescription get serviceDescription =>
 | 
| +    new _SensorServiceServiceDescription();
 | 
| +
 | 
|    void handleResponse(bindings.ServiceMessage message) {
 | 
|      switch (message.header.type) {
 | 
|        default:
 | 
| @@ -842,6 +1039,80 @@ class SensorServiceStub extends bindings.Stub {
 | 
|    }
 | 
|  
 | 
|    int get version => 0;
 | 
| +
 | 
| +  service_describer.ServiceDescription get serviceDescription =>
 | 
| +    new _SensorServiceServiceDescription();
 | 
| +}
 | 
| +
 | 
| +
 | 
| +
 | 
| +
 | 
| +
 | 
| +
 | 
| +
 | 
| +
 | 
| +var _MojomDesc__ = _initDescriptions();
 | 
| +
 | 
| +Map<String, mojom_types.UserDefinedType> _initDescriptions() {
 | 
| +  var map = new Map<String, mojom_types.UserDefinedType>();
 | 
| +  
 | 
| +  map["_sensors_SensorType__"] =
 | 
| +    new mojom_types.UserDefinedType()
 | 
| +      ..enumType = _sensors_SensorType__();
 | 
| +
 | 
| +  
 | 
| +  map["_sensors_SensorData__"] =
 | 
| +    new mojom_types.UserDefinedType()
 | 
| +      ..structType = _sensors_SensorData__();
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +  map["_sensors_SensorListener_OnAccuracyChanged_Params__"] =
 | 
| +    new mojom_types.UserDefinedType()
 | 
| +      ..structType = _sensors_SensorListener_OnAccuracyChanged_Params__();
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +  map["_sensors_SensorListener_OnSensorChanged_Params__"] =
 | 
| +    new mojom_types.UserDefinedType()
 | 
| +      ..structType = _sensors_SensorListener_OnSensorChanged_Params__();
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +  map["_sensors_SensorService_AddListener_Params__"] =
 | 
| +    new mojom_types.UserDefinedType()
 | 
| +      ..structType = _sensors_SensorService_AddListener_Params__();
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +
 | 
| +  map["_sensors_SensorListener__"] =
 | 
| +    new mojom_types.UserDefinedType()
 | 
| +      ..interfaceType = _sensors_SensorListener__();
 | 
| +
 | 
| +  
 | 
| +
 | 
| +  
 | 
| +  
 | 
| +  map["_sensors_SensorService__"] =
 | 
| +    new mojom_types.UserDefinedType()
 | 
| +      ..interfaceType = _sensors_SensorService__();
 | 
| +
 | 
| +  return map;
 | 
| +}
 | 
| +
 | 
| +Map<String, mojom_types.UserDefinedType> getAllMojomTypeDefinitions() {
 | 
| +  return _MojomDesc__;
 | 
|  }
 | 
|  
 | 
|  
 | 
| 
 |