Hi Oleg,
Thanks for the quick response. I needed Scaldi injector instead of Play's is because I would like to use the cool stuffs that your library provides especially the ability to bind to a function. Yes, I read the warning about ScaldiSupport being deprecated and it may be removed in future.
In my situation, I have a multi-project scenario, this base project defines a Page which has a configurable layout, it also provides a default implementation and the depending or top project may chose to override it. I have been avoiding using DI in favor of Scala self-type and plain old factory pattern as I previously had a "wiring-hell" using Guice in my past java projects.
I find the need "retrofit" all the calling functions with an implicit injector when I need to inject[T] is restrictive or even not feasible in situation where I wanted to subclass a 3rd party library and I needed the DI magic. However, I do find having either` Play.current` and `ScaldiSupport.currentInjector` appears to be a bit hacky especially it is sprinkled all over the code.
Finally, I find Scaldi very clean and easy to use and getting it to work with Play is plain simple. Thanks for giving us this nice library.
Regards,
chungonn