protected override void Because_of() { //save to file BinaryStateSerializer.Save(); //create new serializer, and get loaded state BinaryStateSerializer = new BinaryStateSerializer(Logger.Object); //save loaded state restoredState = BinaryStateSerializer.CurrentState; }
protected override void Establish_context() { base.Establish_context(); if (File.Exists(BinaryStateSerializer.STATE_FILE_NAME)) { File.Delete(BinaryStateSerializer.STATE_FILE_NAME); } createdByDefaultState = BinaryStateSerializer.CurrentState; createdByDefaultState.CurrentUri = uriInStateToSave; }
private void load() { DownloaderState deserialized = null; if (File.Exists(STATE_FILE_NAME)) { try { using (var stream = File.OpenRead(STATE_FILE_NAME)) { deserialized = netDataContractSerializer.Deserialize(stream) as DownloaderState; stream.Close(); } } catch (XmlException e) { deserialized = null; logger.LogException(e); } } if (deserialized != null) { CurrentState = deserialized; } else { CurrentState = new DownloaderState(); } }