You are viewing a plain text version of this content. The canonical link for it is here.
Posted to mime4j-dev@james.apache.org by "Richard von Keyserling (JIRA)" <mi...@james.apache.org> on 2010/03/09 03:11:27 UTC

[jira] Updated: (MIME4J-174) Refactor org.mime4j.util.CharsetUtil to lazily determine supported encodings/decodings

     [ https://issues.apache.org/jira/browse/MIME4J-174?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Richard von Keyserling updated MIME4J-174:
------------------------------------------

    Attachment: charset_util_refactor.diff

This is a patch for http://svn.apache.org/repos/asf/james/mime4j/tags/apache-mime4j-0.6  with the suggested refactoring to lazily determine supported encodings/decodings in CharsetUtil.java.  




> Refactor org.mime4j.util.CharsetUtil to lazily determine supported encodings/decodings
> --------------------------------------------------------------------------------------
>
>                 Key: MIME4J-174
>                 URL: https://issues.apache.org/jira/browse/MIME4J-174
>             Project: JAMES Mime4j
>          Issue Type: Improvement
>            Reporter: Richard von Keyserling
>         Attachments: charset_util_refactor.diff
>
>
> On initialization CharsetUtil determines all supported endcodings and decodings by attempting to encode and decode a dummy string with every entry in JAVA_CHARSETS.   This loads a lot of classes into the JVM which in turn uses up a lot of permGen.   
> Moving the decoding and encoding tests into isDecodingSupported() and isEncodingSupported() and adding positive results to the decodingSupported and encodingSupported treeSets from those methods would allow the class to only load encoders and decoders the application needs. 

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.