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`