我正在使用Scala + Play和Guice设置用于依赖注入的开箱即用。我也在幕后使用Akka Persistence,并希望为自定义阅读日志创建一个绑定,然后我可以在我的应用程序中注入它。如何创建一个相关的Guice(Play/Scala)绑定?
不幸的是,读杂志的构造方法(我不控制)需要明确提到男主角系统:
PersistenceQuery(actorSystem).readJournalFor[CustomReadJournal]("custom-key")
如何从绑定定义类中去的根本actorSystem
参考( Module
)?这可能吗?更一般地,是可以定义相互依存的绑定(一拉Scaldi?)
我Module
类条目目前的样子:提前
bind(classOf[CustomReadJournal]).toInstance(PersistenceQuery(<what do i put here?>).readJournalFor[CustomReadJournal]("custom-journal"))
感谢您的帮助!
你是否已经使用@Provides和提供你的actorSystem作为参数,以便你可以注入?如果您需要提供另一个,则可以使用play.api.libs.concurrent.Akka.system(Play.current)中内置的akka系统进行播放。 – EdgeCaseBerg