getProperty method

  1. @override
Future<DBusMethodResponse> getProperty(
  1. String interface,
  2. String name
)

Called when a property is requested on this object. On success, return DBusGetPropertyResponse.

Implementation

@override
Future<DBusMethodResponse> getProperty(String interface, String name) async {
  if (interface != _batteryInterfaceName) {
    return DBusMethodErrorResponse.unknownInterface();
  }

  switch (name) {
    case 'Percentage':
      return DBusGetPropertyResponse(DBusByte(percentage));
    case 'Source':
      return DBusGetPropertyResponse(DBusString(source));
    case 'Device':
      return DBusGetPropertyResponse(device.path);
    default:
      return DBusMethodErrorResponse.unknownProperty();
  }
}