From 73aa0d1882f0b2ec62e55e42dafc8a4765a31b1b Mon Sep 17 00:00:00 2001 From: Arne Juul Date: Tue, 29 Jun 2021 09:02:05 +0000 Subject: add convenience function wrapping "String.format(Locale.US, ...)" --- vespajlib/abi-spec.json | 3 ++- vespajlib/src/main/java/com/yahoo/text/Text.java | 4 ++++ vespajlib/src/test/java/com/yahoo/text/TextTestCase.java | 4 ++++ 3 files changed, 10 insertions(+), 1 deletion(-) (limited to 'vespajlib') diff --git a/vespajlib/abi-spec.json b/vespajlib/abi-spec.json index c0ac0d0f3be..4a7007ebf83 100644 --- a/vespajlib/abi-spec.json +++ b/vespajlib/abi-spec.json @@ -3098,7 +3098,8 @@ "public static java.util.OptionalInt validateTextString(java.lang.String)", "public static boolean isDisplayable(int)", "public static java.lang.String stripInvalidCharacters(java.lang.String)", - "public static java.lang.String truncate(java.lang.String, int)" + "public static java.lang.String truncate(java.lang.String, int)", + "public static varargs java.lang.String fmt(java.lang.String, java.lang.Object[])" ], "fields": [] }, diff --git a/vespajlib/src/main/java/com/yahoo/text/Text.java b/vespajlib/src/main/java/com/yahoo/text/Text.java index 85b28639d89..4b1ee57b47d 100644 --- a/vespajlib/src/main/java/com/yahoo/text/Text.java +++ b/vespajlib/src/main/java/com/yahoo/text/Text.java @@ -1,6 +1,7 @@ // Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.text; +import java.util.Locale; import java.util.OptionalInt; /** @@ -186,4 +187,7 @@ public final class Text { return s.substring(0, length - 4) + " ..."; } + public static String fmt(String format, Object... args) { + return String.format(Locale.US, format, args); + } } diff --git a/vespajlib/src/test/java/com/yahoo/text/TextTestCase.java b/vespajlib/src/test/java/com/yahoo/text/TextTestCase.java index 8bb8b2aaad5..83ac6342e70 100644 --- a/vespajlib/src/test/java/com/yahoo/text/TextTestCase.java +++ b/vespajlib/src/test/java/com/yahoo/text/TextTestCase.java @@ -72,4 +72,8 @@ public class TextTestCase { assertEquals("a ...", Text.truncate("ab cde", 5)); } + @Test + public void testFormat() { + assertEquals("foo 3.14", Text.fmt("%s %.2f", "foo", 3.1415926536)); + } } -- cgit v1.2.3