Refactor providers

This commit is contained in:
xjasonlyu
2022-07-03 12:17:41 +08:00
parent 6aa2a08781
commit e3ddb578ed
5 changed files with 12 additions and 57 deletions

View File

@@ -4,7 +4,6 @@ using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Providers;
#if __EMBY__
using MediaBrowser.Common.Net;
using MediaBrowser.Model.Logging;
using MediaBrowser.Model.Configuration;
@@ -17,11 +16,9 @@ namespace Jellyfin.Plugin.JavTube.Providers;
public class ActorImageProvider : BaseProvider, IRemoteImageProvider, IHasOrder
{
#if __EMBY__
public ActorImageProvider(IHttpClient httpClient, ILogManager logManager) :
base(httpClient, logManager.CreateLogger<ActorImageProvider>())
public ActorImageProvider(ILogManager logManager) : base(logManager.CreateLogger<ActorImageProvider>())
#else
public ActorImageProvider(IHttpClientFactory httpClientFactory, ILogger<ActorImageProvider> logger) : base(
httpClientFactory, logger)
public ActorImageProvider( ILogger<ActorImageProvider> logger) : base(logger)
#endif
{
}

View File

@@ -4,7 +4,6 @@ using MediaBrowser.Controller.Entities;
using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Providers;
#if __EMBY__
using MediaBrowser.Common.Net;
using MediaBrowser.Model.Logging;
#else
@@ -16,12 +15,9 @@ namespace Jellyfin.Plugin.JavTube.Providers;
public class ActorProvider : BaseProvider, IRemoteMetadataProvider<Person, PersonLookupInfo>, IHasOrder
{
#if __EMBY__
public ActorProvider(IHttpClient httpClient, ILogManager logManager) : base(
httpClient,
logManager.CreateLogger<ActorProvider>())
public ActorProvider(ILogManager logManager) : base(logManager.CreateLogger<ActorProvider>())
#else
public ActorProvider(IHttpClientFactory httpClientFactory, ILogger<ActorProvider> logger) : base(
httpClientFactory, logger)
public ActorProvider(ILogger<ActorProvider> logger) : base(logger)
#endif
{
}

View File

@@ -2,7 +2,6 @@ using Jellyfin.Plugin.JavTube.Configuration;
#if __EMBY__
using MediaBrowser.Common.Net;
using MediaBrowser.Model.Logging;
using HttpRequestOptions = MediaBrowser.Common.Net.HttpRequestOptions;
#else
using Microsoft.Extensions.Logging;
@@ -14,24 +13,14 @@ namespace Jellyfin.Plugin.JavTube.Providers;
public abstract class BaseProvider
{
protected readonly ILogger Logger;
protected static PluginConfiguration Configuration => Plugin.Instance.Configuration;
#if __EMBY__
private readonly IHttpClient _httpClient;
protected BaseProvider(IHttpClient httpClient, ILogger logger)
protected BaseProvider(ILogger logger)
{
_httpClient = httpClient;
#else
private readonly IHttpClientFactory _httpClientFactory;
protected BaseProvider(IHttpClientFactory httpClientFactory, ILogger logger)
{
_httpClientFactory = httpClientFactory;
#endif
Logger = logger;
}
protected static PluginConfiguration Configuration => Plugin.Instance.Configuration;
public virtual int Order => 1;
public virtual string Name => Plugin.Instance.Name;
@@ -43,26 +32,6 @@ public abstract class BaseProvider
#endif
{
Logger.Debug("GetImageResponse for url: {0}", url);
return GetAsync(url, cancellationToken);
return ApiClient.GetImageResponse(url, cancellationToken);
}
#if __EMBY__
private async Task<HttpResponseInfo> GetAsync(string url, CancellationToken cancellationToken)
{
return await _httpClient.GetResponse(new HttpRequestOptions
{
Url = url,
CancellationToken = cancellationToken,
UserAgent = Plugin.Instance.UserAgent
}).ConfigureAwait(false);
}
#else
private async Task<HttpResponseMessage> GetAsync(string url, CancellationToken cancellationToken)
{
var httpClient = _httpClientFactory.CreateClient(Name);
httpClient.DefaultRequestHeaders
.Add("User-Agent", Plugin.Instance.UserAgent);
return await httpClient.GetAsync(url, cancellationToken).ConfigureAwait(false);
}
#endif
}

View File

@@ -5,7 +5,6 @@ using MediaBrowser.Controller.Providers;
using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Providers;
#if __EMBY__
using MediaBrowser.Common.Net;
using MediaBrowser.Model.Configuration;
using MediaBrowser.Model.Logging;
@@ -18,12 +17,9 @@ namespace Jellyfin.Plugin.JavTube.Providers;
public class MovieImageProvider : BaseProvider, IRemoteImageProvider, IHasOrder
{
#if __EMBY__
public MovieImageProvider(IHttpClient httpClient, ILogManager logManager) : base(
httpClient,
logManager.CreateLogger<MovieImageProvider>())
public MovieImageProvider(ILogManager logManager) : base(logManager.CreateLogger<MovieImageProvider>())
#else
public MovieImageProvider(IHttpClientFactory httpClientFactory, ILogger<MovieImageProvider> logger) : base(
httpClientFactory, logger)
public MovieImageProvider(ILogger<MovieImageProvider> logger) : base(logger)
#endif
{
}

View File

@@ -8,7 +8,6 @@ using MediaBrowser.Model.Entities;
using MediaBrowser.Model.Providers;
using MovieInfo = MediaBrowser.Controller.Providers.MovieInfo;
#if __EMBY__
using MediaBrowser.Common.Net;
using MediaBrowser.Model.Logging;
#else
@@ -23,11 +22,9 @@ public class MovieProvider : BaseProvider, IRemoteMetadataProvider<Movie, MovieI
private const string Rating = "JP-18+";
#if __EMBY__
public MovieProvider(IHttpClient httpClient, ILogManager logManager) : base(
httpClient, logManager.CreateLogger<MovieProvider>())
public MovieProvider(ILogManager logManager) : base(logManager.CreateLogger<MovieProvider>())
#else
public MovieProvider(IHttpClientFactory httpClientFactory, ILogger<MovieProvider> logger) : base(
httpClientFactory, logger)
public MovieProvider(ILogger<MovieProvider> logger) : base(logger)
#endif
{
}