Removed BaseClass inheritance and legacy logging dependencies. Updated TempFiles to use ILogger<TempFiles> via dependency injection, replaced Logger.Error and Logger.LogDebug with structured logging calls. Cleaned up unused usings and improved log message formatting.
74 lines
1.6 KiB
C#
74 lines
1.6 KiB
C#
using EnvelopeGenerator.ServiceHost.Extensions;
|
|
|
|
namespace EnvelopeGenerator.ServiceHost.Jobs;
|
|
|
|
public class TempFiles
|
|
{
|
|
public string TempPath { get; }
|
|
|
|
private readonly ILogger<TempFiles> _logger;
|
|
|
|
public TempFiles(ILogger<TempFiles> logger)
|
|
{
|
|
_logger = logger;
|
|
var tempDirectoryPath = Path.GetTempPath();
|
|
TempPath = Path.Combine(tempDirectoryPath, "EnvelopeGenerator");
|
|
}
|
|
|
|
public bool Create()
|
|
{
|
|
try
|
|
{
|
|
if (!Directory.Exists(TempPath))
|
|
{
|
|
Directory.CreateDirectory(TempPath);
|
|
}
|
|
else
|
|
{
|
|
CleanUpFiles();
|
|
}
|
|
|
|
return true;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
_logger.LogError(ex);
|
|
return false;
|
|
}
|
|
}
|
|
|
|
private bool CleanUpFiles()
|
|
{
|
|
try
|
|
{
|
|
foreach (var fileItem in Directory.GetFiles(TempPath))
|
|
{
|
|
_logger.LogDebug("Deleting tempPath-file: {fileItem} ...", fileItem);
|
|
File.Delete(fileItem);
|
|
}
|
|
|
|
return true;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
_logger.LogError(ex);
|
|
return false;
|
|
}
|
|
}
|
|
|
|
public bool CleanUp()
|
|
{
|
|
try
|
|
{
|
|
_logger.LogDebug("Deleting tempPath-Data: {TempPath} ...", TempPath);
|
|
Directory.Delete(TempPath, true);
|
|
return true;
|
|
}
|
|
catch (Exception ex)
|
|
{
|
|
_logger.LogError(ex);
|
|
return false;
|
|
}
|
|
}
|
|
}
|