aboutsummaryrefslogtreecommitdiff
path: root/kamon-core/src/main/scala/kamon/ModuleSupervisor.scala
diff options
context:
space:
mode:
Diffstat (limited to 'kamon-core/src/main/scala/kamon/ModuleSupervisor.scala')
-rw-r--r--kamon-core/src/main/scala/kamon/ModuleSupervisor.scala3
1 files changed, 2 insertions, 1 deletions
diff --git a/kamon-core/src/main/scala/kamon/ModuleSupervisor.scala b/kamon-core/src/main/scala/kamon/ModuleSupervisor.scala
index 99d87719..7e82f80a 100644
--- a/kamon-core/src/main/scala/kamon/ModuleSupervisor.scala
+++ b/kamon-core/src/main/scala/kamon/ModuleSupervisor.scala
@@ -21,7 +21,7 @@ trait ModuleSupervisorExtension extends actor.Extension {
class ModuleSupervisorExtensionImpl(system: ExtendedActorSystem) extends ModuleSupervisorExtension {
import system.dispatcher
- private lazy val supervisor = system.actorOf(Props[ModuleSupervisor], "kamon")
+ private val supervisor = system.actorOf(Props[ModuleSupervisor], "kamon")
def createModule(name: String, props: Props): Future[ActorRef] = Future {} flatMap { _: Unit ⇒
val modulePromise = Promise[ActorRef]()
@@ -37,6 +37,7 @@ class ModuleSupervisor extends Actor with ActorLogging {
}
def createChildModule(name: String, props: Props, childPromise: Promise[ActorRef]): Unit = {
+
context.child(name).map { alreadyAvailableModule ⇒
log.warning("Received a request to create module [{}] but the module is already available, returning the existent one.")
childPromise.complete(Success(alreadyAvailableModule))