Class B2CConverter


  • public class B2CConverter
    extends java.lang.Object
    NIO based character decoder.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      protected static int LEFTOVER_SIZE
      Maximum size for leftover bytes used for incomplete characters during decoding.
    • Constructor Summary

      Constructors 
      Constructor Description
      B2CConverter​(java.nio.charset.Charset charset)
      Constructs a B2CConverter for the given charset, reporting errors on malformed input.
      B2CConverter​(java.nio.charset.Charset charset, boolean replaceOnError)
      Deprecated.
      Unused.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      void convert​(java.nio.ByteBuffer bc, java.nio.CharBuffer cc, ByteChunk.ByteInputChannel ic, boolean endOfInput)
      Convert the given bytes to characters.
      void convert​(ByteChunk bc, CharChunk cc, boolean endOfInput)
      Convert the given bytes to characters.
      java.nio.charset.Charset getCharset()
      Returns the charset used by this converter.
      static java.nio.charset.Charset getCharset​(java.lang.String enc)
      Obtain the Charset for the given encoding
      void recycle()
      Reset the decoder state.
      • Methods inherited from class java.lang.Object

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Field Detail

      • LEFTOVER_SIZE

        protected static final int LEFTOVER_SIZE
        Maximum size for leftover bytes used for incomplete characters during decoding.
        See Also:
        Constant Field Values
    • Constructor Detail

      • B2CConverter

        public B2CConverter​(java.nio.charset.Charset charset)
        Constructs a B2CConverter for the given charset, reporting errors on malformed input.
        Parameters:
        charset - the charset to use for decoding
      • B2CConverter

        @Deprecated
        public B2CConverter​(java.nio.charset.Charset charset,
                            boolean replaceOnError)
        Deprecated.
        Unused. Will be removed in Tomcat 12 onwards. Use B2CConverter(Charset)
        Constructs a B2CConverter for the given charset.
        Parameters:
        charset - the charset to use for decoding
        replaceOnError - if true, replace malformed/unmappable input; otherwise report errors
    • Method Detail

      • getCharset

        public static java.nio.charset.Charset getCharset​(java.lang.String enc)
                                                   throws java.io.UnsupportedEncodingException
        Obtain the Charset for the given encoding
        Parameters:
        enc - The name of the encoding for the required charset
        Returns:
        The Charset corresponding to the requested encoding
        Throws:
        java.io.UnsupportedEncodingException - If the requested Charset is not available
      • recycle

        public void recycle()
        Reset the decoder state.
      • convert

        public void convert​(ByteChunk bc,
                            CharChunk cc,
                            boolean endOfInput)
                     throws java.io.IOException
        Convert the given bytes to characters.
        Parameters:
        bc - byte input
        cc - char output
        endOfInput - Is this all of the available data
        Throws:
        java.io.IOException - If the conversion can not be completed
      • convert

        public void convert​(java.nio.ByteBuffer bc,
                            java.nio.CharBuffer cc,
                            ByteChunk.ByteInputChannel ic,
                            boolean endOfInput)
                     throws java.io.IOException
        Convert the given bytes to characters.
        Parameters:
        bc - byte input
        cc - char output
        ic - byte input channel
        endOfInput - Is this all of the available data
        Throws:
        java.io.IOException - If the conversion can not be completed
      • getCharset

        public java.nio.charset.Charset getCharset()
        Returns the charset used by this converter.
        Returns:
        the charset