wabbajack/Wabbajack.Common/MemoryStreamFactory.cs
2021-10-23 10:51:17 -06:00

27 lines
648 B
C#

using System;
using System.IO;
using System.Threading.Tasks;
using Wabbajack.DTOs.Streams;
using Wabbajack.Paths;
namespace Wabbajack.Common;
public class MemoryStreamFactory : IStreamFactory
{
private readonly MemoryStream _data;
public MemoryStreamFactory(MemoryStream data, IPath path, DateTime lastModified)
{
_data = data;
Name = path;
LastModifiedUtc = lastModified;
}
public ValueTask<Stream> GetStream()
{
return new ValueTask<Stream>(new MemoryStream(_data.GetBuffer(), 0, (int) _data.Length));
}
public DateTime LastModifiedUtc { get; }
public IPath Name { get; }
}