donaldp 01/12/12 23:58:04 Modified: src/java/org/apache/log/format PatternFormatter.java Log: Cached the date and DateFormatter objects so that they are not created every time a LogEvent is formatted. Submitted By: "Bian Tan" <[EMAIL PROTECTED]> and Chad Stansbury [mailto:[EMAIL PROTECTED] Revision Changes Path 1.23 +13 -3 jakarta-avalon-logkit/src/java/org/apache/log/format/PatternFormatter.java Index: PatternFormatter.java =================================================================== RCS file: /home/cvs/jakarta-avalon-logkit/src/java/org/apache/log/format/PatternFormatter.java,v retrieving revision 1.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- PatternFormatter.java 2001/12/12 11:39:25 1.22 +++ PatternFormatter.java 2001/12/13 07:58:04 1.23 @@ -73,7 +73,7 @@ * * @author <a href="mailto:[EMAIL PROTECTED]">Peter Donald</a> * @author <a href="mailto:[EMAIL PROTECTED]">Sylvain Wallez</a> - * @version CVS $Revision: 1.22 $ $Date: 2001/12/12 11:39:25 $ + * @version CVS $Revision: 1.23 $ $Date: 2001/12/13 07:58:04 $ */ public class PatternFormatter implements Formatter, org.apache.log.Formatter @@ -121,6 +121,9 @@ private PatternRun m_formatSpecification[]; + private SimpleDateFormat m_simpleDateFormat; + private final Date m_date = new Date(); + /** * @deprecated Use constructor PatternFormatter(String pattern) as this does not * correctly initialize object @@ -534,8 +537,15 @@ } else { - final SimpleDateFormat simpleDateFormat = new SimpleDateFormat( format ); - return simpleDateFormat.format( new Date( time ) ); + synchronized( m_date ) + { + if( null == m_simpleDateFormat ) + { + m_simpleDateFormat = new SimpleDateFormat( format ); + } + m_date.setTime( time ); + return m_simpleDateFormat.format( m_date ); + } } }
-- To unsubscribe, e-mail: <mailto:[EMAIL PROTECTED]> For additional commands, e-mail: <mailto:[EMAIL PROTECTED]>
