Package org.apache.tomcat.util.buf

# Class B2CConverter

java.lang.Object
org.apache.tomcat.util.buf.B2CConverter

public class B2CConverter extends Object
NIO based character decoder.

- ## Field Summary

  Fields
  Modifier and Type
  Field
  Description
  `protected static final int`
  `LEFTOVER_SIZE`

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `B2CConverter(Charset charset)`
  `B2CConverter(Charset charset, boolean replaceOnError)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `convert(ByteBuffer bc, 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.
  `Charset`
  `getCharset()`
  `static Charset`
  `getCharset(String enc)`
  Obtain the Charset for the given encoding
  `static Charset`
  `getCharsetLower(String lowerCaseEnc)`
  Deprecated.
  Will be removed in Tomcat 9.0.x
  `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 Details

  - ### LEFTOVER_SIZE

    protected static final int LEFTOVER_SIZE
    See Also:
      - Constant Field Values

- ## Constructor Details

  - ### B2CConverter

    public B2CConverter(Charset charset)

  - ### B2CConverter

    public B2CConverter(Charset charset, boolean replaceOnError)

- ## Method Details

  - ### getCharset

    public static Charset getCharset(String enc) throws 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:
      `UnsupportedEncodingException` - If the requested Charset is not available

  - ### getCharsetLower

    @Deprecated public static Charset getCharsetLower(String lowerCaseEnc) throws UnsupportedEncodingException
    Deprecated.
    Will be removed in Tomcat 9.0.x
    Only to be used when it is known that the encoding name is in lower case.
    Parameters:
      `lowerCaseEnc` - The name of the encoding for the required charset in lower case
    Returns:
      The Charset corresponding to the requested encoding
    Throws:
      `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 IOException
    Convert the given bytes to characters.
    Parameters:
      `bc` - byte input
      `cc` - char output
      `endOfInput` - Is this all of the available data
    Throws:
      `IOException` - If the conversion can not be completed

  - ### convert

    public void convert(ByteBuffer bc, CharBuffer cc, ByteChunk.ByteInputChannel ic, boolean endOfInput) throws 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:
      `IOException` - If the conversion can not be completed

  - ### getCharset

    public Charset getCharset()