pekko/docs/src/main/paradox/futures.md
2022-12-02 10:49:40 +01:00

1.6 KiB

Futures patterns

Dependency

Akka offers tiny helpers for use with @scala[@scaladocFutures]@java[@javadocCompletionStage]. These are part of Akka's core module:

@@dependency[sbt,Maven,Gradle] { bomGroup=com.typesafe.akka bomArtifact=akka-bom_scala.binary.version bomVersionSymbols=AkkaVersion symbol1=AkkaVersion value1="$akka.version$" group="com.typesafe.akka" artifact="akka-actor_$scala.binary.version$" version=AkkaVersion }

After

@scala[org.apache.pekko.pattern.after]@java[@javadocorg.apache.pekko.pattern.Patterns.after] makes it easy to complete a @scala[@scaladocFuture]@java[@javadocCompletionStage] with a value or exception after a timeout.

Scala
@@snip FutureDocSpec.scala { #after }
Java
@@snip FutureDocTest.java { #imports #after }

Retry

@scala[org.apache.pekko.pattern.retry]@java[@javadocorg.apache.pekko.pattern.Patterns.retry] will retry a @scala[@scaladocFuture]@java[@javadocCompletionStage] some number of times with a delay between each attempt.

Scala
@@snip FutureDocSpec.scala { #retry }
Java
@@snip FutureDocTest.java { #imports #retry }