From 58d6f81d2e569c6c0d87743526c3db76c0fb773e Mon Sep 17 00:00:00 2001 From: Jason Dove Date: Thu, 27 May 2021 21:01:25 -0500 Subject: [PATCH] recursively retrieve jellyfin and emby items (#221) --- ErsatzTV.Infrastructure/Emby/IEmbyApi.cs | 16 ++++++++++++---- ErsatzTV.Infrastructure/Jellyfin/IJellyfinApi.cs | 16 ++++++++++++---- 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/ErsatzTV.Infrastructure/Emby/IEmbyApi.cs b/ErsatzTV.Infrastructure/Emby/IEmbyApi.cs index 318608619..e4d07efec 100644 --- a/ErsatzTV.Infrastructure/Emby/IEmbyApi.cs +++ b/ErsatzTV.Infrastructure/Emby/IEmbyApi.cs @@ -30,7 +30,9 @@ namespace ErsatzTV.Infrastructure.Emby string fields = "Path,Genres,Tags,DateCreated,Etag,Overview,Taglines,Studios,People,ProductionYear,PremiereDate,MediaSources,OfficialRating", [Query] - string includeItemTypes = "Movie"); + string includeItemTypes = "Movie", + [Query] + bool recursive = true); [Get("/Items")] public Task GetShowLibraryItems( @@ -42,7 +44,9 @@ namespace ErsatzTV.Infrastructure.Emby string fields = "Path,Genres,Tags,DateCreated,Etag,Overview,Taglines,Studios,People,ProductionYear,PremiereDate,MediaSources,OfficialRating", [Query] - string includeItemTypes = "Series"); + string includeItemTypes = "Series", + [Query] + bool recursive = true); [Get("/Items")] public Task GetSeasonLibraryItems( @@ -53,7 +57,9 @@ namespace ErsatzTV.Infrastructure.Emby [Query] string fields = "Path,DateCreated,Etag,Taglines", [Query] - string includeItemTypes = "Season"); + string includeItemTypes = "Season", + [Query] + bool recursive = true); [Get("/Items")] public Task GetEpisodeLibraryItems( @@ -64,6 +70,8 @@ namespace ErsatzTV.Infrastructure.Emby [Query] string fields = "Path,DateCreated,Etag,Overview,ProductionYear,PremiereDate,MediaSources,LocationType", [Query] - string includeItemTypes = "Episode"); + string includeItemTypes = "Episode", + [Query] + bool recursive = true); } } diff --git a/ErsatzTV.Infrastructure/Jellyfin/IJellyfinApi.cs b/ErsatzTV.Infrastructure/Jellyfin/IJellyfinApi.cs index a4834e0f5..8d9e88f77 100644 --- a/ErsatzTV.Infrastructure/Jellyfin/IJellyfinApi.cs +++ b/ErsatzTV.Infrastructure/Jellyfin/IJellyfinApi.cs @@ -36,7 +36,9 @@ namespace ErsatzTV.Infrastructure.Jellyfin [Query] string fields = "Path,Genres,Tags,DateCreated,Etag,Overview,Taglines,Studios,People,OfficialRating", [Query] - string includeItemTypes = "Movie"); + string includeItemTypes = "Movie", + [Query] + bool recursive = true); [Get("/Items")] public Task GetShowLibraryItems( @@ -49,7 +51,9 @@ namespace ErsatzTV.Infrastructure.Jellyfin [Query] string fields = "Path,Genres,Tags,DateCreated,Etag,Overview,Taglines,Studios,People,OfficialRating", [Query] - string includeItemTypes = "Series"); + string includeItemTypes = "Series", + [Query] + bool recursive = true); [Get("/Items")] public Task GetSeasonLibraryItems( @@ -62,7 +66,9 @@ namespace ErsatzTV.Infrastructure.Jellyfin [Query] string fields = "Path,DateCreated,Etag,Taglines", [Query] - string includeItemTypes = "Season"); + string includeItemTypes = "Season", + [Query] + bool recursive = true); [Get("/Items")] public Task GetEpisodeLibraryItems( @@ -75,6 +81,8 @@ namespace ErsatzTV.Infrastructure.Jellyfin [Query] string fields = "Path,DateCreated,Etag,Overview", [Query] - string includeItemTypes = "Episode"); + string includeItemTypes = "Episode", + [Query] + bool recursive = true); } }