public void Save(ByteString id, byte[] bytes) { if (id.IsNull()) { throw new ArgumentNullException(nameof(id)); } if (id.Length != 32) { throw new ArgumentException(nameof(id)); } if (bytes.IsNull()) { throw new ArgumentException(nameof(bytes)); } var fileName = Path.Combine( directory.FullName, HexConvert.FromBytes(id.ToByteArray())); var fileInfo = new FileInfo(fileName); // We assume the hash never collides. if (fileInfo.Exists) { return; } using (var stream = fileInfo.OpenWrite()) stream.Write(bytes, 0, bytes.Length); }
public override string ToString() => HexConvert.FromBytes(bytes);
public override void WriteJson( JsonWriter writer, object value, JsonSerializer serializer) { writer.WriteValue( HexConvert.FromBytes(((ByteString)value).bytes)); }