From d1d1c08c797308ff2468ea95c0f1ba62559323dc Mon Sep 17 00:00:00 2001 From: "Shawn O. Pearce" Date: Fri, 12 Oct 2012 12:08:46 -0700 Subject: [PATCH] Allow time unit variables to be 0 plugins.checkFrequency can be disabled by setting the time to 0, but this is not allowed in a time unit typed variable due to the regex requiring the value to start with a digit in the range 1-9. Permit 0 as a value. Change-Id: I2deca08fe9b0ea93ef23f626fc44cffe98ad2d95 --- .../main/java/com/google/gerrit/server/config/ConfigUtil.java | 2 +- .../java/com/google/gerrit/server/config/ConfigUtilTest.java | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/gerrit-server/src/main/java/com/google/gerrit/server/config/ConfigUtil.java b/gerrit-server/src/main/java/com/google/gerrit/server/config/ConfigUtil.java index 6068c503f7..cc5405487b 100644 --- a/gerrit-server/src/main/java/com/google/gerrit/server/config/ConfigUtil.java +++ b/gerrit-server/src/main/java/com/google/gerrit/server/config/ConfigUtil.java @@ -228,7 +228,7 @@ public class ConfigUtil { */ public static long getTimeUnit(final String valueString, long defaultValue, TimeUnit wantUnit) { - Matcher m = Pattern.compile("^([1-9][0-9]*)\\s*(.*)$").matcher(valueString); + Matcher m = Pattern.compile("^(0|[1-9][0-9]*)\\s*(.*)$").matcher(valueString); if (!m.matches()) { return defaultValue; } diff --git a/gerrit-server/src/test/java/com/google/gerrit/server/config/ConfigUtilTest.java b/gerrit-server/src/test/java/com/google/gerrit/server/config/ConfigUtilTest.java index 37197ec9bb..5d7291630d 100644 --- a/gerrit-server/src/test/java/com/google/gerrit/server/config/ConfigUtilTest.java +++ b/gerrit-server/src/test/java/com/google/gerrit/server/config/ConfigUtilTest.java @@ -26,9 +26,11 @@ import java.util.concurrent.TimeUnit; public class ConfigUtilTest extends TestCase { public void testTimeUnit() { + assertEquals(ms(0, MILLISECONDS), parse("0")); assertEquals(ms(2, MILLISECONDS), parse("2ms")); assertEquals(ms(200, MILLISECONDS), parse("200 milliseconds")); + assertEquals(ms(0, SECONDS), parse("0s")); assertEquals(ms(2, SECONDS), parse("2s")); assertEquals(ms(231, SECONDS), parse("231sec")); assertEquals(ms(1, SECONDS), parse("1second"));