in src/main/java/org/apache/sling/servlets/resolver/internal/bundle/BundledScriptTracker.java [650:667]
private void collectInheritanceChain(@NotNull Set<TypeProvider> providers, @NotNull BundleWiring wiring,
@NotNull String extendedResourceType, @NotNull Map<BundleCapability, BundledRenderUnitCapability> cache) {
for (BundleWire wire : wiring.getRequiredWires(NS_SLING_SERVLET)) {
BundledRenderUnitCapability wiredCapability = cache.computeIfAbsent(wire.getCapability(), BundledRenderUnitCapabilityImpl::fromBundleCapability);
if (wiredCapability.getSelectors().isEmpty()) {
for (ResourceType resourceType : wiredCapability.getResourceTypes()) {
if (extendedResourceType.equals(resourceType.getType())) {
Bundle providingBundle = wire.getProvider().getBundle();
providers.add(new TypeProviderImpl(wiredCapability, providingBundle));
String wiredExtends = wiredCapability.getExtendedResourceType();
if (StringUtils.isNotEmpty(wiredExtends)) {
collectInheritanceChain(providers, wire.getProviderWiring(), wiredExtends, cache);
}
}
}
}
}
}