Java tutorial
package org.apache.http.impl; import java.nio.charset.Charset; import java.nio.charset.CharsetDecoder; import java.nio.charset.CharsetEncoder; import java.nio.charset.CodingErrorAction; import org.apache.http.config.ConnectionConfig; public final class ConnSupport { public static CharsetDecoder createDecoder(ConnectionConfig connectionConfig) { if (connectionConfig == null) { return null; } Charset charset = connectionConfig.getCharset(); CodingErrorAction malformedInputAction = connectionConfig.getMalformedInputAction(); CodingErrorAction unmappableInputAction = connectionConfig.getUnmappableInputAction(); if (charset == null) { return null; } CharsetDecoder newDecoder = charset.newDecoder(); if (malformedInputAction == null) { malformedInputAction = CodingErrorAction.REPORT; } return newDecoder.onMalformedInput(malformedInputAction).onUnmappableCharacter( unmappableInputAction != null ? unmappableInputAction : CodingErrorAction.REPORT); } public static CharsetEncoder createEncoder(ConnectionConfig connectionConfig) { if (connectionConfig == null) { return null; } Charset charset = connectionConfig.getCharset(); if (charset == null) { return null; } CodingErrorAction malformedInputAction = connectionConfig.getMalformedInputAction(); CodingErrorAction unmappableInputAction = connectionConfig.getUnmappableInputAction(); CharsetEncoder newEncoder = charset.newEncoder(); if (malformedInputAction == null) { malformedInputAction = CodingErrorAction.REPORT; } return newEncoder.onMalformedInput(malformedInputAction).onUnmappableCharacter( unmappableInputAction != null ? unmappableInputAction : CodingErrorAction.REPORT); } }