home *** CD-ROM | disk | FTP | other *** search
- package com.sun.xml.parser;
-
- import java.io.CharConversionException;
- import java.io.IOException;
- import java.io.InputStream;
-
- final class XmlReader$AsciiReader extends XmlReader.BaseReader {
- XmlReader$AsciiReader(InputStream var1) {
- super(var1);
- }
-
- public int read(char[] var1, int var2, int var3) throws IOException {
- if (super.instream == null) {
- return -1;
- } else if (var2 + var3 <= var1.length && var2 >= 0) {
- int var4;
- for(var4 = 0; var4 < var3; ++var4) {
- if (super.start >= super.finish) {
- super.start = 0;
- super.finish = super.instream.read(super.buffer, 0, super.buffer.length);
- if (super.finish <= 0) {
- if (super.finish <= 0) {
- ((XmlReader.BaseReader)this).close();
- }
- break;
- }
- }
-
- byte var5 = super.buffer[super.start++];
- if ((var5 & 128) != 0) {
- throw new CharConversionException("Illegal ASCII character, 0x" + Integer.toHexString(var5 & 255));
- }
-
- var1[var2 + var4] = (char)var5;
- }
-
- return var4 == 0 && super.finish <= 0 ? -1 : var4;
- } else {
- throw new ArrayIndexOutOfBoundsException();
- }
- }
- }
-