From: Dave B. <bla...@us...> - 2012-03-14 09:42:46
|
Update of /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/logging In directory vz-cvs-3.sog:/tmp/cvs-serv26612/src/org/sblim/cimclient/internal/logging Modified Files: LogAndTraceBroker.java Log Message: 3489638 - PERF: Bottleneck in LogAndTraceBroker.java - getCaller() Index: LogAndTraceBroker.java =================================================================== RCS file: /cvsroot/sblim/jsr48-client/src/org/sblim/cimclient/internal/logging/LogAndTraceBroker.java,v retrieving revision 1.24 retrieving revision 1.25 diff -u -d -r1.24 -r1.25 --- LogAndTraceBroker.java 20 Feb 2012 17:47:56 -0000 1.24 +++ LogAndTraceBroker.java 14 Mar 2012 09:42:44 -0000 1.25 @@ -27,6 +27,7 @@ * 3400209 2011-08-31 blaschke-oss Highlighted Static Analysis (PMD) issues * 3469018 2012-01-03 blaschke-oss Properties not passed to CIMIndicationHandler * 3484014 2012-02-03 blaschke-oss Add LogAndTraceBroker.isLoggable for message/trace + * 3489638 2012-02-28 blaschke-oss PERF: Bottleneck in LogAndTraceBroker.java - getCaller() */ package org.sblim.cimclient.internal.logging; @@ -556,12 +557,13 @@ final String message = MessageLoader.getMessage(pKey); final String localMessage = MessageLoader.getLocalizedMessage(pKey); final Level level = MessageLoader.getLevel(pKey); - final List<TraceListener> traceListeners = getTraceListeners(); - StackTraceElement caller = null; - for (int i = 0; i < traceListeners.size(); ++i) { - caller = caller == null ? getCaller() : caller; - traceListeners.get(i).trace(level, caller, - pKey + " " + MessageFormat.format(message, pParameters)); + if (isLoggableTrace(level)) { + final List<TraceListener> traceListeners = getTraceListeners(); + StackTraceElement caller = getCaller(); + for (int i = 0; i < traceListeners.size(); ++i) { + traceListeners.get(i).trace(level, caller, + pKey + " " + MessageFormat.format(message, pParameters)); + } } final List<LogListener> logListeners = getLogListeners(); for (int i = 0; i < logListeners.size(); ++i) { @@ -583,11 +585,12 @@ */ public void trace(Level pLevel, String pMessage) { try { - final List<TraceListener> traceListeners = getTraceListeners(); - StackTraceElement caller = null; - for (int i = 0; i < traceListeners.size(); ++i) { - caller = caller == null ? getCaller() : caller; - traceListeners.get(i).trace(pLevel, caller, pMessage); + if (isLoggableTrace(pLevel)) { + final List<TraceListener> traceListeners = getTraceListeners(); + StackTraceElement caller = getCaller(); + for (int i = 0; i < traceListeners.size(); ++i) { + traceListeners.get(i).trace(pLevel, caller, pMessage); + } } } catch (Exception e) { // don't crash for logging @@ -607,11 +610,12 @@ */ public void trace(Level pLevel, String pMessage, Throwable pThrown) { try { - final List<TraceListener> traceListeners = getTraceListeners(); - StackTraceElement caller = null; - for (int i = 0; i < traceListeners.size(); ++i) { - caller = caller == null ? getCaller() : caller; - traceListeners.get(i).trace(pLevel, caller, pMessage, pThrown); + if (isLoggableTrace(pLevel)) { + final List<TraceListener> traceListeners = getTraceListeners(); + StackTraceElement caller = getCaller(); + for (int i = 0; i < traceListeners.size(); ++i) { + traceListeners.get(i).trace(pLevel, caller, pMessage, pThrown); + } } } catch (Exception e) { // don't crash for logging |