41
41
42
42
import com .sun .source .doctree .DeprecatedTree ;
43
43
import com .sun .source .doctree .DocTree ;
44
+ import java .util .function .Predicate ;
44
45
import java .util .stream .Collectors ;
45
46
46
47
import jdk .javadoc .doclet .DocletEnvironment .ModuleMode ;
@@ -591,14 +592,10 @@ protected void addPackagesSummary(Content summariesList) {
591
592
.anyMatch (rd -> rd .isTransitive () &&
592
593
javaBase .equals (rd .getDependency ()));
593
594
if (hasRequiresTransitiveJavaBase ) {
594
- Map <ModuleElement , SortedSet <PackageElement >> filteredIndirectPackages =
595
- indirectPackages .entrySet ()
596
- .stream ()
597
- .filter (e -> !e .getKey ().equals (javaBase ))
598
- .collect (Collectors .toMap (e -> e .getKey (), e -> e .getValue ()));
599
595
String aepText = resources .getText ("doclet.Indirect_Exports_Summary" );
600
596
var aepTable = getTable2 (Text .of (aepText ), indirectPackagesHeader );
601
- addIndirectPackages (aepTable , filteredIndirectPackages );
597
+ addIndirectPackages (aepTable , indirectPackages ,
598
+ m -> !m .equals (javaBase ));
602
599
section .add (aepTable );
603
600
//add the preview box:
604
601
section .add (HtmlTree .BR ());
@@ -614,30 +611,26 @@ protected void addPackagesSummary(Content summariesList) {
614
611
section .add (previewDiv );
615
612
616
613
//add the Indirect Exports
617
- filteredIndirectPackages =
618
- indirectPackages .entrySet ()
619
- .stream ()
620
- .filter (e -> e .getKey ().equals (javaBase ))
621
- .collect (Collectors .toMap (e -> e .getKey (), e -> e .getValue ()));
622
614
String aepPreviewText = resources .getText ("doclet.Indirect_Exports_Summary" );
623
615
ContentBuilder tableCaption = new ContentBuilder (
624
616
Text .of (aepPreviewText ),
625
617
HtmlTree .SUP (links .createLink (previewRequiresTransitiveId ,
626
618
contents .previewMark )));
627
619
var aepPreviewTable = getTable2 (tableCaption , indirectPackagesHeader );
628
- addIndirectPackages (aepPreviewTable , filteredIndirectPackages );
620
+ addIndirectPackages (aepPreviewTable , indirectPackages ,
621
+ m -> m .equals (javaBase ));
629
622
section .add (aepPreviewTable );
630
623
} else {
631
624
String aepText = resources .getText ("doclet.Indirect_Exports_Summary" );
632
625
var aepTable = getTable2 (Text .of (aepText ), indirectPackagesHeader );
633
- addIndirectPackages (aepTable , indirectPackages );
626
+ addIndirectPackages (aepTable , indirectPackages , _ -> true );
634
627
section .add (aepTable );
635
628
}
636
629
}
637
630
if (display (indirectOpenPackages )) {
638
631
String aopText = resources .getText ("doclet.Indirect_Opens_Summary" );
639
632
var aopTable = getTable2 (Text .of (aopText ), indirectPackagesHeader );
640
- addIndirectPackages (aopTable , indirectOpenPackages );
633
+ addIndirectPackages (aopTable , indirectOpenPackages , _ -> true );
641
634
section .add (aopTable );
642
635
}
643
636
summariesList .add (HtmlTree .LI (section ));
@@ -768,9 +761,14 @@ private Content getPackageExportOpensTo(Set<ModuleElement> modules) {
768
761
* @param table the table to which the content rows will be added
769
762
* @param ip indirect packages to be added
770
763
*/
771
- public void addIndirectPackages (Table <?> table , Map <ModuleElement , SortedSet <PackageElement >> ip ) {
764
+ public void addIndirectPackages (Table <?> table ,
765
+ Map <ModuleElement , SortedSet <PackageElement >> ip ,
766
+ Predicate <ModuleElement > acceptModule ) {
772
767
for (Map .Entry <ModuleElement , SortedSet <PackageElement >> entry : ip .entrySet ()) {
773
768
ModuleElement m = entry .getKey ();
769
+ if (!acceptModule .test (m )) {
770
+ continue ;
771
+ }
774
772
SortedSet <PackageElement > pkgList = entry .getValue ();
775
773
Content moduleLinkContent = getModuleLink (m , Text .of (m .getQualifiedName ()));
776
774
Content list = new ContentBuilder ();
0 commit comments