Skip to content

Commit 531cf9e

Browse files
committed
Updates & improvements
1 parent 4f4a107 commit 531cf9e

File tree

13 files changed

+379
-270
lines changed

13 files changed

+379
-270
lines changed

SmartImage.Lib/Engines/BaseSearchEngine.cs

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,6 @@ public virtual SearchResult GetResult(ImageQuery query)
4343

4444
public async Task<SearchResult> GetResultAsync(ImageQuery query)
4545
{
46-
// todo: use cts?
4746

4847
var task = Task.Run(delegate
4948
{

SmartImage.Lib/Engines/Impl/SauceNaoEngine.cs

Lines changed: 21 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,8 @@
1818
using JsonArray = System.Json.JsonArray;
1919
using JsonObject = System.Json.JsonObject;
2020
// ReSharper disable PropertyCanBeMadeInitOnly.Local
21+
// ReSharper disable StringLiteralTypo
22+
// ReSharper disable UnusedAutoPropertyAccessor.Local
2123

2224
// ReSharper disable PossibleMultipleEnumeration
2325

@@ -38,16 +40,15 @@ public sealed class SauceNaoEngine : BaseSearchEngine
3840
private const string ENDPOINT = BASE_URL + "search.php";
3941

4042
private readonly RestClient m_client;
41-
42-
// todo
43+
4344

4445
public SauceNaoEngine(string authentication) : base(BASIC_RESULT)
4546
{
4647
m_client = new RestClient(ENDPOINT);
4748
Authentication = authentication;
4849
}
4950

50-
public SauceNaoEngine() : this(String.Empty) { } //todo
51+
public SauceNaoEngine() : this(String.Empty) { }
5152

5253
public string Authentication { get; init; }
5354

@@ -176,9 +177,9 @@ public override SearchResult GetResult(ImageQuery url)
176177

177178
// aggregate all info for primary result
178179

179-
string character = orig.FirstOrDefault(o => !String.IsNullOrWhiteSpace(o.Character))?.Character;
180-
string creator = orig.FirstOrDefault(o => !String.IsNullOrWhiteSpace(o.Creator))?.Creator;
181-
string material = orig.FirstOrDefault(o => !String.IsNullOrWhiteSpace(o.Material))?.Material;
180+
//string character = orig.FirstOrDefault(o => !String.IsNullOrWhiteSpace(o.Character))?.Character;
181+
//string creator = orig.FirstOrDefault(o => !String.IsNullOrWhiteSpace(o.Creator))?.Creator;
182+
//string material = orig.FirstOrDefault(o => !String.IsNullOrWhiteSpace(o.Material))?.Material;
182183

183184
var extended = orig.AsParallel().Select(ConvertToImageResult);
184185

@@ -193,16 +194,15 @@ public override SearchResult GetResult(ImageQuery url)
193194
return sresult;
194195
}
195196

196-
var best = ordered.First();
197-
198197
// Copy
199-
result.UpdateFrom(best);
200-
201-
result.Characters = character;
202-
result.Artist = creator;
203-
result.Source = material;
198+
result.UpdateFrom(ordered.First());
199+
200+
//result.Characters = character;
201+
//result.Artist = creator;
202+
//result.Source = material;
204203

205-
sresult.OtherResults.AddRange(extended);
204+
sresult.OtherResults.AddRange(ordered);
205+
206206

207207
if (!String.IsNullOrWhiteSpace(Authentication)) {
208208
Debug.WriteLine($"{Name} API key: {Authentication}");
@@ -214,6 +214,7 @@ public override SearchResult GetResult(ImageQuery url)
214214
}
215215

216216
sresult.PrimaryResult = result;
217+
sresult.Consolidate();
217218

218219
return sresult;
219220
}
@@ -266,11 +267,11 @@ private static ImageResult ConvertToImageResult(SauceNaoDataResult sn)
266267
{
267268
Url = String.IsNullOrWhiteSpace(url) ? default : new Uri(url),
268269
Similarity = MathF.Round(sn.Similarity, 2),
269-
Description = sn.WebsiteTitle,
270-
Artist = sn.Creator,
271-
Source = sn.Material,
272-
Characters = sn.Character,
273-
Site = siteName
270+
Description = Strings.NullIfNullOrWhiteSpace(sn.WebsiteTitle),
271+
Artist = Strings.NullIfNullOrWhiteSpace(sn.Creator),
272+
Source = Strings.NullIfNullOrWhiteSpace(sn.Material),
273+
Characters = Strings.NullIfNullOrWhiteSpace(sn.Character),
274+
Site = Strings.NullIfNullOrWhiteSpace(siteName)
274275
};
275276

276277
return imageResult;
@@ -289,9 +290,7 @@ private SauceNaoDataResult[] GetDataResults(string url)
289290
req.AddQueryParameter("url", url);
290291

291292
var res = m_client.Execute(req);
292-
293-
//Debug.WriteLine($"{res.StatusCode}");
294-
293+
295294
if (res.StatusCode == HttpStatusCode.Forbidden) {
296295
return null;
297296
}

0 commit comments

Comments
 (0)