Class Charsets

java.lang.Object
org.glassfish.grizzly.utils.Charsets

public final class Charsets extends Object
Charset utility class.
Author:
Alexey Stashok
  • Field Details

    • DEFAULT_CHARACTER_ENCODING

      public static final String DEFAULT_CHARACTER_ENCODING
      The default character encoding of this Java virtual machine.
    • ASCII_CHARSET

      public static final Charset ASCII_CHARSET
    • UTF8_CHARSET

      public static final Charset UTF8_CHARSET
    • DEFAULT_CHARSET

      public static final Charset DEFAULT_CHARSET
      Returns the default charset of this Java virtual machine.
      See Also:
    • CODECS_CACHE_SIZE

      public static final int CODECS_CACHE_SIZE
      See Also:
  • Constructor Details

    • Charsets

      public Charsets()
  • Method Details

    • lookupCharset

      public static Charset lookupCharset(String charsetName)
      Lookup a Charset by name. Fixes Charset concurrency issue (http://paul.vox.com/library/post/the-mysteries-of-java-character-set-performance.html)
      Parameters:
      charsetName -
      Returns:
      Charset
    • preloadAllCharsets

      public static void preloadAllCharsets()
      Preloads all Charsets available to the JMV, which makes charset searching faster (at the cost of memory). The speed gain is most noticable in the case of non-existing charsets as it allows us to avoid an expensive call to Charset.forName(java.lang.String).
    • drainAllCharsets

      public static void drainAllCharsets()
      Remove all preloaded charsets.
    • getCharsetDecoder

      public static CharsetDecoder getCharsetDecoder(Charset charset)
      Return the Charset's CharsetDecoder. The Charsets class maintains the CharsetDecoder thread-local cache. Be aware - this shouldn't be used by multiple threads.
      Parameters:
      charset - Charset.
      Returns:
      the Charset's CharsetDecoder.
    • getCharsetEncoder

      public static CharsetEncoder getCharsetEncoder(Charset charset)
      Return the Charset's CharsetEncoder. The Charsets class maintains the CharsetEncoder thread-local cache. Be aware - this shouldn't be used by multiple threads.
      Parameters:
      charset - Charset.
      Returns:
      the Charset's CharsetEncoder.