diff --git a/pom.xml b/pom.xml
index d8ece81..30d4993 100644
--- a/pom.xml
+++ b/pom.xml
@@ -11,7 +11,7 @@
life.qbic
data-processing
- 0.3.0
+ 0.3.2
data processing
A Java tool that scans file move events and triggers a cascade of dataset
pre-processing
diff --git a/src/main/java/life/qbic/data/processing/scanner/Scanner.java b/src/main/java/life/qbic/data/processing/scanner/Scanner.java
index c3b6f0a..33e358a 100644
--- a/src/main/java/life/qbic/data/processing/scanner/Scanner.java
+++ b/src/main/java/life/qbic/data/processing/scanner/Scanner.java
@@ -104,8 +104,16 @@ private List detectDataForRegistration() {
.map(Path::toFile)
.filter(this::matchesAccessRightsCriteria)
.filter(this::matchesRegistrationCriteria)
- .map(file -> createRequests(file.listFiles(), file.toPath())).flatMap(
- Collection::stream).toList();
+ .map(processDir -> createRequests(
+ applyFilterForProcessDir(processDir.listFiles()),
+ processDir.toPath()))
+ .flatMap(Collection::stream).toList();
+ }
+
+ private File[] applyFilterForProcessDir(File[] processDirContent) {
+ return Arrays.stream(Objects.requireNonNull(processDirContent))
+ .filter(this::matchesAccessRightsCriteria)
+ .filter(this::matchesRegistrationCriteria).toArray(File[]::new);
}
private boolean matchesAccessRightsCriteria(File file) {