Skip to content

Commit

Permalink
Fix same-state transition for ThingUpdater.
Browse files Browse the repository at this point in the history
Signed-off-by: Yufei Cai <yufei.cai@bosch.io>
  • Loading branch information
yufei-cai committed Apr 18, 2022
1 parent 48c0f53 commit d671946
Showing 1 changed file with 13 additions and 11 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -274,19 +274,21 @@ private FSM.State<State, Data> shutdown(final Object trigger, final Data data) {
}

private void handleTransition(final State previousState, final State nextState) {
switch (nextState) {
case READY, RETRYING -> {
final Duration delay;
if (nextState == State.READY) {
delay = writeInterval;
} else {
backOff = backOff.calculateNextBackOff();
delay = backOff.getRestartDelay();
if (previousState != nextState) {
switch (nextState) {
case READY, RETRYING -> {
final Duration delay;
if (nextState == State.READY) {
delay = writeInterval;
} else {
backOff = backOff.calculateNextBackOff();
delay = backOff.getRestartDelay();
}
startSingleTimer(Control.TICK.name(), Control.TICK, delay);
unstashAll();
}
startSingleTimer(Control.TICK.name(), Control.TICK, delay);
unstashAll();
default -> cancelTimer(Control.TICK.name());
}
default -> cancelTimer(Control.TICK.name());
}
}

Expand Down

0 comments on commit d671946

Please sign in to comment.