CoderResult

public class CoderResult extends Object

Used to indicate the result of encoding/decoding. There are four types of results:

  1. UNDERFLOW indicates that all input has been processed but more input is required. It is represented by the unique object CoderResult.UNDERFLOW.
  2. OVERFLOW indicates an insufficient output buffer size. It is represented by the unique object CoderResult.OVERFLOW.
  3. A malformed-input error indicates that an unrecognizable sequence of input units has been encountered. Get an instance of this type of result by calling CoderResult.malformedForLength(int) with the length of the malformed-input.
  4. An unmappable-character error indicates that a sequence of input units can not be mapped to the output charset. Get an instance of this type of result by calling CoderResult.unmappableForLength(int) with the input sequence size indicating the identity of the unmappable character.

Field Summary

public static final CoderResult OVERFLOW Result object used to indicate that the output buffer does not have enough space available to store the result of the encoding/decoding.
public static final CoderResult UNDERFLOW Result object indicating that there is insufficient data in the encoding/decoding buffer or that additional data is required.

Public Method Summary

boolean
isError()
Returns true if this result represents a malformed-input error or an unmappable-character error.
boolean
isMalformed()
Returns true if this result represents a malformed-input error.
boolean
isOverflow()
Returns true if this result is an overflow condition.
boolean
isUnderflow()
Returns true if this result is an underflow condition.
boolean
isUnmappable()
Returns true if this result represents an unmappable-character error.
int
length()
Gets the length of the erroneous input.
synchronized static CoderResult
malformedForLength(int length)
Gets a CoderResult object indicating a malformed-input error.
void
throwException()
Throws an exception corresponding to this coder result.
String
toString()
Returns a text description of this result.
synchronized static CoderResult
unmappableForLength(int length)
Gets a CoderResult object indicating an unmappable character error.

Inherited Method Summary

Fields

public static final CoderResult OVERFLOW

Result object used to indicate that the output buffer does not have enough space available to store the result of the encoding/decoding.

public static final CoderResult UNDERFLOW

Result object indicating that there is insufficient data in the encoding/decoding buffer or that additional data is required.

Public Methods

public boolean isError ()

Returns true if this result represents a malformed-input error or an unmappable-character error.

Returns
  • true if this is a malformed-input error or an unmappable-character error, otherwise false.

public boolean isMalformed ()

Returns true if this result represents a malformed-input error.

Returns
  • true if this is a malformed-input error, otherwise false.

public boolean isOverflow ()

Returns true if this result is an overflow condition.

Returns
  • true if this is an overflow, otherwise false.

public boolean isUnderflow ()

Returns true if this result is an underflow condition.

Returns
  • true if an underflow, otherwise false.

public boolean isUnmappable ()

Returns true if this result represents an unmappable-character error.

Returns
  • true if this is an unmappable-character error, otherwise false.

public int length ()

Gets the length of the erroneous input. The length is only meaningful to a malformed-input error or an unmappable character error.

Returns
  • the length, as an integer, of this object's erroneous input.
Throws
UnsupportedOperationException if this result is an overflow or underflow.

public static synchronized CoderResult malformedForLength (int length)

Gets a CoderResult object indicating a malformed-input error.

Parameters
length the length of the malformed-input.
Returns
  • a CoderResult object indicating a malformed-input error.
Throws
IllegalArgumentException if length is non-positive.

public void throwException ()

Throws an exception corresponding to this coder result.

Throws
BufferUnderflowException in case this is an underflow.
BufferOverflowException in case this is an overflow.
UnmappableCharacterException in case this is an unmappable-character error.
MalformedInputException in case this is a malformed-input error.
CharacterCodingException the default exception.

public String toString ()

Returns a text description of this result.

Returns
  • a text description of this result.

public static synchronized CoderResult unmappableForLength (int length)