aboutsummaryrefslogtreecommitdiff
path: root/scala/jssc/src/main/scala/com/github/jodersky/ace/jssc/JSSCSerialProvider.scala
diff options
context:
space:
mode:
Diffstat (limited to 'scala/jssc/src/main/scala/com/github/jodersky/ace/jssc/JSSCSerialProvider.scala')
-rw-r--r--scala/jssc/src/main/scala/com/github/jodersky/ace/jssc/JSSCSerialProvider.scala48
1 files changed, 0 insertions, 48 deletions
diff --git a/scala/jssc/src/main/scala/com/github/jodersky/ace/jssc/JSSCSerialProvider.scala b/scala/jssc/src/main/scala/com/github/jodersky/ace/jssc/JSSCSerialProvider.scala
deleted file mode 100644
index 3bfd650..0000000
--- a/scala/jssc/src/main/scala/com/github/jodersky/ace/jssc/JSSCSerialProvider.scala
+++ /dev/null
@@ -1,48 +0,0 @@
-package com.github.jodersky.ace.jssc
-
-import scala.concurrent._
-import scala.concurrent.ExecutionContext.Implicits.global
-import com.github.jodersky.ace.serial._
-import com.github.jodersky.ace.serial.Serial
-import jssc.SerialPortEvent
-import jssc.SerialPort
-import jssc.SerialPortEventListener
-import java.io.IOException
-
-object JSSCSerialProvider extends SerialProvider {
-
- def open(port: String, baudRate: Int) = new Serial {
- val serialPort = new SerialPort(port);
- serialPort.openPort()
- serialPort.setParams(
- baudRate,
- SerialPort.DATABITS_8,
- SerialPort.STOPBITS_1,
- SerialPort.PARITY_NONE)
-
- val listener = new SerialPortEventListener {
- override def serialEvent(event: SerialPortEvent) = {
- if (event.isRXCHAR()) {
- val bytes = serialPort.readBytes
- if (bytes != null) notifyHigher(bytes.map(_ & 0xff))
- }
- }
- }
-
- def send(data: Seq[Int]) = future {
- serialPort.writeBytes(data.toArray.map(_.toByte))
- } map { success =>
- if (success) data
- else throw new IOException("Could not write to serial port.")
- }
-
- def close() = serialPort.closePort()
-
- def begin() = {
- val mask = SerialPort.MASK_RXCHAR + SerialPort.MASK_CTS + SerialPort.MASK_DSR
- serialPort.setEventsMask(mask)
- serialPort.addEventListener(listener)
- }
- }
-
-} \ No newline at end of file