NestExistingFiles

This commit is contained in:
2024-09-24 07:29:47 -07:00
parent c6ace12ef0
commit 484545bda0
4 changed files with 53 additions and 13 deletions

View File

@ -38,6 +38,7 @@ public class FileRead : Shared.FileRead, IFileRead
throw new Exception(cellInstanceConnectionName);
_HttpClient = new();
_StaticFileServer = GetPropertyValue(cellInstanceConnectionName, modelObjectParameters, string.Concat("CellInstance.", cellInstanceName, ".StaticFileServer"));
NestExistingFiles(_FileConnectorConfiguration);
if (!Debugger.IsAttached && fileConnectorConfiguration.PreProcessingMode != FileConnectorConfiguration.PreProcessingModeEnum.Process)
_Timer = new Timer(Callback, null, (int)(fileConnectorConfiguration.FileScanningIntervalInSeconds * 1000), Timeout.Infinite);
else
@ -259,6 +260,17 @@ public class FileRead : Shared.FileRead, IFileRead
#nullable disable
}
private TimeSpan GetNextTimeSpan()
{
TimeSpan result;
string checkFile = Path.Combine(_FileConnectorConfiguration.AlternateTargetFolder, _FileConnectorConfiguration.SourceFileFilter.Split('|')[0]);
if (File.Exists(checkFile))
result = new(DateTime.Now.AddMilliseconds(500).Ticks - DateTime.Now.Ticks);
else
result = new(DateTime.Now.AddSeconds(_FileConnectorConfiguration.FileScanningIntervalInSeconds.Value).Ticks - DateTime.Now.Ticks);
return result;
}
private void Callback(object state)
{
try
@ -276,7 +288,7 @@ public class FileRead : Shared.FileRead, IFileRead
}
try
{
TimeSpan timeSpan = new(DateTime.Now.AddSeconds(_FileConnectorConfiguration.FileScanningIntervalInSeconds.Value).Ticks - DateTime.Now.Ticks);
TimeSpan timeSpan = GetNextTimeSpan();
_ = _Timer.Change((long)timeSpan.TotalMilliseconds, Timeout.Infinite);
}
catch (Exception exception)