This is an automated email from the ASF dual-hosted git repository. reschke pushed a commit to branch SLING-12701b in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-resourceresolver.git
commit 6eab844cdba77b7c43429dd19072a5b183240338 Author: Julian Reschke <[email protected]> AuthorDate: Tue Apr 1 16:43:54 2025 +0100 SLING-12701: Resource Resolver: MapEntries - move alias handling into inner class - add missing changes --- .../impl/mapping/AliasMapEntriesTest.java | 42 +++++++++++++--------- 1 file changed, 25 insertions(+), 17 deletions(-) diff --git a/src/test/java/org/apache/sling/resourceresolver/impl/mapping/AliasMapEntriesTest.java b/src/test/java/org/apache/sling/resourceresolver/impl/mapping/AliasMapEntriesTest.java index d6bd49fb..bba9c33e 100644 --- a/src/test/java/org/apache/sling/resourceresolver/impl/mapping/AliasMapEntriesTest.java +++ b/src/test/java/org/apache/sling/resourceresolver/impl/mapping/AliasMapEntriesTest.java @@ -83,6 +83,8 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { private AtomicLong detectedInvalidAliases; private AtomicLong detectedConflictingAliases; + private static final Runnable NOOP = () -> {}; + public AliasMapEntriesTest() {} private AutoCloseable mockCloser; @@ -150,12 +152,17 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { method.invoke(mapEntries, path, bool); } - private static void removeAlias(MapEntries mapEntries, String contentPath, String path, AtomicBoolean bool) + private static void removeAlias( + MapEntries mapEntries, + ResourceResolver resourceResolver, + String contentPath, + String path, + Runnable callback) throws IllegalAccessException, NoSuchMethodException, InvocationTargetException { - Method method = - MapEntries.class.getDeclaredMethod("removeAlias", String.class, String.class, AtomicBoolean.class); + Method method = MapEntries.AliasHandler.class.getDeclaredMethod( + "removeAlias", ResourceResolver.class, String.class, String.class, Runnable.class); method.setAccessible(true); - method.invoke(mapEntries, contentPath, path, bool); + method.invoke(mapEntries.ah, resourceResolver, contentPath, path, callback); } private static void updateResource(MapEntries mapEntries, String path, AtomicBoolean bool) @@ -394,7 +401,7 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { when(result.getName()).thenReturn("child"); when(result.getValueMap()).thenReturn(buildValueMap(ResourceResolverImpl.PROP_ALIAS, "alias")); - removeAlias(mapEntries, "/parent", "/parent/child", new AtomicBoolean()); + removeAlias(mapEntries, resourceResolver, "/parent", "/parent/child", NOOP); Map<String, Collection<String>> aliasMap = mapEntries.getAliasMap("/parent"); assertEquals(Collections.emptyMap(), aliasMap); @@ -677,7 +684,7 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { assertEquals(1, aliasMap.size()); when(resourceResolver.getResource("/parent/child")).thenReturn(null); - removeAlias(mapEntries, "/parent", "/parent/child", new AtomicBoolean()); + removeAlias(mapEntries, resourceResolver, "/parent", "/parent/child", NOOP); aliasMapEntry = mapEntries.getAliasMap("/parent"); assertEquals(Collections.emptyMap(), aliasMapEntry); @@ -696,7 +703,7 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { assertEquals(1, aliasMap.size()); when(resourceResolver.getResource("/parent/child")).thenReturn(null); - removeAlias(mapEntries, "/parent", "/parent/child", new AtomicBoolean()); + removeAlias(mapEntries, resourceResolver, "/parent", "/parent/child", NOOP); aliasMapEntry = mapEntries.getAliasMap("/parent"); assertEquals(Collections.emptyMap(), aliasMapEntry); @@ -739,7 +746,7 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { when(resourceResolver.getResource("/parent/child/jcr:content")).thenReturn(null); when(result.getChild("jcr:content")).thenReturn(null); - removeAlias(mapEntries, "/parent", "/parent/child/jcr:content", new AtomicBoolean()); + removeAlias(mapEntries, resourceResolver, "/parent", "/parent/child/jcr:content", NOOP); aliasMapEntry = mapEntries.getAliasMap("/parent"); assertEquals(Collections.emptyMap(), aliasMapEntry); @@ -759,7 +766,7 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { assertEquals(1, aliasMap.size()); when(resourceResolver.getResource("/parent/child/jcr:content")).thenReturn(null); when(result.getChild("jcr:content")).thenReturn(null); - removeAlias(mapEntries, "/parent", "/parent/child/jcr:content", new AtomicBoolean()); + removeAlias(mapEntries, resourceResolver, "/parent", "/parent/child/jcr:content", NOOP); aliasMapEntry = mapEntries.getAliasMap("/parent"); assertEquals(Collections.emptyMap(), aliasMapEntry); @@ -804,7 +811,7 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { // remove child jcr:content node when(resourceResolver.getResource("/parent/child/jcr:content")).thenReturn(null); when(childRsrc.getChild("jcr:content")).thenReturn(null); - removeAlias(mapEntries, "/parent", "/parent/child/jcr:content", new AtomicBoolean()); + removeAlias(mapEntries, resourceResolver, "/parent", "/parent/child/jcr:content", NOOP); // test with one node assertEquals(1, aliasMap.size()); @@ -825,7 +832,7 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { assertEquals(List.of("alias", "aliasJcrContent"), aliasMapEntry.get("child")); when(resourceResolver.getResource("/parent/child")).thenReturn(null); - removeAlias(mapEntries, "/parent", "/parent/child", new AtomicBoolean()); + removeAlias(mapEntries, resourceResolver, "/parent", "/parent/child", NOOP); when(resourceResolver.getResource("/parent/child")).thenReturn(childRsrc); addResource(mapEntries, "/parent/child/jcr:content", new AtomicBoolean()); @@ -846,7 +853,7 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { when(resourceResolver.getResource("/parent/child/jcr:content")).thenReturn(null); when(childRsrc.getChild("jcr:content")).thenReturn(null); - removeAlias(mapEntries, "/parent", "/parent/child/jcr:content", new AtomicBoolean()); + removeAlias(mapEntries, resourceResolver, "/parent", "/parent/child/jcr:content", NOOP); assertEquals(1, aliasMap.size()); aliasMapEntry = mapEntries.getAliasMap("/parent"); @@ -865,7 +872,7 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { assertEquals(1, aliasMapEntry.size()); when(resourceResolver.getResource("/parent/child")).thenReturn(null); - removeAlias(mapEntries, "/parent", "/parent/child", new AtomicBoolean()); + removeAlias(mapEntries, resourceResolver, "/parent", "/parent/child", NOOP); assertEquals(0, aliasMap.size()); aliasMapEntry = mapEntries.getAliasMap("/parent"); @@ -896,7 +903,7 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { assertEquals(1, aliasMap.size()); when(resourceResolver.getResource("/parent")).thenReturn(null); - removeAlias(mapEntries, "/", "/parent", new AtomicBoolean()); + removeAlias(mapEntries, resourceResolver, "/", "/parent", NOOP); aliasMapEntry = mapEntries.getAliasMap("/"); assertEquals(Collections.emptyMap(), aliasMapEntry); @@ -915,7 +922,7 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { assertEquals(1, aliasMap.size()); when(resourceResolver.getResource("/parent")).thenReturn(null); - removeAlias(mapEntries, "/", "/parent", new AtomicBoolean()); + removeAlias(mapEntries, resourceResolver, "/", "/parent", NOOP); aliasMapEntry = mapEntries.getAliasMap("/"); assertEquals(Collections.emptyMap(), aliasMapEntry); @@ -958,7 +965,7 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { when(resourceResolver.getResource("/parent/jcr:content")).thenReturn(null); when(result.getChild("jcr:content")).thenReturn(null); - removeAlias(mapEntries, "/", "/parent/jcr:content", new AtomicBoolean()); + removeAlias(mapEntries, resourceResolver, "/", "/parent/jcr:content", NOOP); aliasMapEntry = mapEntries.getAliasMap("/"); assertEquals(Collections.emptyMap(), aliasMapEntry); @@ -1169,8 +1176,9 @@ public class AliasMapEntriesTest extends AbstractMappingMapEntriesTest { @Test public void test_initAliasesAfterDispose() { + MapEntries.AliasHandler ah = mapEntries.ah; mapEntries.dispose(); - boolean enabled = mapEntries.ah.initializeAliases(); + boolean enabled = ah.initializeAliases(); assertFalse("return value (isOptimizeAliasResolutionEnabled) should be false", enabled); } }
