src/share/classes/sun/nio/cs/ext/ISO2022.java

Print this page




 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