From 07abec1108c69cf1f85ae039066e90f14eaca78a Mon Sep 17 00:00:00 2001 From: "Tyler St. Onge" Date: Fri, 25 Sep 2020 17:39:10 -0400 Subject: added subscription model for reporter actors --- .../tylerstonge/honeypot/reporter/LogReporter.scala | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) create mode 100644 src/main/scala/com/tylerstonge/honeypot/reporter/LogReporter.scala (limited to 'src/main/scala/com/tylerstonge/honeypot/reporter') diff --git a/src/main/scala/com/tylerstonge/honeypot/reporter/LogReporter.scala b/src/main/scala/com/tylerstonge/honeypot/reporter/LogReporter.scala new file mode 100644 index 0000000..9b3f28f --- /dev/null +++ b/src/main/scala/com/tylerstonge/honeypot/reporter/LogReporter.scala @@ -0,0 +1,20 @@ +package com.tylerstonge.honeypot.reporter + +import akka.actor.{Actor, Props} +import akka.event.{Logging, LoggingAdapter} +import com.tylerstonge.honeypot.messages.{MFoundFile, MFoundPassword, MFoundUsername} + +class LogReporter extends Actor { + + val log: LoggingAdapter = Logging(context.system, this) + + context.system.eventStream.subscribe(self, classOf[MFoundUsername]) + context.system.eventStream.subscribe(self, classOf[MFoundPassword]) + context.system.eventStream.subscribe(self, classOf[MFoundFile]) + + override def receive: Receive = { + case msg: MFoundUsername => log.info(">> REPORTER >> :: {}", msg.username) + case msg: MFoundPassword => log.info(">> REPORTER >> :: {}", msg.password) + case msg: MFoundFile => log.info(">> REPORTER >> :: {}", msg.filename) + } +} -- cgit v1.1