protected override bool ReceiveCommand(object message)
{
if (message is Cmd)
{
var cmd = (Cmd) message;
Persist(cmd.Payload, _ => SaveSnapshot(cmd.Payload));
}
else if (message is DeleteSnapshot)
DeleteSnapshot(((DeleteSnapshot)message).SequenceNr);
else if (message is DeleteSnapshots)
DeleteSnapshots(((DeleteSnapshots)message).Criteria);
else if (message is SaveSnapshotSuccess)
_probe.Tell(((SaveSnapshotSuccess)message).Metadata.SequenceNr);
else
_probe.Tell(message);
return true;
}
}