Lagom和inter-PersistentEntity引用

时间:2017-06-16 12:53:16

标签: scala lagom

在Lagom中,聚合根[DDD]每个都表示为PersistentEntity。是否有可能一个PersistentEntity解析并保持对不同PersistentEntity的引用?我找不到任何说明这种情况的Lagom示例。

1 个答案:

答案 0 :(得分:2)

是的,您可以在实体的状态(事件和快照)中保存另一个PersistentEntity的标识符(实体ID)。您可以将PersistentEntityRegistry注入到PersistentEntity类中,就像进入服务impl一样。当您想要向另一个实体发送命令时,您只需按类型和实体ID从注册表中获取PersistentEntityRef。

如果您正在做的事情不是"一劳永逸的"但是你发送一个命令到另一个实体(从你的命令处理程序我假设)并且想要在回复到来时做某事,小心你如何处理该回复,因为交互是异步的。 您可以在以下主题中阅读有关此案例的更多信息: Lagom: Asynchronous Operations in Command Handlers