private async Task EnrichWithHashAndUploadAsync(UploadAssetCommand command, string tempFile) { using (var hashStream = new HasherStream(command.File.OpenRead(), HashAlgorithmName.SHA256)) { await assetFileStore.UploadAsync(tempFile, hashStream); command.FileHash = $"{hashStream.GetHashStringAndReset()}{command.File.FileName}{command.File.FileSize}".Sha256Base64(); } }
private async Task <string> UploadAsync(CommandContext context, AssetFile file) { string hash; using (var hashStream = new HasherStream(file.OpenRead(), HashAlgorithmName.SHA256)) { await assetStore.UploadAsync(context.ContextId.ToString(), hashStream); hash = $"{hashStream.GetHashStringAndReset()}{file.FileName}{file.FileSize}".Sha256Base64(); } return(hash); }
private static string ComputeHash(AssetFile file, HasherStream hashStream) { var steamHash = hashStream.GetHashStringAndReset(); return($"{steamHash}{file.FileName}{file.FileSize}".ToSha256Base64()); }