Merge "Add -showUnannotated"
diff --git a/src/com/google/doclava/ClassInfo.java b/src/com/google/doclava/ClassInfo.java
index f195246..2393c2c 100644
--- a/src/com/google/doclava/ClassInfo.java
+++ b/src/com/google/doclava/ClassInfo.java
@@ -919,7 +919,7 @@
*/
public Collection<FieldInfo> filteredFields(Predicate<MemberInfo> predicate) {
Set<FieldInfo> fields = new LinkedHashSet<>();
- if (Doclava.showAnnotations.isEmpty()) {
+ if (Doclava.showUnannotated) {
for (ClassInfo clazz : gatherAncestorClasses()) {
if (!clazz.isInterface()) continue;
for (FieldInfo field : clazz.getExhaustiveFields()) {
diff --git a/src/com/google/doclava/Doclava.java b/src/com/google/doclava/Doclava.java
index fdfc6c9..604caaf 100644
--- a/src/com/google/doclava/Doclava.java
+++ b/src/com/google/doclava/Doclava.java
@@ -105,6 +105,7 @@
public static ArtifactTagger artifactTagger = new ArtifactTagger();
public static HashSet<String> knownTags = new HashSet<String>();
public static FederationTagger federationTagger = new FederationTagger();
+ public static boolean showUnannotated = false;
public static Set<String> showAnnotations = new HashSet<String>();
public static Set<String> hideAnnotations = new HashSet<String>();
public static boolean showAnnotationOverridesVisibility = false;
@@ -254,6 +255,8 @@
}
} else if (a[0].equals("-keeplist")) {
keepListFile = a[1];
+ } else if (a[0].equals("-showUnannotated")) {
+ showUnannotated = true;
} else if (a[0].equals("-showAnnotation")) {
showAnnotations.add(a[1]);
} else if (a[0].equals("-hideAnnotation")) {
@@ -377,6 +380,12 @@
}
}
+ // If the caller has not explicitly requested that unannotated classes and members should be
+ // shown in the output then only show them if no annotations were provided.
+ if (!showUnannotated && showAnnotations.isEmpty()) {
+ showUnannotated = true;
+ }
+
if (!readKnownTagsFiles(knownTags, knownTagsFiles)) {
return false;
}
@@ -771,6 +780,9 @@
if (option.equals("-keeplist")) {
return 2;
}
+ if (option.equals("-showUnannotated")) {
+ return 1;
+ }
if (option.equals("-showAnnotation")) {
return 2;
}
diff --git a/src/com/google/doclava/Stubs.java b/src/com/google/doclava/Stubs.java
index 078dd78..30d0f88 100644
--- a/src/com/google/doclava/Stubs.java
+++ b/src/com/google/doclava/Stubs.java
@@ -215,7 +215,7 @@
}
}
- final boolean ignoreShown = Doclava.showAnnotations.isEmpty();
+ final boolean ignoreShown = Doclava.showUnannotated;
// Write out the current API
if (apiWriter != null) {