diff options
Diffstat (limited to 'flow-samples/rwc/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala')
-rw-r--r-- | flow-samples/rwc/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/flow-samples/rwc/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala b/flow-samples/rwc/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala deleted file mode 100644 index 4b38c09..0000000 --- a/flow-samples/rwc/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala +++ /dev/null @@ -1,55 +0,0 @@ -package com.github.jodersky.flow.example - -import com.github.jodersky.flow.Serial._ -import akka.actor.Actor -import akka.actor.ActorLogging -import akka.actor.ActorRef -import akka.util.ByteString -import akka.io.IO -import com.github.jodersky.flow.Serial -import akka.actor.Terminated - -class SerialHandler(port: String, baud: Int) extends Actor with ActorLogging { - import context._ - - log.info(s"Requesting manager to open port: ${port}, baud: ${baud}") - IO(Serial) ! Serial.Open(self, port, baud) - - def receive = { - - case OpenFailed(reason, _, _, _, _, _) => { - log.error(s"Connection failed, stopping handler. Reason: ${reason}") - context stop self - } - - case Opened(port, _, _, _, _) => { - log.info(s"Port ${port} is now open.") - context become opened(sender) - } - } - - def opened(operator: ActorRef): Receive = { - - case Received(data) => { - log.info("Received data: " + formatData(data)) - log.info("As string: " + new String(data.toArray, "UTF-8")) - } - case Wrote(data) => log.info("Got ACK for writing data: " + formatData(data)) - case Closed(None) => { - log.info("Operator closed normally, exiting handler.") - context stop self - } - case Closed(Some(ex)) => { - log.info("Operator crashed, exiting handler.") - context stop self - } - case "close" => { - log.info("Initiating close.") - operator ! Close - } - case data: ByteString => operator ! Write(data, true) - } - - private def formatData(data: ByteString) = data.mkString("[", ",", "]") - -}
\ No newline at end of file |