adding buffer size change

This commit is contained in:
2025-12-16 23:12:24 -05:00
parent 15ffda9be9
commit db55acd188

View File

@@ -92,6 +92,8 @@ static async Task ScheduleJobs(Config config, CancellationToken token)
static async Task RunJob(Config config, CancellationToken token) static async Task RunJob(Config config, CancellationToken token)
{ {
using var client = GetClient(config.FTP); using var client = GetClient(config.FTP);
var buffer = Math.Clamp(config.BufferSizeMB ?? 1, 0.5f, 4);
client.BufferSize = (uint)(1024 * 1024 * buffer);
Log.Information($"Connecting to {config.FTP.Host}:{config.FTP.Port} as {config.FTP.UserName}"); Log.Information($"Connecting to {config.FTP.Host}:{config.FTP.Port} as {config.FTP.UserName}");
await client.ConnectAsync(token); await client.ConnectAsync(token);
foreach (var target in config.Targets) foreach (var target in config.Targets)
@@ -144,6 +146,6 @@ static SftpClient GetClient(SFtpTarget target)
} }
public record Config(SFtpTarget FTP, GrabTarget[] Targets, string Schedule); public record Config(SFtpTarget FTP, GrabTarget[] Targets, string Schedule, float? BufferSizeMB = null);
public record SFtpTarget(string Host, int Port, string UserName, bool usePrivateKey, string? Password = null, string? KeyFile = null); public record SFtpTarget(string Host, int Port, string UserName, bool usePrivateKey, string? Password = null, string? KeyFile = null);
public record GrabTarget(string Source, string Destination); public record GrabTarget(string Source, string Destination);