This is an automated email from the ASF dual-hosted git repository.
pauls pushed a commit to branch master
in repository
https://gitbox.apache.org/repos/asf/sling-org-apache-sling-feature-extension-apiregions.git
The following commit(s) were added to refs/heads/master by this push:
new 1b2097f SLING-8970 - adding test & fixing logic to consider inherited
exports in region checks
1b2097f is described below
commit 1b2097f277c7978de7e07d9052edaa878fccd2a0
Author: Karl Pauls <[email protected]>
AuthorDate: Mon Jan 20 18:30:52 2020 +0100
SLING-8970 - adding test & fixing logic to consider inherited exports in
region checks
---
.../sling/feature/extension/apiregions/api/ApiRegions.java | 9 +++++++--
1 file changed, 7 insertions(+), 2 deletions(-)
diff --git
a/src/main/java/org/apache/sling/feature/extension/apiregions/api/ApiRegions.java
b/src/main/java/org/apache/sling/feature/extension/apiregions/api/ApiRegions.java
index 790d84c..e92908f 100644
---
a/src/main/java/org/apache/sling/feature/extension/apiregions/api/ApiRegions.java
+++
b/src/main/java/org/apache/sling/feature/extension/apiregions/api/ApiRegions.java
@@ -103,11 +103,16 @@ public class ApiRegions {
return false;
}
}
+ Set<ArtifactId> origins = new
LinkedHashSet<>(Arrays.asList(region.getFeatureOrigins()));
+
this.regions.stream()
.filter(
existingRegion ->
- Stream.of(existingRegion.getFeatureOrigins())
-
.anyMatch(Arrays.asList(region.getFeatureOrigins())::contains)
+ {
+ ArtifactId[] targetOrigins =
existingRegion.getFeatureOrigins();
+ return (targetOrigins.length == 0 && origins.isEmpty())
+ ||
Stream.of(targetOrigins).anyMatch(origins::contains);
+ }
).reduce((a,b) -> b).ifPresent(region::setParent);
this.regions.add(region);