SxE sets for Episode objects cannot be cached because the same Episode (by ID) may have different episode numbers depending on the order (e.g. Airdate VS DVD order)
This commit is contained in:
parent
adc068fa32
commit
2329104bad
|
@ -52,14 +52,13 @@ public enum EpisodeMetrics implements SimilarityMetric {
|
||||||
return emptySet();
|
return emptySet();
|
||||||
}
|
}
|
||||||
|
|
||||||
return transformCache.computeIfAbsent(object, key -> {
|
// SxE sets for Episode objects cannot be cached because the same Episode (by ID) may have different episode numbers depending on the order (e.g. Airdate VS DVD order)
|
||||||
if (object instanceof Episode) {
|
if (object instanceof Episode) {
|
||||||
Episode episode = (Episode) object;
|
Episode episode = (Episode) object;
|
||||||
return parse(episode);
|
return parse(episode);
|
||||||
}
|
}
|
||||||
|
|
||||||
return super.parse(object);
|
return transformCache.computeIfAbsent(object, super::parse);
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private Set<SxE> parse(Episode e) {
|
private Set<SxE> parse(Episode e) {
|
||||||
|
@ -173,7 +172,7 @@ public enum EpisodeMetrics implements SimilarityMetric {
|
||||||
public Object getTitle(Object o) {
|
public Object getTitle(Object o) {
|
||||||
if (o instanceof Episode) {
|
if (o instanceof Episode) {
|
||||||
Episode e = (Episode) o;
|
Episode e = (Episode) o;
|
||||||
return String.format("%s %s", e.getSeriesName(), e.getTitle());
|
return e.getSeriesName() + " " + e.getTitle();
|
||||||
}
|
}
|
||||||
return o;
|
return o;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue