* catch health check cancellation * local library scanner cleanup * emby and jf library scanner cleanup * rework emby movie library scanner * refactor emby movie library scanner * refactor jellyfin movie library scanner * clear etag until after new media has been processed * refactor plex movie library scanner * update changelog
17 lines
698 B
C#
17 lines
698 B
C#
using ErsatzTV.Core.Domain;
|
|
using ErsatzTV.Core.Metadata;
|
|
|
|
namespace ErsatzTV.Core.Interfaces.Repositories;
|
|
|
|
public interface IMediaServerMovieRepository<in TLibrary, TMovie, TEtag> where TLibrary : Library
|
|
where TMovie : Movie
|
|
where TEtag : MediaServerItemEtag
|
|
{
|
|
Task<List<TEtag>> GetExistingMovies(TLibrary library);
|
|
Task<bool> FlagNormal(TLibrary library, TMovie movie);
|
|
Task<Option<int>> FlagUnavailable(TLibrary library, TMovie movie);
|
|
Task<List<int>> FlagFileNotFound(TLibrary library, List<string> movieItemIds);
|
|
Task<Either<BaseError, MediaItemScanResult<TMovie>>> GetOrAdd(TLibrary library, TMovie item);
|
|
Task<Unit> SetEtag(TMovie movie, string etag);
|
|
}
|