flags property

Defines how this characteristic value can be used.

Implementation

Set<BlueZGattCharacteristicFlag> get flags {
  var flags = <BlueZGattCharacteristicFlag>{};
  var values = _object.getStringArrayProperty(
          _gattCharacteristicInterfaceName, 'Flags') ??
      [];
  for (var value in values) {
    switch (value) {
      case 'broadcast':
        flags.add(BlueZGattCharacteristicFlag.broadcast);
        break;
      case 'read':
        flags.add(BlueZGattCharacteristicFlag.read);
        break;
      case 'write-without-response':
        flags.add(BlueZGattCharacteristicFlag.writeWithoutResponse);
        break;
      case 'write':
        flags.add(BlueZGattCharacteristicFlag.write);
        break;
      case 'notify':
        flags.add(BlueZGattCharacteristicFlag.notify);
        break;
      case 'indicate':
        flags.add(BlueZGattCharacteristicFlag.indicate);
        break;
      case 'authenticated-signed-writes':
        flags.add(BlueZGattCharacteristicFlag.authenticatedSignedWrites);
        break;
      case 'extended-properties':
        flags.add(BlueZGattCharacteristicFlag.extendedProperties);
        break;
      case 'reliable-write':
        flags.add(BlueZGattCharacteristicFlag.reliableWrite);
        break;
      case 'writable-auxiliaries':
        flags.add(BlueZGattCharacteristicFlag.writableAuxiliaries);
        break;
      case 'encrypt-read':
        flags.add(BlueZGattCharacteristicFlag.encryptRead);
        break;
      case 'encrypt-write':
        flags.add(BlueZGattCharacteristicFlag.encryptWrite);
        break;
      case 'encrypt-authenticated-read':
        flags.add(BlueZGattCharacteristicFlag.encryptAuthenticatedRead);
        break;
      case 'encrypt-authenticated-write':
        flags.add(BlueZGattCharacteristicFlag.encryptAuthenticatedWrite);
        break;
      case 'secure-read':
        flags.add(BlueZGattCharacteristicFlag.secureRead);
        break;
      case 'secure-write':
        flags.add(BlueZGattCharacteristicFlag.secureWrite);
        break;
      case 'authorize':
        flags.add(BlueZGattCharacteristicFlag.authorize);
        break;
    }
  }
  return flags;
}