[jboss-svn-commits] JBoss Common SVN: r3085 - jboss-logbridge/trunk/src/main/java/org/jboss/logbridge.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Mon Mar 16 19:13:28 EDT 2009
Author: david.lloyd at jboss.com
Date: 2009-03-16 19:13:28 -0400 (Mon, 16 Mar 2009)
New Revision: 3085
Modified:
jboss-logbridge/trunk/src/main/java/org/jboss/logbridge/LogBridgeHandler.java
Log:
Format messages that need formatting (JBLOGGING-15)
Modified: jboss-logbridge/trunk/src/main/java/org/jboss/logbridge/LogBridgeHandler.java
===================================================================
--- jboss-logbridge/trunk/src/main/java/org/jboss/logbridge/LogBridgeHandler.java 2009-03-16 22:25:38 UTC (rev 3084)
+++ jboss-logbridge/trunk/src/main/java/org/jboss/logbridge/LogBridgeHandler.java 2009-03-16 23:13:28 UTC (rev 3085)
@@ -26,6 +26,8 @@
import java.util.Collections;
import java.util.WeakHashMap;
import java.util.Enumeration;
+import java.util.ResourceBundle;
+import java.util.MissingResourceException;
import java.text.MessageFormat;
import java.util.logging.Handler;
@@ -68,12 +70,26 @@
public void publish(final LogRecord record) {
Logger targetLogger = Logger.getLogger(record.getLoggerName());
final Priority targetLevel = levelMapper.getTargetLevelForSourceLevel(record.getLevel());
- final String msg = record.getMessage();
- final Object[] parameters = record.getParameters();
- final String text = parameters != null ? MessageFormat.format(msg, parameters) : msg;
+ final String text = formatRecord(record);
targetLogger.log(LOGGER_CLASS_NAME, targetLevel, text, record.getThrown());
}
+ private String formatRecord(final LogRecord record) {
+ final ResourceBundle bundle = record.getResourceBundle();
+ String msg = record.getMessage();
+ if (bundle != null) {
+ try {
+ msg = bundle.getString(msg);
+ } catch (MissingResourceException ex) {
+ // ignore
+ }
+ }
+ final Object[] parameters = record.getParameters();
+ return parameters != null &&
+ parameters.length > 0 &&
+ msg.indexOf('{') >= 0 ? MessageFormat.format(msg, parameters) : msg;
+ }
+
public void flush() {
}
More information about the jboss-svn-commits
mailing list