Futureコールバック


新しいFutureを作成するのではなく、副作用を生み出すだけで、Futureの完了イベントを監視し、応答する必要がある場合があります.Akkaはこのような状況のためにonComplete、onSuccess、onFailureを用意しています.その後、両者は最初の特例にすぎません.
future onSuccess {
  case "bar"     ⇒ println("Got my bar alright!")
  case x: String ⇒ println("Got some random string: " + x)
}
future onFailure {
  case ise: IllegalStateException if ise.getMessage == "OHNOES" ⇒
  //OHNOES! We are in deep trouble, do something!
  case e: Exception ⇒
  //Do something else
}
future onComplete {
  case Right(result) ⇒ doSomethingOnSuccess(result)
  case Left(failure) ⇒ doSomethingOnFailure(failure)
}