protected override bool ReceiveRecover(object message)
{
if (message.CanHandle<RecoveryCompleted>(x =>
{
_log.Debug("Recovered state to version {0}", LastSequenceNr);
}))
return true;
var snapshot = message.ReadMessage<SnapshotOffer>();
if (snapshot.HasValue)
{
var offer = snapshot.Value;
_log.Debug("State loaded from snapshot");
LastSnapshottedVersion = offer.Metadata.SequenceNr;
return RecoverState(offer.Snapshot);
}
if (message.CanHandle<IEvent>(@event =>
{
Apply(@event);
}))
return true;
return false;
}