private static CommitLogMetadata GetMetadata(MemoryMappedViewStream stream) { stream.Seek(0, SeekOrigin.Begin); return Serializer.DeserializeWithLengthPrefix<CommitLogMetadata>(stream, PrefixStyle.Base128, 1); }
private static void SaveMetadata(MemoryMappedViewStream stream, CommitLogMetadata metadata) { stream.Seek(0, SeekOrigin.Begin); Serializer.SerializeWithLengthPrefix(stream, metadata, PrefixStyle.Base128, 1); }
private static bool TryGetMetadata(MemoryMappedViewStream stream, out CommitLogMetadata metadata) { stream.Seek(0, SeekOrigin.Begin); int length; if (Serializer.TryReadLengthPrefix(stream, PrefixStyle.Base128, out length) && length > 0) { stream.Seek(0, SeekOrigin.Begin); metadata = Serializer.DeserializeWithLengthPrefix<CommitLogMetadata>(stream, PrefixStyle.Base128, 1); return true; } metadata = null; return false; }