Package akka.actor.typed
Class RestartSupervisorStrategy
- java.lang.Object
-
- akka.actor.typed.SupervisorStrategy
-
- akka.actor.typed.RestartSupervisorStrategy
-
public abstract class RestartSupervisorStrategy extends SupervisorStrategy
Not for user extension
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class akka.actor.typed.SupervisorStrategy
SupervisorStrategy.Backoff$, SupervisorStrategy.Restart$, SupervisorStrategy.RestartOrBackoff, SupervisorStrategy.Resume$, SupervisorStrategy.Stop$
-
-
Constructor Summary
Constructors Constructor Description RestartSupervisorStrategy()
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description abstract RestartSupervisorStrategy
withLimit(int maxNrOfRetries, java.time.Duration withinTimeRange)
Java API: Restart with a limit of number of restart retries.abstract RestartSupervisorStrategy
withLimit(int maxNrOfRetries, scala.concurrent.duration.FiniteDuration withinTimeRange)
Scala API: Restart with a limit of number of restart retries.abstract RestartSupervisorStrategy
withLoggingEnabled(boolean enabled)
abstract RestartSupervisorStrategy
withLogLevel(org.slf4j.event.Level level)
abstract RestartSupervisorStrategy
withStashCapacity(int capacity)
While restarting (waiting for children to stop) incoming messages and signals are stashed, and delivered later to the newly restarted behavior.abstract RestartSupervisorStrategy
withStopChildren(boolean enabled)
Stop or keep child actors when the parent actor is restarted.-
Methods inherited from class akka.actor.typed.SupervisorStrategy
loggingEnabled, logLevel, restart, restartWithBackoff, restartWithBackoff, resume, stop
-
-
-
-
Method Detail
-
withLimit
public abstract RestartSupervisorStrategy withLimit(int maxNrOfRetries, scala.concurrent.duration.FiniteDuration withinTimeRange)
Scala API: Restart with a limit of number of restart retries. The number of restarts are limited to a number of restart attempts (maxNrOfRetries
) within a time range (withinTimeRange
). When the time window has elapsed without reachingmaxNrOfRetries
the restart count is reset.The strategy is applied also if the actor behavior is deferred and throws an exception during startup.
- Parameters:
maxNrOfRetries
- the number of times a child actor is allowed to be restarted, if the limit is exceeded the child actor is stoppedwithinTimeRange
- duration of the time window for maxNrOfRetries
-
withLimit
public abstract RestartSupervisorStrategy withLimit(int maxNrOfRetries, java.time.Duration withinTimeRange)
Java API: Restart with a limit of number of restart retries. The number of restarts are limited to a number of restart attempts (maxNrOfRetries
) within a time range (withinTimeRange
). When the time window has elapsed without reachingmaxNrOfRetries
the restart count is reset.The strategy is applied also if the actor behavior is deferred and throws an exception during startup.
- Parameters:
maxNrOfRetries
- the number of times a child actor is allowed to be restarted, if the limit is exceeded the child actor is stoppedwithinTimeRange
- duration of the time window for maxNrOfRetries
-
withLogLevel
public abstract RestartSupervisorStrategy withLogLevel(org.slf4j.event.Level level)
- Specified by:
withLogLevel
in classSupervisorStrategy
-
withLoggingEnabled
public abstract RestartSupervisorStrategy withLoggingEnabled(boolean enabled)
- Specified by:
withLoggingEnabled
in classSupervisorStrategy
-
withStashCapacity
public abstract RestartSupervisorStrategy withStashCapacity(int capacity)
While restarting (waiting for children to stop) incoming messages and signals are stashed, and delivered later to the newly restarted behavior. This property defines the capacity in number of messages of the stash buffer. If the capacity is exceed then additional incoming messages are dropped.By default the capacity is defined by config property
akka.actor.typed.restart-stash-capacity
.
-
withStopChildren
public abstract RestartSupervisorStrategy withStopChildren(boolean enabled)
Stop or keep child actors when the parent actor is restarted. By default child actors are stopped when parent is restarted.- Parameters:
enabled
- iftrue
then child actors are stopped, otherwise they are kept
-
-