diff options
author | Jesse Luehrs <doy@tozt.net> | 2013-02-12 14:07:48 -0600 |
---|---|---|
committer | Jesse Luehrs <doy@tozt.net> | 2013-02-12 14:07:48 -0600 |
commit | 9074a601970a626a446b5fefed5b30db39092ff6 (patch) | |
tree | 232faeff8ab55e25d2b8d869b878d03ce101f11a /src/main/scala/cake.scala | |
download | scala-di-test-9074a601970a626a446b5fefed5b30db39092ff6.tar.gz scala-di-test-9074a601970a626a446b5fefed5b30db39092ff6.zip |
initial sketch of cake stuff
Diffstat (limited to 'src/main/scala/cake.scala')
-rw-r--r-- | src/main/scala/cake.scala | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/main/scala/cake.scala b/src/main/scala/cake.scala new file mode 100644 index 0000000..51bdcb8 --- /dev/null +++ b/src/main/scala/cake.scala @@ -0,0 +1,24 @@ +package cake + +trait HasLogger extends cake.services.HasLogger { + type LoggerType = Logger + class Logger(logFileName: String) extends cake.logger.FileLogger(logFileName) +} + +trait HasDatabase extends cake.services.HasDatabase { + type DatabaseType = Database + class Database(dsn: String, username: String, password: String) extends cake.database.DBI(dsn, username, password) +} + +trait HasApplication extends cake.services.HasApplication { + this: cake.HasLogger with cake.HasDatabase => + type ApplicationType = Application + class Application extends cake.application.Application(logger, database) +} + +object Container extends HasApplication with HasLogger with HasDatabase { + val logger = new Logger("out.log") + // val database = Database.connect("dbi:mysql:myapp", "doy", "blah") + val database = new Database("dbi:mysql:myapp", "doy", "blah") + val application = new Application +} |