core: refactor http webclient part 8 #8529 (#7725)

Replay Remove automapper commit after rebase
This commit is contained in:
Cory
2020-03-18 18:27:22 -05:00
committed by ngosang
parent 79fa3b9e0d
commit 1184a9285a
3 changed files with 3 additions and 25 deletions

View File

@@ -114,14 +114,9 @@ namespace Jackett.Common.Utils.Clients
var result = await Run(request);
lastRequest = DateTime.Now;
result.Request = request;
var stringResult = Mapper.Map<WebClientStringResult>(result);
WebClientStringResult stringResult = result;
string decodedContent = null;
if (result.ContentBytes != null)
decodedContent = result.Encoding.GetString(result.ContentBytes);
stringResult.ContentString = decodedContent;
logger.Debug(string.Format("WebClient({0}): Returning {1} => {2}", ClientType, result.Status, (result.IsRedirect ? result.RedirectingTo + " " : "") + (decodedContent == null ? "<NULL>" : decodedContent)));
logger.Debug(string.Format("WebClient({0}): Returning {1} => {2}", ClientType, result.Status, (result.IsRedirect ? result.RedirectingTo + " " : "") + (stringResult.ContentString ?? "<NULL>")));
if (stringResult.Headers.TryGetValue("server", out var server))
{

View File

@@ -6,7 +6,7 @@ namespace Jackett.Common.Utils.Clients
public static implicit operator WebClientStringResult(WebClientByteResult br) => new WebClientStringResult()
{
ContentString = br.Encoding.GetString(br.ContentBytes),
ContentString = br.ContentBytes == null ? null : br.Encoding.GetString(br.ContentBytes),
Cookies = br.Cookies,
Encoding = br.Encoding,
Headers = br.Headers,

View File

@@ -73,23 +73,6 @@ namespace Jackett.Server
// TODO: fix deprecation warning (remove #pragma to see the build warning)
Mapper.Initialize(cfg =>
{
cfg.CreateMap<WebClientByteResult, WebClientStringResult>().ForMember(x => x.ContentString, opt => opt.Ignore()).AfterMap((be, str) =>
{
var encoding = be.Request.Encoding ?? Encoding.UTF8;
str.ContentString = encoding.GetString(be.ContentBytes);
});
cfg.CreateMap<WebClientStringResult, WebClientByteResult>().ForMember(x => x.ContentBytes, opt => opt.Ignore()).AfterMap((str, be) =>
{
if (!string.IsNullOrEmpty(str.ContentString))
{
var encoding = str.Request.Encoding ?? Encoding.UTF8;
be.ContentBytes = encoding.GetBytes(str.ContentString);
}
});
cfg.CreateMap<WebClientStringResult, WebClientStringResult>();
cfg.CreateMap<WebClientByteResult, WebClientByteResult>();
cfg.CreateMap<ReleaseInfo, ReleaseInfo>();
cfg.CreateMap<ReleaseInfo, TrackerCacheResult>().AfterMap((r, t) =>