aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java
diff options
context:
space:
mode:
authorGravatar Liam Miller-Cushon <cushon@google.com>2016-01-19 22:12:33 +0000
committerGravatar Han-Wen Nienhuys <hanwen@google.com>2016-01-20 11:35:48 +0000
commit65695552c4f49a4c760c8f64c6d23b25915d0f99 (patch)
tree3447f31254239fe42889c8260322a2f0ce477922 /src/main/java
parent528957e26a957da7abcb8a3b3bcfe7e7f6428687 (diff)
Include source jar count in progress message for java compile actions
The avoids misleading "Building libfoo.jar (0 files)" progress messages for sourcejar-only compilations. -- MOS_MIGRATED_REVID=112512879
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java31
1 files changed, 29 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
index ce3c6c17d1..f1a890877d 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/java/JavaCompileAction.java
@@ -380,8 +380,35 @@ public class JavaCompileAction extends AbstractAction {
@Override
protected String getRawProgressMessage() {
- int count = sourceFiles.size() + resources.size() + classpathResources.size() + messages.size();
- return "Building " + outputJar.prettyPrint() + " (" + count + " files)";
+ StringBuilder sb = new StringBuilder("Building ");
+ sb.append(outputJar.prettyPrint());
+ sb.append(" (");
+ boolean first = true;
+ first = appendCount(sb, first, sourceFiles.size(), "source file");
+ first = appendCount(sb, first, sourceJars.size(), "source jar");
+ int resourceCount = resources.size() + classpathResources.size() + messages.size();
+ first = appendCount(sb, first, resourceCount, "resource");
+ sb.append(")");
+ return sb.toString();
+ }
+
+ /**
+ * Append an input count to the progress message, e.g. "2 source jars". If an input
+ * count has already been appended, prefix with ", ".
+ */
+ private static boolean appendCount(StringBuilder sb, boolean first, int count, String name) {
+ if (count > 0) {
+ if (!first) {
+ sb.append(", ");
+ } else {
+ first = false;
+ }
+ sb.append(count).append(' ').append(name);
+ if (count > 1) {
+ sb.append('s');
+ }
+ }
+ return first;
}
@Override