Files
ClubPenguinServer/MareSynchronosServer/MareSynchronosStaticFilesServer/Utils/RequestFileStreamResultFactory.cs
rootdarkarchon fd0327b2c4 Single file transfer (#26)
* move to single file transfer for server

* fix cache get

---------

Co-authored-by: rootdarkarchon <root.darkarchon@outlook.com>
2023-08-01 16:48:08 +02:00

25 lines
1.1 KiB
C#

using MareSynchronosShared.Metrics;
using MareSynchronosShared.Services;
using MareSynchronosStaticFilesServer.Services;
namespace MareSynchronosStaticFilesServer.Utils;
public class RequestFileStreamResultFactory
{
private readonly MareMetrics _metrics;
private readonly RequestQueueService _requestQueueService;
private readonly IConfigurationService<StaticFilesServerConfiguration> _configurationService;
public RequestFileStreamResultFactory(MareMetrics metrics, RequestQueueService requestQueueService, IConfigurationService<StaticFilesServerConfiguration> configurationService)
{
_metrics = metrics;
_requestQueueService = requestQueueService;
_configurationService = configurationService;
}
public RequestFileStreamResult Create(Guid requestId, MemoryStream ms)
{
return new RequestFileStreamResult(requestId, _configurationService.GetValueOrDefault(nameof(StaticFilesServerConfiguration.DownloadQueueReleaseSeconds), 15),
_requestQueueService, _metrics, ms, "application/octet-stream");
}
}