mirror of https://github.com/ErsatzTV/ErsatzTV.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
81 lines
2.4 KiB
81 lines
2.4 KiB
using ErsatzTV.Core.Domain; |
|
using ErsatzTV.Core.Plex; |
|
|
|
namespace ErsatzTV.Core.Interfaces.Plex; |
|
|
|
public interface IPlexServerApiClient |
|
{ |
|
Task<bool> Ping( |
|
PlexConnection connection, |
|
PlexServerAuthToken token); |
|
|
|
Task<Either<BaseError, List<PlexLibrary>>> GetLibraries( |
|
PlexConnection connection, |
|
PlexServerAuthToken token); |
|
|
|
IAsyncEnumerable<PlexMovie> GetMovieLibraryContents( |
|
PlexLibrary library, |
|
PlexConnection connection, |
|
PlexServerAuthToken token); |
|
|
|
IAsyncEnumerable<PlexShow> GetShowLibraryContents( |
|
PlexLibrary library, |
|
PlexConnection connection, |
|
PlexServerAuthToken token); |
|
|
|
Task<Either<BaseError, int>> CountShowSeasons( |
|
PlexShow show, |
|
PlexConnection connection, |
|
PlexServerAuthToken token); |
|
|
|
IAsyncEnumerable<PlexSeason> GetShowSeasons( |
|
PlexLibrary library, |
|
PlexShow show, |
|
PlexConnection connection, |
|
PlexServerAuthToken token); |
|
|
|
Task<Either<BaseError, int>> CountSeasonEpisodes( |
|
PlexSeason season, |
|
PlexConnection connection, |
|
PlexServerAuthToken token); |
|
|
|
IAsyncEnumerable<PlexEpisode> GetSeasonEpisodes( |
|
PlexLibrary library, |
|
PlexSeason season, |
|
PlexConnection connection, |
|
PlexServerAuthToken token); |
|
|
|
Task<Either<BaseError, ShowMetadata>> GetShowMetadata( |
|
PlexLibrary library, |
|
string key, |
|
PlexConnection connection, |
|
PlexServerAuthToken token); |
|
|
|
Task<Either<BaseError, Tuple<MovieMetadata, MediaVersion>>> GetMovieMetadataAndStatistics( |
|
int plexMediaSourceId, |
|
string key, |
|
PlexConnection connection, |
|
PlexServerAuthToken token); |
|
|
|
Task<Either<BaseError, Tuple<EpisodeMetadata, MediaVersion>>> GetEpisodeMetadataAndStatistics( |
|
int plexMediaSourceId, |
|
string key, |
|
PlexConnection connection, |
|
PlexServerAuthToken token); |
|
|
|
Task<Either<BaseError, int>> GetLibraryItemCount( |
|
PlexLibrary library, |
|
PlexConnection connection, |
|
PlexServerAuthToken token); |
|
|
|
IAsyncEnumerable<PlexCollection> GetAllCollections( |
|
PlexConnection connection, |
|
PlexServerAuthToken token, |
|
CancellationToken cancellationToken); |
|
|
|
IAsyncEnumerable<MediaItem> GetCollectionItems( |
|
PlexConnection connection, |
|
PlexServerAuthToken token, |
|
string key, |
|
CancellationToken cancellationToken); |
|
}
|
|
|