private void scanExtensions()

in src/main/java/org/apache/sling/feature/scanner/Scanner.java [176:199]


    private void scanExtensions(final Feature f, final ContainerDescriptor desc) throws IOException {
        for (final Extension ext : f.getExtensions()) {
            if (AnalyserMetaDataExtension.isAnalyserMetaDataExtension(ext)) {
                continue;
            }
            ContainerDescriptor extDesc = null;
            for (final ExtensionScanner scanner : this.extensionScanners) {
                extDesc = scanner.scan(f, ext, this.artifactProvider);
                if (extDesc != null) {
                    break;
                }
            }
            if (extDesc != null) {
                desc.getRequirements().addAll(extDesc.getRequirements());
                desc.getCapabilities().addAll(extDesc.getCapabilities());
                desc.getExportedPackages().addAll(extDesc.getExportedPackages());
                desc.getImportedPackages().addAll(extDesc.getImportedPackages());
                desc.getDynamicImportedPackages().addAll(extDesc.getDynamicImportedPackages());

                desc.getArtifactDescriptors().addAll(extDesc.getArtifactDescriptors());
                desc.getBundleDescriptors().addAll(extDesc.getBundleDescriptors());
            }
        }
    }