configure grpc client + scanner fixes; need to figure out cors issue
This commit is contained in:
@@ -14,13 +14,13 @@ public class FileScannerService(MediaService mediaService, IConfiguration config
|
||||
|
||||
public Task StartAsync(CancellationToken cancellationToken)
|
||||
{
|
||||
var path = config["SCAN_PATH"];
|
||||
var path = config["SCAN_LOCATION"];
|
||||
if (string.IsNullOrWhiteSpace(path))
|
||||
return Task.CompletedTask;
|
||||
_timer = new Timer((_) =>
|
||||
{
|
||||
ScanFilesAsync(path).Wait();
|
||||
}, null, TimeSpan.FromMinutes(1), TimeSpan.FromHours(1));
|
||||
}, null, TimeSpan.FromMinutes(0), TimeSpan.FromHours(1));
|
||||
return Task.CompletedTask;
|
||||
}
|
||||
|
||||
@@ -33,6 +33,7 @@ public class FileScannerService(MediaService mediaService, IConfiguration config
|
||||
|
||||
private async Task ScanFilesAsync(string path)
|
||||
{
|
||||
logger.LogInformation("Scanning Files");
|
||||
try
|
||||
{
|
||||
var files = Directory.GetFiles(path, "*", SearchOption.AllDirectories);
|
||||
@@ -41,11 +42,22 @@ public class FileScannerService(MediaService mediaService, IConfiguration config
|
||||
foreach (var filePath in files)
|
||||
{
|
||||
var relativePath = Path.GetRelativePath(path, filePath);
|
||||
if (relativePath[0] == '.') //Ignore hidden folders
|
||||
continue;
|
||||
if (existingFiles.Contains(relativePath))
|
||||
continue;
|
||||
entries.Add(MediaEntry.Parse(relativePath));
|
||||
var entry = MediaEntry.Parse(relativePath);
|
||||
if(entry.HasError)
|
||||
{
|
||||
logger.LogError(entry.Error.GetException(), "Failed to parse file data");
|
||||
continue;
|
||||
}
|
||||
entries.Add(entry);
|
||||
}
|
||||
if(entries.Count > 0) {
|
||||
await mediaService.AddMediaBulkAsync(entries);
|
||||
logger.LogInformation("Added {count} file entries", entries.Count);
|
||||
}
|
||||
await mediaService.AddMediaBulkAsync(entries);
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user