+per #13944 Send RecoveryComplete message at end of recovery

Fixes #13944

Conflicts:
	akka-docs/rst/scala/code/docs/persistence/PersistenceDocSpec.scala
	akka-persistence/src/main/scala/akka/persistence/Processor.scala
	project/AkkaBuild.scala
This commit is contained in:
Björn Antonsson 2014-06-05 14:07:17 +02:00
parent 3c9483520a
commit 9bcaeff87d
14 changed files with 223 additions and 81 deletions

View file

@ -19,6 +19,8 @@ import static java.util.Arrays.asList;
public class PersistenceDocTest {
public interface SomeOtherMessage {}
public interface ProcessorMethods {
//#processor-id
public String processorId();
@ -49,9 +51,12 @@ public class PersistenceDocTest {
Long sequenceNr = failure.sequenceNr();
Throwable cause = failure.cause();
// ...
} else {
} else if (message instanceof SomeOtherMessage) {
// message not written to journal
}
else {
unhandled(message);
}
}
}
//#definition
@ -127,21 +132,12 @@ public class PersistenceDocTest {
class MyProcessor5 extends UntypedProcessor {
//#recovery-completed
@Override
public void preStart() throws Exception {
super.preStart();
self().tell("FIRST", self());
}
public void onReceive(Object message) throws Exception {
if (message.equals("FIRST")) {
if (message instanceof RecoveryCompleted) {
recoveryCompleted();
getContext().become(active);
unstashAll();
} else if (recoveryFinished()) {
stash();
} else {
active.apply(message);
unhandled(message);
}
}
@ -156,6 +152,9 @@ public class PersistenceDocTest {
if (message instanceof Persistent) {
// ...
}
else {
unhandled(message);
}
}
};
//#recovery-completed