From 69cba78d94a5ef9696930804978a5336dc137103 Mon Sep 17 00:00:00 2001 From: kennycud Date: Sat, 11 Jan 2025 19:01:13 -0800 Subject: [PATCH] exclude blocked implementation completion --- .../repository/hsqldb/HSQLDBCacheUtils.java | 5 ++++- .../test/repository/HSQLDBCacheUtilsTests.java | 17 ++++++++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/qortal/repository/hsqldb/HSQLDBCacheUtils.java b/src/main/java/org/qortal/repository/hsqldb/HSQLDBCacheUtils.java index 6e8dc8a8..24e2da56 100644 --- a/src/main/java/org/qortal/repository/hsqldb/HSQLDBCacheUtils.java +++ b/src/main/java/org/qortal/repository/hsqldb/HSQLDBCacheUtils.java @@ -180,7 +180,10 @@ public class HSQLDBCacheUtils { Optional reverse) { // retain only candidates with names - Stream stream = candidates.stream().filter(candidate -> candidate.name != null); + Stream stream = candidates.stream().filter(candidate -> candidate.name != null ); + + if(exclude.isPresent()) + stream = stream.filter( candidate -> !exclude.get().get().contains( candidate.name )); // filter by service if( service.isPresent() ) diff --git a/src/test/java/org/qortal/test/repository/HSQLDBCacheUtilsTests.java b/src/test/java/org/qortal/test/repository/HSQLDBCacheUtilsTests.java index 7812dbd7..7a75dea7 100644 --- a/src/test/java/org/qortal/test/repository/HSQLDBCacheUtilsTests.java +++ b/src/test/java/org/qortal/test/repository/HSQLDBCacheUtilsTests.java @@ -399,7 +399,7 @@ public class HSQLDBCacheUtilsTests { } @Test - public void testExcludeBlockedPositive() { + public void testExcludeBlockedNegative() { ArbitraryResourceData data = new ArbitraryResourceData(); data.name = "Joe"; @@ -413,6 +413,21 @@ public class HSQLDBCacheUtilsTests { ); } + @Test + public void testExcludeBlockedPositive() { + + ArbitraryResourceData data = new ArbitraryResourceData(); + data.name = "Joe"; + + Supplier> supplier = () -> List.of("Joe"); + + filterListByMap( + List.of(data), + NAME_LEVEL, new HashMap<>(Map.of(EXCLUDE_BLOCKED, supplier)), + 0 + ); + } + @Test public void testIncludeMetadataPositive() {