Author: andrew.plotnikov
Date: 2012-03-30 09:10:43 -0400 (Fri, 30 Mar 2012)
New Revision: 5998
Modified:
kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/services/log/impl/LogMessageFormatter.java
kernel/trunk/exo.kernel.commons/src/test/java/org/exoplatform/commons/utils/TestLogMessageFormatter.java
Log:
EXOJCR-1815: Fixed LogMessageFormatter.getMessage throws NPE if object is null
Modified:
kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/services/log/impl/LogMessageFormatter.java
===================================================================
---
kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/services/log/impl/LogMessageFormatter.java 2012-03-30
12:08:29 UTC (rev 5997)
+++
kernel/trunk/exo.kernel.commons/src/main/java/org/exoplatform/services/log/impl/LogMessageFormatter.java 2012-03-30
13:10:43 UTC (rev 5998)
@@ -34,14 +34,14 @@
public static String getMessage(String str, Object... argsArray)
{
-
if (argsArray != null && argsArray.length > 0)
{
for (int i = 0; i < argsArray.length; i++)
{
if (i != argsArray.length - 1 || !(argsArray[i] instanceof Throwable))
{
- str =
REPLACE_PATTERN.matcher(str).replaceFirst(String.valueOf(argsArray[i].toString()));
+ String message = String.valueOf(argsArray[i]);
+ str = REPLACE_PATTERN.matcher(str).replaceFirst(message != null ? message
: "null");
}
}
}
Modified:
kernel/trunk/exo.kernel.commons/src/test/java/org/exoplatform/commons/utils/TestLogMessageFormatter.java
===================================================================
---
kernel/trunk/exo.kernel.commons/src/test/java/org/exoplatform/commons/utils/TestLogMessageFormatter.java 2012-03-30
12:08:29 UTC (rev 5997)
+++
kernel/trunk/exo.kernel.commons/src/test/java/org/exoplatform/commons/utils/TestLogMessageFormatter.java 2012-03-30
13:10:43 UTC (rev 5998)
@@ -58,9 +58,12 @@
assertEquals(t, LogMessageFormatter.getThrowable("Just testing{}", new
Object(), t));
}
- public void testMessageIsNull() throws Exception
+ public void testGetMessage() throws Exception
{
+ //if object.toString return null
LogMessageFormatter.getMessage("Hello, World {} ", new A());
+ //if object is null
+ LogMessageFormatter.getMessage("Hello, World {} {}", new Object(),
null);
}
class A
Show replies by date