in doxia-site-model/src/main/java/org/apache/maven/doxia/site/inheritance/DefaultSiteModelInheritanceAssembler.java [239:268]
private List<LinkItem> mergeLinkItemLists(
final List<LinkItem> childList,
final List<LinkItem> parentList,
final URLRebaser urlContainer,
boolean cutParentAfterDuplicate) {
List<LinkItem> items = new ArrayList<>(childList.size() + parentList.size());
for (LinkItem item : parentList) {
if (!items.contains(item) && !childList.contains(item)) {
final LinkItem clone = item.clone();
rebaseLinkItemPaths(clone, urlContainer);
items.add(clone);
} else if (cutParentAfterDuplicate) {
// if a parent item is found in child, ignore next items (case for breadcrumbs)
// merge ( "B > E", "A > B > C > D" ) -> "A > B > E" (notice missing "C > D")
// see https://issues.apache.org/jira/browse/DOXIASITETOOLS-62
break;
}
}
for (LinkItem item : childList) {
if (!items.contains(item)) {
items.add(item);
}
}
return items;
}