mirror of https://github.com/Jackett/Jackett
Update AutoMapper dependency (#12568)
This commit is contained in:
parent
cc749530de
commit
2b1f138d6f
|
@ -3,7 +3,6 @@ using System.Collections.Generic;
|
|||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using AutoMapper;
|
||||
using Jackett.Common.Models;
|
||||
using Jackett.Common.Models.IndexerConfig;
|
||||
using Jackett.Common.Services.Interfaces;
|
||||
|
@ -443,8 +442,8 @@ namespace Jackett.Common.Indexers
|
|||
/// </summary>
|
||||
/// <remarks>
|
||||
/// Number of retries can be overridden for unstable indexers by overriding this property. Note that retry attempts include an
|
||||
/// exponentially increasing delay.
|
||||
///
|
||||
/// exponentially increasing delay.
|
||||
///
|
||||
/// Alternatively, <see cref="EnableConfigurableRetryAttempts()" /> can be called in the constructor to add user configurable options.
|
||||
/// </remarks>
|
||||
protected virtual int NumberOfRetryAttempts
|
||||
|
@ -706,7 +705,7 @@ namespace Jackett.Common.Indexers
|
|||
Cookies = redirRequestCookies,
|
||||
Encoding = Encoding
|
||||
});
|
||||
Mapper.Map(redirectedResponse, incomingResponse);
|
||||
MapperUtil.Mapper.Map(redirectedResponse, incomingResponse);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
<ItemGroup>
|
||||
<PackageReference Include="AngleSharp" Version="0.14.0" />
|
||||
<PackageReference Include="Autofac" Version="5.2.0" />
|
||||
<PackageReference Include="AutoMapper" Version="8.1.1" />
|
||||
<PackageReference Include="AutoMapper" Version="10.1.1" />
|
||||
<PackageReference Include="BencodeNET" Version="3.1.4" />
|
||||
<PackageReference Include="FlareSolverrSharp" Version="2.0.0" />
|
||||
<PackageReference Include="CommandLineParser" Version="2.8.0" />
|
||||
|
|
|
@ -3,11 +3,11 @@ using System.Collections.Generic;
|
|||
using System.Linq;
|
||||
using System.Security.Cryptography;
|
||||
using System.Text;
|
||||
using AutoMapper;
|
||||
using Jackett.Common.Indexers;
|
||||
using Jackett.Common.Models;
|
||||
using Jackett.Common.Models.Config;
|
||||
using Jackett.Common.Services.Interfaces;
|
||||
using Jackett.Common.Utils;
|
||||
using NLog;
|
||||
|
||||
namespace Jackett.Common.Services
|
||||
|
@ -129,7 +129,7 @@ namespace Jackett.Common.Services
|
|||
{
|
||||
foreach (var release in query.Results)
|
||||
{
|
||||
var item = Mapper.Map<TrackerCacheResult>(release);
|
||||
var item = MapperUtil.Mapper.Map<TrackerCacheResult>(release);
|
||||
item.FirstSeen = query.Created;
|
||||
item.Tracker = trackerCache.TrackerName;
|
||||
item.TrackerId = trackerCache.TrackerId;
|
||||
|
|
|
@ -0,0 +1,26 @@
|
|||
using System.Linq;
|
||||
using AutoMapper;
|
||||
using Jackett.Common.Models;
|
||||
using Jackett.Common.Utils.Clients;
|
||||
|
||||
namespace Jackett.Common.Utils
|
||||
{
|
||||
public static class MapperUtil
|
||||
{
|
||||
public static Mapper Mapper = new Mapper(
|
||||
new MapperConfiguration(
|
||||
cfg =>
|
||||
{
|
||||
cfg.CreateMap<WebResult, WebResult>();
|
||||
|
||||
cfg.CreateMap<ReleaseInfo, ReleaseInfo>();
|
||||
|
||||
cfg.CreateMap<ReleaseInfo, TrackerCacheResult>().AfterMap((r, t) =>
|
||||
{
|
||||
t.CategoryDesc = r.Category != null
|
||||
? string.Join(", ", r.Category.Select(x => TorznabCatType.GetCatDesc(x)).Where(x => !string.IsNullOrEmpty(x)))
|
||||
: "";
|
||||
});
|
||||
}));
|
||||
}
|
||||
}
|
|
@ -279,7 +279,7 @@ namespace Jackett.Server.Controllers
|
|||
|
||||
return searchResults.Select(result =>
|
||||
{
|
||||
var item = AutoMapper.Mapper.Map<TrackerCacheResult>(result);
|
||||
var item = MapperUtil.Mapper.Map<TrackerCacheResult>(result);
|
||||
item.Tracker = indexer.DisplayName;
|
||||
item.TrackerId = indexer.Id;
|
||||
item.Peers = item.Peers - item.Seeders; // Use peers as leechers
|
||||
|
@ -411,7 +411,7 @@ namespace Jackett.Server.Controllers
|
|||
Link = new Uri(CurrentIndexer.SiteLink)
|
||||
});
|
||||
|
||||
var proxiedReleases = result.Releases.Select(r => AutoMapper.Mapper.Map<ReleaseInfo>(r)).Select(r =>
|
||||
var proxiedReleases = result.Releases.Select(r => MapperUtil.Mapper.Map<ReleaseInfo>(r)).Select(r =>
|
||||
{
|
||||
r.Link = serverService.ConvertToProxyLink(r.Link, serverUrl, r.Origin.Id, "dl", r.Title);
|
||||
return r;
|
||||
|
@ -496,7 +496,7 @@ namespace Jackett.Server.Controllers
|
|||
var serverUrl = serverService.GetServerUrl(Request);
|
||||
var potatoReleases = result.Releases.Where(r => r.Link != null || r.MagnetUri != null).Select(r =>
|
||||
{
|
||||
var release = AutoMapper.Mapper.Map<ReleaseInfo>(r);
|
||||
var release = MapperUtil.Mapper.Map<ReleaseInfo>(r);
|
||||
release.Link = serverService.ConvertToProxyLink(release.Link, serverUrl, CurrentIndexer.Id, "dl", release.Title);
|
||||
// IMPORTANT: We can't use Uri.ToString(), because it generates URLs without URL encode (links with unicode
|
||||
// characters are broken). We must use Uri.AbsoluteUri instead that handles encoding correctly
|
||||
|
|
|
@ -1,11 +1,6 @@
|
|||
using System.Linq;
|
||||
using System.Text;
|
||||
using Autofac;
|
||||
using AutoMapper;
|
||||
using Jackett.Common.Models;
|
||||
using Jackett.Common.Models.Config;
|
||||
using Jackett.Common.Services.Interfaces;
|
||||
using Jackett.Common.Utils.Clients;
|
||||
using Microsoft.AspNetCore.Hosting;
|
||||
using NLog;
|
||||
#if !NET461
|
||||
|
@ -17,7 +12,6 @@ namespace Jackett.Server
|
|||
public static class Helper
|
||||
{
|
||||
public static IContainer ApplicationContainer { get; set; }
|
||||
private static bool _automapperInitialised = false;
|
||||
|
||||
#if NET461
|
||||
public static IApplicationLifetime applicationLifetime;
|
||||
|
@ -27,14 +21,6 @@ namespace Jackett.Server
|
|||
|
||||
public static void Initialize()
|
||||
{
|
||||
if (_automapperInitialised == false)
|
||||
{
|
||||
//Automapper only likes being initialized once per app domain.
|
||||
//Since we can restart Jackett from the command line it's possible that we'll build the container more than once. (tests do this too)
|
||||
InitAutomapper();
|
||||
_automapperInitialised = true;
|
||||
}
|
||||
|
||||
//Load the indexers
|
||||
ServerService.Initalize();
|
||||
|
||||
|
@ -67,31 +53,6 @@ namespace Jackett.Server
|
|||
|
||||
public static Logger Logger => ApplicationContainer.Resolve<Logger>();
|
||||
|
||||
private static void InitAutomapper()
|
||||
{
|
||||
#pragma warning disable 612, 618
|
||||
// TODO: fix deprecation warning (remove #pragma to see the build warning)
|
||||
Mapper.Initialize(cfg =>
|
||||
{
|
||||
cfg.CreateMap<WebResult, WebResult>();
|
||||
|
||||
cfg.CreateMap<ReleaseInfo, ReleaseInfo>();
|
||||
|
||||
cfg.CreateMap<ReleaseInfo, TrackerCacheResult>().AfterMap((r, t) =>
|
||||
{
|
||||
if (r.Category != null)
|
||||
{
|
||||
t.CategoryDesc = string.Join(", ", r.Category.Select(x => TorznabCatType.GetCatDesc(x)).Where(x => !string.IsNullOrEmpty(x)));
|
||||
}
|
||||
else
|
||||
{
|
||||
t.CategoryDesc = "";
|
||||
}
|
||||
});
|
||||
});
|
||||
#pragma warning restore 612, 618
|
||||
}
|
||||
|
||||
public static void SetupLogging(ContainerBuilder builder) =>
|
||||
builder?.RegisterInstance(LogManager.GetCurrentClassLogger()).SingleInstance();
|
||||
|
||||
|
|
|
@ -55,7 +55,7 @@
|
|||
<ItemGroup>
|
||||
<PackageReference Include="Autofac" Version="5.2.0" />
|
||||
<PackageReference Include="Autofac.Extensions.DependencyInjection" Version="6.0.0" />
|
||||
<PackageReference Include="AutoMapper" Version="8.1.1" />
|
||||
<PackageReference Include="AutoMapper" Version="10.1.1" />
|
||||
<PackageReference Include="CommandLineParser" Version="2.8.0" />
|
||||
<PackageReference Include="NLog" Version="4.7.5" />
|
||||
<PackageReference Include="NLog.Web.AspNetCore" Version="4.9.3" />
|
||||
|
|
Loading…
Reference in New Issue