Package org.apache.tomcat.util.buf

# Class Utf8Decoder

java.lang.Object
java.nio.charset.CharsetDecoder
org.apache.tomcat.util.buf.Utf8Decoder

public class Utf8Decoder extends CharsetDecoder
Decodes bytes to UTF-8. Extracted from Apache Harmony and modified to reject code points from U+D800 to U+DFFF as per RFC3629. The standard Java decoder does not reject these. It has also been modified to reject code points greater than U+10FFFF which the standard Java decoder rejects but the harmony one does not.

- ## Constructor Summary

  Constructors
  Constructor
  Description
  `Utf8Decoder()`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `protected CoderResult`
  `decodeLoop(ByteBuffer in, CharBuffer out)`

  ### Methods inherited from class java.nio.charset.CharsetDecoder

  `averageCharsPerByte, charset, decode, decode, detectedCharset, flush, implFlush, implOnMalformedInput, implOnUnmappableCharacter, implReplaceWith, implReset, isAutoDetecting, isCharsetDetected, malformedInputAction, maxCharsPerByte, onMalformedInput, onUnmappableCharacter, replacement, replaceWith, reset, unmappableCharacterAction`

  ### Methods inherited from class java.lang.Object

  `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### Utf8Decoder

    public Utf8Decoder()

- ## Method Details

  - ### decodeLoop

    protected CoderResult decodeLoop(ByteBuffer in, CharBuffer out)
    Specified by:
      `decodeLoop` in class `CharsetDecoder`