コード例 #1
0
 protected override Snapshot WriteSnapshotImpl(Model model)
 {
     var bytes = _formatter.ToByteArray(model);
     var snapshot = new Snapshot(DateTime.Now, model.Revision);
     _state.Snapshots.Add(snapshot, bytes);
     return snapshot;
 }
コード例 #2
0
ファイル: InMemoryStore.cs プロジェクト: NerdPad/OrigoDB
 protected override Snapshot WriteSnapshotImpl(Model model, ulong lastEntryId)
 {
     var bytes = _snapshotFormatter.ToByteArray(model);
     var snapshot = new Snapshot(DateTime.Now, lastEntryId);
     _state.Snapshots.Add(snapshot, bytes);
     return snapshot;
 }
コード例 #3
0
ファイル: InMemorySnapshotStore.cs プロジェクト: avgx/OrigoDB
 public override Model LoadSnapshot(Snapshot snapshot)
 {
     if (!_state.Snapshots.ContainsKey(snapshot))
     {
         throw new ArgumentException("No such snapshot");
     }
     return _formatter.FromByteArray<Model>(_state.Snapshots[snapshot]);
 }
コード例 #4
0
 public override Model LoadSnapshot(Snapshot snapshot)
 {
     string snapshotName = ((FileSnapshot)snapshot).Name;
     var directory = _config.Location.OfSnapshots;
     var fileName = Path.Combine(directory, snapshotName);
     using (var stream = new FileStream(fileName, FileMode.Open, FileAccess.Read))
     {
         return _formatter.Read<Model>(stream);
     }
 }
コード例 #5
0
ファイル: SnapshotStore.cs プロジェクト: vfabregat/OrigoDB
 public abstract Model LoadSnapshot(Snapshot snapshot);
コード例 #6
0
ファイル: SnapshotStore.cs プロジェクト: quanhb/OrigoDB
 public abstract Model LoadSnapshot(Snapshot snapshot);