diff options
Diffstat (limited to 'samples/rwc/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala')
-rw-r--r-- | samples/rwc/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/samples/rwc/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala b/samples/rwc/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala index ddcde8d..e616763 100644 --- a/samples/rwc/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala +++ b/samples/rwc/src/main/scala/com/github/jodersky/flow/example/SerialHandler.scala @@ -24,23 +24,23 @@ class SerialHandler(port: String, baud: Int) extends Actor with ActorLogging { case Opened(port) => { log.info(s"Port ${port} is now open.") - context watch sender context become opened(sender) } } def opened(operator: ActorRef): Receive = { - case Terminated(`operator`) => { - log.info("operator down, handler exiting") - context.stop(self) - } + 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 => { - log.info("Operator closed, exiting handler.") + 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" => { |