diff options
author | Jesse Luehrs <doy@tozt.net> | 2013-02-13 10:26:39 -0600 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2013-02-13 10:26:39 -0600 |
commit | 6e743ddc61bd70594a9f039c72715b183de7786e (patch) | |
tree | 0d537e67499178a1f6c3e696013f24a4e027d445 | |
parent | 5e377f152de4073c79abcf4efb4507306604b170 (diff) | |
download | scala-di-test-6e743ddc61bd70594a9f039c72715b183de7786e.tar.gz scala-di-test-6e743ddc61bd70594a9f039c72715b183de7786e.zip |
allow non-singleton lifecycle services too
-rw-r--r-- | src/main/scala/myapp/cake/container.scala | 7 | ||||
-rw-r--r-- | src/main/scala/myapp/cake/services.scala | 6 |
2 files changed, 7 insertions, 6 deletions
diff --git a/src/main/scala/myapp/cake/container.scala b/src/main/scala/myapp/cake/container.scala index 7c40880..6437c8b 100644 --- a/src/main/scala/myapp/cake/container.scala +++ b/src/main/scala/myapp/cake/container.scala @@ -42,7 +42,8 @@ class Container ( username: String = "doy", password: String = "blah" ) extends HasApplication with HasLogger with HasDatabase { - lazy val application = new Application - lazy val logger = new Logger(logFileName) - lazy val database = Database.connect(dsn, username, password) + def application = new Application + // def logger = new Logger(logFileName) // non-singleton + lazy val logger = new Logger(logFileName) // singleton + def database = Database.connect(dsn, username, password) } diff --git a/src/main/scala/myapp/cake/services.scala b/src/main/scala/myapp/cake/services.scala index 99be3d5..6d4a860 100644 --- a/src/main/scala/myapp/cake/services.scala +++ b/src/main/scala/myapp/cake/services.scala @@ -6,7 +6,7 @@ import myapp.logger.Logger trait HasApplication { type ApplicationType - val application: ApplicationType with ApplicationService + def application (): ApplicationType with ApplicationService trait ApplicationService { def run (): Unit @@ -16,7 +16,7 @@ trait HasApplication { trait HasDatabase { type DatabaseType - val database: DatabaseType with DatabaseService + def database (): DatabaseType with DatabaseService trait DatabaseService extends Database } @@ -24,7 +24,7 @@ trait HasDatabase { trait HasLogger { type LoggerType - val logger: LoggerType with LoggerService + def logger (): LoggerType with LoggerService trait LoggerService extends Logger } |