in src/main/java/org/apache/sling/bnd/models/ModelsScannerPlugin.java [101:121]
private void generatePackagesHeader(Analyzer analyzer, Collection<String> classNames) {
// get all package names
SortedSet<String> packages = new TreeSet<>();
for (String className : classNames) {
if (StringUtils.contains(className, ".")) {
packages.add(StringUtils.substringBeforeLast(className, "."));
}
}
// eliminate package names for which parent packages exist (they are included automatically)
Set<String> packagesToRemove = new HashSet<>();
for (String packageName : packages) {
if (includesParentPackage(packages, packageName)) {
packagesToRemove.add(packageName);
}
}
packages.removeAll(packagesToRemove);
analyzer.set(MODELS_PACKAGES_HEADER, StringUtils.join(packages, ","));
}