toArguments method

Map<String, dynamic> toArguments()

Converts the peripheral to a map of arguments.

This method is useful for passing the peripheral as arguments to the Faketooth simulator.

Example usage:

FaketoothPeripheral peripheral = FaketoothPeripheral(
  identifier: 'ABCD1234',
  name: 'MyDevice',
  services: [
    FaketoothService(
      uuid: '0000180f-0000-1000-8000-00805f9b34fb',
      characteristics: [
        FaketoothCharacteristic(
          uuid: '00002a19-0000-1000-8000-00805f9b34fb',
          properties: {FaketoothCharacteristicProperties.read},
        ),
      ],
    ),
  ],
  advertisementData: FaketoothAdvertisementData(
    localName: 'MyDevice',
    serviceUUIDs: ['0000180f-0000-1000-8000-00805f9b34fb'],
  ),
);

Map<String, dynamic> arguments = peripheral.toArguments();
print(arguments);
// Output: {identifier: 'ABCD1234', name: 'MyDevice', services: [...], advertisementData: {...}}

Implementation

Map<String, dynamic> toArguments() {
  return {
    'identifier': identifier,
    'name': name,
    'services': services?.map((e) => e.toArguments()).toList() ?? [],
    'advertisementData': advertisementData?.toArguments(),
  };
}