You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@empire-db.apache.org by do...@apache.org on 2024/04/22 19:44:34 UTC

(empire-db) branch master updated: EMPIREDB-420 StringUtils fix

This is an automated email from the ASF dual-hosted git repository.

doebele pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/empire-db.git


The following commit(s) were added to refs/heads/master by this push:
     new fdcf59e6 EMPIREDB-420 StringUtils fix
fdcf59e6 is described below

commit fdcf59e6002e908fd5b49876a6729a1d8c7f545c
Author: Rainer Döbele <rd...@users.noreply.github.com>
AuthorDate: Mon Apr 22 21:44:30 2024 +0200

    EMPIREDB-420
    StringUtils fix
---
 .../java/org/apache/empire/commons/OptionEntry.java  |  2 +-
 .../java/org/apache/empire/commons/StringUtils.java  | 16 ++++++----------
 .../org/apache/empire/commons/StringUtilsTest.java   | 20 ++++++++++----------
 3 files changed, 17 insertions(+), 21 deletions(-)

diff --git a/empire-db/src/main/java/org/apache/empire/commons/OptionEntry.java b/empire-db/src/main/java/org/apache/empire/commons/OptionEntry.java
index c05ecd11..914124b1 100644
--- a/empire-db/src/main/java/org/apache/empire/commons/OptionEntry.java
+++ b/empire-db/src/main/java/org/apache/empire/commons/OptionEntry.java
@@ -111,6 +111,6 @@ public class OptionEntry implements Cloneable, Serializable
     @Override
     public String toString()
     {
-        return StringUtils.concat("[", StringUtils.toString(value, StringUtils.NULL), "=", text, "]");
+        return StringUtils.concat("{", StringUtils.toString(value, StringUtils.NULL), "=", text, "}");
     }
 }
diff --git a/empire-db/src/main/java/org/apache/empire/commons/StringUtils.java b/empire-db/src/main/java/org/apache/empire/commons/StringUtils.java
index d64e4796..c540ba49 100644
--- a/empire-db/src/main/java/org/apache/empire/commons/StringUtils.java
+++ b/empire-db/src/main/java/org/apache/empire/commons/StringUtils.java
@@ -63,17 +63,13 @@ public class StringUtils
     public static String toString(Object value, String defValue)
     {
         // Special cases
-        if (value instanceof Enum<?>) {
+        if (value instanceof Enum<?>)
             return ((Enum<?>)value).name();
-        }
-        if (value instanceof Object[]) {
-            String result = arrayToString((Object[])value, DEFAULT_ARRAY_SEPARATOR);
-            return (result!=null ? concat("[", result, "]") : defValue);
-        }
-        if (value instanceof Collection<?>) {
-            String result = listToString((Collection<?>)value, DEFAULT_ARRAY_SEPARATOR);
-            return (result!=null ? concat("[", result, "]") : defValue);
-        }
+        // Collections
+        if (value instanceof Object[])
+            value = arrayToString((Object[])value, DEFAULT_ARRAY_SEPARATOR);
+        else if (value instanceof Collection<?>)
+            value = listToString((Collection<?>)value, DEFAULT_ARRAY_SEPARATOR);
         // default
         return ((value!=null) ? value.toString() : defValue);
     }
diff --git a/empire-db/src/test/java/org/apache/empire/commons/StringUtilsTest.java b/empire-db/src/test/java/org/apache/empire/commons/StringUtilsTest.java
index 0ed9979c..ea4cb043 100644
--- a/empire-db/src/test/java/org/apache/empire/commons/StringUtilsTest.java
+++ b/empire-db/src/test/java/org/apache/empire/commons/StringUtilsTest.java
@@ -51,9 +51,9 @@ public class StringUtilsTest
 		assertEquals(null,StringUtils.toString((Object[])null, null));
 		assertEquals("default",StringUtils.toString((Object[])null, "default"));
 		assertEquals("default",StringUtils.toString(new Number[]{}, "default"));
-        assertEquals("[]",StringUtils.toString(new Number[]{null}, "default"));
-        assertEquals("[123]",StringUtils.toString(new Number[]{Integer.valueOf("123")}, "default"));
-		assertEquals("[123|12.3]",StringUtils.toString(new Number[]{Integer.valueOf("123"), Double.valueOf("12.3")}, "default"));
+        assertEquals("",StringUtils.toString(new Number[]{null}, "default"));
+        assertEquals("123",StringUtils.toString(new Number[]{Integer.valueOf("123")}, "default"));
+		assertEquals("123|12.3",StringUtils.toString(new Number[]{Integer.valueOf("123"), Double.valueOf("12.3")}, "default"));
 	}
 
     @Test
@@ -62,13 +62,13 @@ public class StringUtilsTest
         ArrayList<String> array = new ArrayList<String>();
         assertEquals(null, StringUtils.toString(array, null));
         array.add(null);
-        assertEquals("[]", StringUtils.toString(array, null));
-        assertEquals("[[null=empty]|[1=one]|[2=two]]", StringUtils.toString(new Options().add(null, "empty").add("1", "one").add("2", "two")));
+        assertEquals("", StringUtils.toString(array, null));
+        assertEquals("{null=empty}|{1=one}|{2=two}", StringUtils.toString(new Options().add(null, "empty").add("1", "one").add("2", "two")));
         array.add("end");
-        assertEquals("[|end]",StringUtils.toString(array, "default"));
+        assertEquals("|end",StringUtils.toString(array, "default"));
         array.clear();
         array.add("one");
-        assertEquals("[one]",StringUtils.toString(array, "default"));
+        assertEquals("one",StringUtils.toString(array, "default"));
     }
 
 	@Test
@@ -76,7 +76,7 @@ public class StringUtilsTest
 	{
 		assertEquals(null,StringUtils.toString((Object[])null));
 		assertEquals(null,StringUtils.toString(new Number[]{}));
-		assertEquals("[123|12.3]",StringUtils.toString(new Number[]{Integer.valueOf("123"), Double.valueOf("12.3")}));
+		assertEquals("123|12.3",StringUtils.toString(new Number[]{Integer.valueOf("123"), Double.valueOf("12.3")}));
 	}
 
 	@Test
@@ -93,8 +93,8 @@ public class StringUtilsTest
 	{
 		assertEquals("",StringUtils.valueOf((Object[])null));
         assertEquals("",StringUtils.valueOf(new Object[]{}));
-		assertEquals("[]",StringUtils.valueOf(new Object[]{null}));
-		assertEquals("[123|12.3]",StringUtils.valueOf(new Number[]{Integer.valueOf("123"), Double.valueOf("12.3")}));
+		assertEquals("",StringUtils.valueOf(new Object[]{null}));
+		assertEquals("123|12.3",StringUtils.valueOf(new Number[]{Integer.valueOf("123"), Double.valueOf("12.3")}));
 	}
 
 	@Test