diff options
author | Jakob Odersky <jodersky@gmail.com> | 2013-03-02 12:06:03 +0100 |
---|---|---|
committer | Jakob Odersky <jodersky@gmail.com> | 2013-03-02 12:06:03 +0100 |
commit | 494b80da610fe2b4cb1790ae237437a17ac6ef62 (patch) | |
tree | d36b5ed810851198a21de640128631c9846a4835 /scala/jssc/src/main/scala/com/github/jodersky/ace/jssc/JSSCSerialProvider.scala | |
parent | 5b00baec28e8e7976636df86f30bc3a6412f8203 (diff) | |
download | ace-494b80da610fe2b4cb1790ae237437a17ac6ef62.tar.gz ace-494b80da610fe2b4cb1790ae237437a17ac6ef62.tar.bz2 ace-494b80da610fe2b4cb1790ae237437a17ac6ef62.zip |
simplify scala implementation
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.scala | 48 |
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 |