diff options
Diffstat (limited to 'flow-main/src/main/scala/com/github/jodersky/flow/SerialManager.scala')
-rw-r--r-- | flow-main/src/main/scala/com/github/jodersky/flow/SerialManager.scala | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/flow-main/src/main/scala/com/github/jodersky/flow/SerialManager.scala b/flow-main/src/main/scala/com/github/jodersky/flow/SerialManager.scala index 0d69213..b3128ac 100644 --- a/flow-main/src/main/scala/com/github/jodersky/flow/SerialManager.scala +++ b/flow-main/src/main/scala/com/github/jodersky/flow/SerialManager.scala @@ -20,6 +20,7 @@ import akka.actor.actorRef2Scala /** * Actor that manages serial port creation. Once opened, a serial port is handed over to * a dedicated operator actor that acts as an intermediate between client code and the native system serial port. + * @see SerialOperator */ class SerialManager extends Actor with ActorLogging { import SerialManager._ @@ -32,12 +33,12 @@ class SerialManager extends Actor with ActorLogging { } def receive = { - case c @ Open(port, baud, cs, tsb, parity) => Try { InternalSerial.open(port, baud, cs, tsb, parity.id) } match { + case c @ Open(s) => Try { InternalSerial.open(s.port, s.baud, s.characterSize, s.twoStopBits, s.parity.id) } match { case Failure(t) => sender ! CommandFailed(c, t) case Success(serial) => { - val operator = context.actorOf(Props(classOf[SerialOperator], serial), name = escapePortString(port)) - val opened = Opened(serial.port, serial.baud, serial.characterSize, serial.twoStopBits, Parity(serial.parity), operator) - sender.tell(opened, operator) + val operator = context.actorOf(SerialOperator(serial), name = escapePortString(s.port)) + val settings = SerialSettings(serial.port, serial.baud, serial.characterSize, serial.twoStopBits, Parity(serial.parity)) + sender.tell(Opened(settings, operator), operator) } } } |