371 } 372 return CoderResult.UNDERFLOW; 373 } catch (Exception e) { e.printStackTrace(); return CoderResult.OVERFLOW; } 374 finally { 375 src.position(mark); 376 } 377 } 378 379 protected CoderResult decodeLoop(ByteBuffer src, 380 CharBuffer dst) 381 { 382 if (src.hasArray() && dst.hasArray()) 383 return decodeArrayLoop(src, dst); 384 else 385 return decodeBufferLoop(src, dst); 386 } 387 } 388 389 protected static class Encoder extends CharsetEncoder { 390 private final Surrogate.Parser sgp = new Surrogate.Parser(); 391 private final byte SS2 = (byte)0x8e; 392 private final byte PLANE2 = (byte)0xA2; 393 private final byte PLANE3 = (byte)0xA3; 394 private final byte MSB = (byte)0x80; 395 396 protected final byte maximumDesignatorLength = 4; 397 398 protected String SODesig, 399 SS2Desig = null, 400 SS3Desig = null; 401 402 protected CharsetEncoder ISOEncoder; 403 404 private boolean shiftout = false; 405 private boolean SODesDefined = false; 406 private boolean SS2DesDefined = false; 407 private boolean SS3DesDefined = false; 408 409 private boolean newshiftout = false; 410 private boolean newSODesDefined = false; 411 private boolean newSS2DesDefined = false; 412 private boolean newSS3DesDefined = false; 413 | 371 } 372 return CoderResult.UNDERFLOW; 373 } catch (Exception e) { e.printStackTrace(); return CoderResult.OVERFLOW; } 374 finally { 375 src.position(mark); 376 } 377 } 378 379 protected CoderResult decodeLoop(ByteBuffer src, 380 CharBuffer dst) 381 { 382 if (src.hasArray() && dst.hasArray()) 383 return decodeArrayLoop(src, dst); 384 else 385 return decodeBufferLoop(src, dst); 386 } 387 } 388 389 protected static class Encoder extends CharsetEncoder { 390 private final Surrogate.Parser sgp = new Surrogate.Parser(); 391 protected final byte SS2 = (byte)0x8e; 392 protected final byte PLANE2 = (byte)0xA2; 393 protected final byte PLANE3 = (byte)0xA3; 394 private final byte MSB = (byte)0x80; 395 396 protected final byte maximumDesignatorLength = 4; 397 398 protected String SODesig, 399 SS2Desig = null, 400 SS3Desig = null; 401 402 protected CharsetEncoder ISOEncoder; 403 404 private boolean shiftout = false; 405 private boolean SODesDefined = false; 406 private boolean SS2DesDefined = false; 407 private boolean SS3DesDefined = false; 408 409 private boolean newshiftout = false; 410 private boolean newSODesDefined = false; 411 private boolean newSS2DesDefined = false; 412 private boolean newSS3DesDefined = false; 413 |