connect method

Future<bool> connect({
  1. required PrinterType type,
  2. required BasePrinterInput model,
})

Implementation

Future<bool> connect({required PrinterType type, required BasePrinterInput model}) async {
  if (type == PrinterType.bluetooth && (Platform.isIOS || Platform.isAndroid)) {
    try {
      var conn = await bluetoothPrinterConnector.connect(model as BluetoothPrinterInput);
      return conn;
    } catch (e) {
      throw Exception('model must be type of BluetoothPrinterInput');
    }
  } else if (type == PrinterType.usb && (Platform.isAndroid || Platform.isWindows)) {
    try {
      var conn = await usbPrinterConnector.connect(model as UsbPrinterInput);
      return conn;
    } catch (e) {
      throw Exception('model must be type of UsbPrinterInput');
    }
  } else {
    try {
      var conn = await tcpPrinterConnector.connect(model as TcpPrinterInput);
      return conn;
    } catch (e) {
      throw Exception('model must be type of TcpPrinterInput');
    }
  }
}