コマンドがあるとしましょうAddUser
:
case class AddUser(username: String, password: String)
イベントを永続化する前に、このコマンドを検証する最善の方法は何ですか? たとえば、このような方法で行うと、面倒に思えます。
override def receiveCommand: Receive = {
case AddUser(username, password) =>
if (username.trim.length > 25) {
sender() ! UsernameTooLong
} else if (password.trim.length > 25) {
sender() ! PasswordTooLong
} else {
persist(UserAdded(User(username, password))) {
userAdded =>
sender() ! userAdded
}
}
}