Files
2025-02-11 19:45:02 +00:00

28 lines
653 B
C#

namespace Toolkit.Foundation;
public class FileProvider :
IFileProvider
{
public IReadOnlyCollection<string> Get(string path,
FileProviderFilter filter)
{
if (!Directory.Exists(path))
{
return [];
}
List<string> searchPatterns = filter.Extensions.Count > 0
? filter.Extensions.Select(ext => $"*.{ext}").ToList()
: ["*.*"];
List<string> files = [];
foreach (string pattern in searchPatterns)
{
files.AddRange(Directory.EnumerateFiles(path, pattern, SearchOption.TopDirectoryOnly));
}
return files;
}
}