interface SerialIoHandler {
Open(String port, device.serial.ConnectionOptions options) => (bool success);
Read(uint32 bytes) => (array<uint8> data, device.serial.ReceiveError error);
Write(array<uint8> data) => (uint32 bytes_written, device.serial.SendError error);
CancelRead(device.serial.ReceiveError reason);
CancelWrite(device.serial.SendError reason);
Flush() => (bool success);
GetControlSignals() => (device.serial.DeviceControlSignals signals);
SetControlSignals(device.serial.DeviceControlSignals signals) => (bool success);
ConfigurePort(device.serial.ConnectionOptions options) => (bool success);
GetPortInfo() => (device.serial.ConnectionInfo info);
SetBreak() => (bool success);
ClearBreak() => (bool success);
}
Based on SerialIoHandler in //device/serial/, implement mojo interface SerialIoHandler inside Device Service.
Change users in //extensions/browser/api/serial to consume above interface.
Comment 1 by bugdroid1@chromium.org
, Aug 16 2017