clean Sonarr Queue after its treatment
This commit is contained in:
parent
395a5a8226
commit
600a2adb79
4
pom.xml
4
pom.xml
|
@ -24,11 +24,11 @@
|
|||
</repository>
|
||||
</repositories>
|
||||
<dependencies>
|
||||
<!-- most of logic -->
|
||||
<!-- most common logic -->
|
||||
<dependency>
|
||||
<groupId>tv.mangrana</groupId>
|
||||
<artifactId>mangrana-commons</artifactId>
|
||||
<version>7.0.0</version>
|
||||
<version>7.1.2</version>
|
||||
</dependency>
|
||||
|
||||
<!-- needed for runtime -->
|
||||
|
|
|
@ -26,6 +26,7 @@ public class QueueFixer {
|
|||
var distinctRecords = deduplicate(sonarQueue);
|
||||
var recordsToFix = filterFailedImportsOfIdProblem(distinctRecords);
|
||||
recordsToFix.forEach(this::try2FixFailedImport);
|
||||
cleanWorkedElementsFromQueue(sonarQueue, recordsToFix);
|
||||
}
|
||||
|
||||
private List<Record> retrieveQueueRecordsFromSonarr() {
|
||||
|
@ -60,10 +61,29 @@ public class QueueFixer {
|
|||
}
|
||||
}
|
||||
|
||||
private void cleanWorkedElementsFromQueue(List<Record> sonarQueue, List<Record> recordsToFix) {
|
||||
List<String> workedTitles = mapRecord2Title(recordsToFix);
|
||||
List<Integer> recordIds2Delete = filterPresentTitlesFromQueue(sonarQueue, workedTitles);
|
||||
sonarrApiGateway.deleteQueueElements(recordIds2Delete);
|
||||
}
|
||||
|
||||
private boolean recordsWithImportFailureBecauseIdMatching(Record record) {
|
||||
return record.getStatusMessages().stream()
|
||||
.flatMap(status -> status.getMessages().stream())
|
||||
.anyMatch(IMPORT_FAILURE_BECAUSE_MATCHED_BY_ID::equals);
|
||||
}
|
||||
|
||||
private List<String> mapRecord2Title(List<Record> records) {
|
||||
return records.stream()
|
||||
.map(Record::getTitle)
|
||||
.distinct()
|
||||
.toList();
|
||||
}
|
||||
|
||||
private List<Integer> filterPresentTitlesFromQueue(List<Record> sonarQueue, List<String> workedTitles) {
|
||||
return sonarQueue.stream()
|
||||
.filter(r -> workedTitles.contains(r.getTitle()))
|
||||
.map(Record::getId)
|
||||
.toList();
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue