rewrite local media scanner (#25)

* spike new scanner

* add existing items to new scanner

* add collection refresh actions

* add tv show metadata and posters

* update metadata and posters when nfo/poster files are updated

* add "remove" action, test for all supported file extensions

* update statistics when primary video file is updated

* reflect that collections are "sourced" from nfo

* implement most scanning actions

* cleanup

* fix startup

* cross-platform scanner tests
This commit is contained in:
Jason Dove
2021-02-15 23:55:19 +00:00
committed by GitHub
parent 1aac2f13c9
commit 8fb23f2edb
24 changed files with 2422 additions and 105 deletions
@@ -1,10 +1,12 @@
using ErsatzTV.Core.Domain;
using System;
using ErsatzTV.Core.Domain;
using LanguageExt;
namespace ErsatzTV.Core.Interfaces.Metadata
{
public interface ILocalFileSystem
{
public DateTime GetLastWriteTime(string path);
public bool IsMediaSourceAccessible(LocalMediaSource localMediaSource);
public Seq<string> FindRelevantVideos(LocalMediaSource localMediaSource);
public bool ShouldRefreshMetadata(LocalMediaSource localMediaSource, MediaItem mediaItem);