diff options
author | Treehugger Robot <treehugger-gerrit@google.com> | 2018-01-30 12:41:28 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2018-01-30 12:41:28 +0000 |
commit | cc8c74cd1233e3258bd0a8c9c92effbb6839043f (patch) | |
tree | 9b223470c02cd221401a4894ed78db071f8a8189 | |
parent | 5e9068dbec97f95e52f0b64fa82f734c0ad30e08 (diff) | |
parent | 9e981a8f96be20727afc1ef2b602192d1dfab0fe (diff) | |
download | platform_external_doclava-cc8c74cd1233e3258bd0a8c9c92effbb6839043f.tar.gz platform_external_doclava-cc8c74cd1233e3258bd0a8c9c92effbb6839043f.tar.bz2 platform_external_doclava-cc8c74cd1233e3258bd0a8c9c92effbb6839043f.zip |
Merge "Pick private APIs from all classes"
-rw-r--r-- | src/com/google/doclava/Stubs.java | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/src/com/google/doclava/Stubs.java b/src/com/google/doclava/Stubs.java index 8098ff2..9ad70c8 100644 --- a/src/com/google/doclava/Stubs.java +++ b/src/com/google/doclava/Stubs.java @@ -52,6 +52,7 @@ public class Stubs { // figure out which classes we need final HashSet<ClassInfo> notStrippable = new HashSet<ClassInfo>(); Collection<ClassInfo> all = Converter.allClasses(); + Map<PackageInfo, List<ClassInfo>> allClassesByPackage = null; PrintStream apiWriter = null; PrintStream keepListWriter = null; PrintStream removedApiWriter = null; @@ -238,6 +239,14 @@ public class Stubs { } } + if (privateApiWriter != null || privateDexApiWriter != null || removedApiWriter != null) { + allClassesByPackage = Converter.allClasses().stream() + // Make sure that the files only contains information from the required packages. + .filter(ci -> stubPackages == null + || stubPackages.contains(ci.containingPackage().qualifiedName())) + .collect(Collectors.groupingBy(ClassInfo::containingPackage)); + } + final boolean ignoreShown = Doclava.showUnannotated; FilterPredicate apiFilter = new FilterPredicate(new ApiPredicate().setIgnoreShown(ignoreShown)); @@ -266,24 +275,18 @@ public class Stubs { // Write out the private API if (privateApiWriter != null) { - writeApi(privateApiWriter, packages, privateEmit, privateReference); + writeApi(privateApiWriter, allClassesByPackage, privateEmit, privateReference); privateApiWriter.close(); } // Write out the private API if (privateDexApiWriter != null) { - writeDexApi(privateDexApiWriter, packages, privateEmit); + writeDexApi(privateDexApiWriter, allClassesByPackage, privateEmit); privateDexApiWriter.close(); } // Write out the removed API if (removedApiWriter != null) { - Map<PackageInfo, List<ClassInfo>> allClassesByPackage = Converter.allClasses().stream() - // Make sure that the removed file only contains information from the required packages. - .filter(ci -> stubPackages == null - || stubPackages.contains(ci.containingPackage().qualifiedName())) - .collect(Collectors.groupingBy(ClassInfo::containingPackage)); - writeApi(removedApiWriter, allClassesByPackage, removedEmit, removedReference); removedApiWriter.close(); } |