Changeset 4b95824


Ignore:
Timestamp:
Dec 23, 2017 1:08:16 PM (2 years ago)
Author:
zzz <zzz@…>
Branches:
master
Children:
003d865c
Parents:
70b2dbe
Message:

SusiMail?: Static DateFormatters?

File:
1 edited

Legend:

Unmodified
Added
Removed
  • apps/susimail/src/src/i2p/susi/webmail/Mail.java

    r70b2dbe r4b95824  
    281281        }
    282282
    283         private void parseHeaders()
    284         {
    285                 DateFormat dateFormatter = new SimpleDateFormat("yyyy-MM-dd HH:mm");
    286                 DateFormat localDateFormatter = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);
    287                 DateFormat longLocalDateFormatter = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);
     283        private static final DateFormat dateFormatter = new SimpleDateFormat("yyyy-MM-dd HH:mm");
     284        private static DateFormat localDateFormatter = DateFormat.getDateTimeInstance(DateFormat.SHORT, DateFormat.SHORT);
     285        private static DateFormat longLocalDateFormatter = DateFormat.getDateTimeInstance(DateFormat.MEDIUM, DateFormat.MEDIUM);
     286        private static DateFormat mailDateFormatter = new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss Z", Locale.ENGLISH );
     287        static {
    288288                // the router sets the JVM time zone to UTC but saves the original here so we can get it
    289289                TimeZone tz = SystemVersion.getSystemTimeZone();
    290290                localDateFormatter.setTimeZone(tz);
    291291                longLocalDateFormatter.setTimeZone(tz);
    292                 DateFormat mailDateFormatter = new SimpleDateFormat("EEE, d MMM yyyy HH:mm:ss Z", Locale.ENGLISH );
    293                
     292        }
     293
     294        private void parseHeaders()
     295        {
    294296                error = "";
    295297                if( header != null ) {
     
    341343                                                        dateString = line.substring( 5 ).trim();
    342344                                                        try {
    343                                                                 date = mailDateFormatter.parse( dateString );
    344                                                                 formattedDate = dateFormatter.format( date );
    345                                                                 localFormattedDate = localDateFormatter.format( date );
    346                                                                 //quotedDate = html.encode( dateString );
    347                                                                 quotedDate = longLocalDateFormatter.format(date);
     345                                                                synchronized(mailDateFormatter) {
     346                                                                        date = mailDateFormatter.parse( dateString );
     347                                                                        formattedDate = dateFormatter.format( date );
     348                                                                        localFormattedDate = localDateFormatter.format( date );
     349                                                                        //quotedDate = html.encode( dateString );
     350                                                                        quotedDate = longLocalDateFormatter.format(date);
     351                                                                }
    348352                                                        }
    349353                                                        catch (ParseException e) {
Note: See TracChangeset for help on using the changeset viewer.