현재 Play2.2 응용 프로그램에서 Depalency Injection 용 Scaldi를 사용하고 있습니다.Scaldi 의존성 주입 및 Akka 액터
나는 Scaldi의 웹 사이트에있는 문서를 읽었지만 Akka와 함께 사용하는 방법이 무엇인지 분명하지 않습니다.
내가 내 프로젝트에 지금까지 가지고
class UserService extends ServiceActor with Injection
{
val userManager = inject[UserManager]
def receive = {
case Register(email: String, password: String)
}
}
object UserService extends Service
{
case class Register(email: String, password: String)
override protected val actorRef = Akka.system.actorOf(Props[UserService].withRouter(SmallestMailboxRouter(resizer = Some(resizer))))
}
그런 다음 주입 관리자에 따라 : 나는이 작업을 수행 할 UserManager의 인스턴스를 사용하는 것이 UserService.scala에서
Models/ (Daos and case classes)
User.scala
Services/ (Akka Actors)
UserService.scala
ProfileService.scala
Managers/ (Regular Manager Classes)
UserManager.scala (The Trait Interface)
UserManagerImpl.scala (An actual implementation)
UserManagerMock.scala (Mocked version)
etc..
배우가 모든 작업을 관리자에게 위임하면 조롱받을 수 있습니다.
그러나 관리자가 동반자 개체 인 다른 서비스를 호출해야한다면 어떻게해야합니까? 또는 컴패니언 개체를 통해 참조되는 다른 서비스를 호출하는 서비스?
누군가가 Akka를 Scaldi와 통합하는 방법에 대한 지침이 있습니까?