|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object akka.actor.SupervisorStrategy akka.actor.OneForOneStrategy
public class OneForOneStrategy
Applies the fault handling Directive
(Resume, Restart, Stop) specified in the Decider
to the child actor that failed, as opposed to AllForOneStrategy
that applies
it to all children.
param: maxNrOfRetries the number of times a child actor is allowed to be restarted, negative value means no limit,
if the limit is exceeded the child actor is stopped
param: withinTimeRange duration of the time window for maxNrOfRetries, Duration.Inf means no window
param: decider mapping from Throwable to SupervisorStrategy.Directive
, you can also use a
Seq
of Throwables which maps the given Throwables to restarts, otherwise escalates.
param: loggingEnabled the strategy logs the failure if this is enabled (true), by default it is enabled
Nested Class Summary |
---|
Nested classes/interfaces inherited from class akka.actor.SupervisorStrategy |
---|
SupervisorStrategy.Directive, SupervisorStrategy.Escalate$, SupervisorStrategy.Restart$, SupervisorStrategy.Resume$, SupervisorStrategy.Stop$ |
Constructor Summary | |
---|---|
OneForOneStrategy(boolean loggingEnabled,
scala.PartialFunction<java.lang.Throwable,SupervisorStrategy.Directive> decider)
Java API: compatible with lambda expressions This is an EXPERIMENTAL feature and is subject to change until it has received more real world testing. |
|
OneForOneStrategy(int maxNrOfRetries,
scala.concurrent.duration.Duration withinTimeRange,
boolean loggingEnabled,
scala.PartialFunction<java.lang.Throwable,SupervisorStrategy.Directive> decider)
|
|
OneForOneStrategy(int maxNrOfRetries,
scala.concurrent.duration.Duration withinTimeRange,
Function<java.lang.Throwable,SupervisorStrategy.Directive> decider)
Java API |
|
OneForOneStrategy(int maxNrOfRetries,
scala.concurrent.duration.Duration withinTimeRange,
Function<java.lang.Throwable,SupervisorStrategy.Directive> decider,
boolean loggingEnabled)
Java API |
|
OneForOneStrategy(int maxNrOfRetries,
scala.concurrent.duration.Duration withinTimeRange,
java.lang.Iterable<java.lang.Class<? extends java.lang.Throwable>> trapExit)
Java API |
|
OneForOneStrategy(int maxNrOfRetries,
scala.concurrent.duration.Duration withinTimeRange,
scala.PartialFunction<java.lang.Throwable,SupervisorStrategy.Directive> decider)
Java API: compatible with lambda expressions This is an EXPERIMENTAL feature and is subject to change until it has received more real world testing. |
|
OneForOneStrategy(scala.PartialFunction<java.lang.Throwable,SupervisorStrategy.Directive> decider)
Java API: compatible with lambda expressions This is an EXPERIMENTAL feature and is subject to change until it has received more real world testing. |
Method Summary | |
---|---|
scala.PartialFunction<java.lang.Throwable,SupervisorStrategy.Directive> |
decider()
Returns the Decider that is associated with this SupervisorStrategy. |
void |
handleChildTerminated(ActorContext context,
ActorRef child,
scala.collection.Iterable<ActorRef> children)
This method is called after the child has been removed from the set of children. |
boolean |
loggingEnabled()
Logging of actor failures is done when this is true . |
int |
maxNrOfRetries()
|
void |
processFailure(ActorContext context,
boolean restart,
ActorRef child,
java.lang.Throwable cause,
ChildRestartStats stats,
scala.collection.Iterable<ChildRestartStats> children)
This method is called to act on the failure of a child: restart if the flag is true, stop otherwise. |
scala.concurrent.duration.Duration |
withinTimeRange()
|
Methods inherited from class akka.actor.SupervisorStrategy |
---|
defaultDecider, defaultStrategy, escalate, escalateDefault, handleFailure, logFailure, makeDecider, makeDecider, makeDecider, makeDecider, maxNrOfRetriesOption, restart, restartChild, resume, resumeChild, seqThrowable2Decider, sort, stop, stoppingStrategy, withinTimeRangeOption |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Methods inherited from interface scala.Product |
---|
productArity, productElement, productIterator, productPrefix |
Methods inherited from interface scala.Equals |
---|
canEqual, equals |
Constructor Detail |
---|
public OneForOneStrategy(int maxNrOfRetries, scala.concurrent.duration.Duration withinTimeRange, boolean loggingEnabled, scala.PartialFunction<java.lang.Throwable,SupervisorStrategy.Directive> decider)
public OneForOneStrategy(int maxNrOfRetries, scala.concurrent.duration.Duration withinTimeRange, Function<java.lang.Throwable,SupervisorStrategy.Directive> decider, boolean loggingEnabled)
maxNrOfRetries
- (undocumented)withinTimeRange
- (undocumented)decider
- (undocumented)loggingEnabled
- (undocumented)public OneForOneStrategy(int maxNrOfRetries, scala.concurrent.duration.Duration withinTimeRange, Function<java.lang.Throwable,SupervisorStrategy.Directive> decider)
maxNrOfRetries
- (undocumented)withinTimeRange
- (undocumented)decider
- (undocumented)public OneForOneStrategy(int maxNrOfRetries, scala.concurrent.duration.Duration withinTimeRange, java.lang.Iterable<java.lang.Class<? extends java.lang.Throwable>> trapExit)
maxNrOfRetries
- (undocumented)withinTimeRange
- (undocumented)trapExit
- (undocumented)public OneForOneStrategy(int maxNrOfRetries, scala.concurrent.duration.Duration withinTimeRange, scala.PartialFunction<java.lang.Throwable,SupervisorStrategy.Directive> decider)
maxNrOfRetries
- (undocumented)withinTimeRange
- (undocumented)decider
- (undocumented)public OneForOneStrategy(boolean loggingEnabled, scala.PartialFunction<java.lang.Throwable,SupervisorStrategy.Directive> decider)
loggingEnabled
- (undocumented)decider
- (undocumented)public OneForOneStrategy(scala.PartialFunction<java.lang.Throwable,SupervisorStrategy.Directive> decider)
decider
- (undocumented)Method Detail |
---|
public int maxNrOfRetries()
public scala.concurrent.duration.Duration withinTimeRange()
public boolean loggingEnabled()
SupervisorStrategy
true
.
loggingEnabled
in class SupervisorStrategy
public scala.PartialFunction<java.lang.Throwable,SupervisorStrategy.Directive> decider()
SupervisorStrategy
handleFailure
to obtain the Directive to be applied.
decider
in class SupervisorStrategy
public void handleChildTerminated(ActorContext context, ActorRef child, scala.collection.Iterable<ActorRef> children)
SupervisorStrategy
handleChildTerminated
in class SupervisorStrategy
context
- (undocumented)child
- (undocumented)children
- (undocumented)public void processFailure(ActorContext context, boolean restart, ActorRef child, java.lang.Throwable cause, ChildRestartStats stats, scala.collection.Iterable<ChildRestartStats> children)
SupervisorStrategy
processFailure
in class SupervisorStrategy
context
- (undocumented)restart
- (undocumented)child
- (undocumented)cause
- (undocumented)stats
- (undocumented)children
- (undocumented)
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |