Files
UnrealEngine/Engine/Source/Programs/UnrealCloudDDC/Jupiter.Common/Utils/StreamUtils.cs
2025-05-18 13:04:45 +08:00

29 lines
629 B
C#

// Copyright Epic Games, Inc. All Rights Reserved.
using System.IO;
using System.Threading;
using System.Threading.Tasks;
using EpicGames.AspNet;
using Microsoft.AspNetCore.Http;
namespace Jupiter.Utils
{
public static class StreamUtils
{
public static async Task<byte[]> ToByteArrayAsync(this Stream s, CancellationToken cancellationToken)
{
try
{
await using MemoryStream ms = new MemoryStream();
await s.CopyToAsync(ms, cancellationToken);
return ms.ToArray();
}
catch (BadHttpRequestException e)
{
ClientSendSlowExceptionUtil.MaybeThrowSlowSendException(e);
throw;
}
}
}
}