org.apache.batik.util.io
Class StreamNormalizingReader

java.lang.Object
  extended by java.io.Reader
      extended by org.apache.batik.util.io.NormalizingReader
          extended by org.apache.batik.util.io.StreamNormalizingReader
All Implemented Interfaces:
Closeable, Readable
Direct Known Subclasses:
XMLStreamNormalizingReader

public class StreamNormalizingReader
extends NormalizingReader

This class represents a NormalizingReader which handles streams of bytes.


Nested Class Summary
protected static class StreamNormalizingReader.ASCIIDecoderFactory
          To create an ASCIIDecoder.
protected static interface StreamNormalizingReader.CharDecoderFactory
          Represents a CharDecoder factory.
protected static class StreamNormalizingReader.ISO_8859_1DecoderFactory
          To create an ISO_8859_1Decoder.
protected static class StreamNormalizingReader.UTF16DecoderFactory
          To create a UTF16Decoder.
protected static class StreamNormalizingReader.UTF8DecoderFactory
          To create a UTF8Decoder.
 
Field Summary
protected  CharDecoder charDecoder
          The char decoder.
protected static Map charDecoderFactories
          The CharDecoder factories map.
protected  int column
          The current column in the stream.
protected  int line
          The current line in the stream.
protected  int nextChar
          The next char.
 
Fields inherited from class java.io.Reader
lock
 
Constructor Summary
protected StreamNormalizingReader()
          This constructor is intended for use by subclasses.
  StreamNormalizingReader(InputStream is)
          Creates a new NormalizingReader.
  StreamNormalizingReader(InputStream is, String enc)
          Creates a new NormalizingReader.
  StreamNormalizingReader(Reader r)
          Creates a new NormalizingReader.
 
Method Summary
 void close()
          Close the stream.
protected  CharDecoder createCharDecoder(InputStream is, String enc)
          Creates the CharDecoder mapped with the given encoding name.
 int getColumn()
          Returns the current column in the stream.
 int getLine()
          Returns the current line in the stream.
 int read()
          Read a single character.
 
Methods inherited from class org.apache.batik.util.io.NormalizingReader
read
 
Methods inherited from class java.io.Reader
mark, markSupported, read, read, ready, reset, skip
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

charDecoder

protected CharDecoder charDecoder
The char decoder.


nextChar

protected int nextChar
The next char.


line

protected int line
The current line in the stream.


column

protected int column
The current column in the stream.


charDecoderFactories

protected static final Map charDecoderFactories
The CharDecoder factories map.

Constructor Detail

StreamNormalizingReader

public StreamNormalizingReader(InputStream is)
                        throws IOException
Creates a new NormalizingReader. The encoding is assumed to be ISO-8859-1.

Parameters:
is - The input stream to decode.
Throws:
IOException

StreamNormalizingReader

public StreamNormalizingReader(InputStream is,
                               String enc)
                        throws IOException
Creates a new NormalizingReader.

Parameters:
is - The input stream to decode.
enc - The standard encoding name. A null encoding means ISO-8859-1.
Throws:
IOException

StreamNormalizingReader

public StreamNormalizingReader(Reader r)
                        throws IOException
Creates a new NormalizingReader.

Parameters:
r - The reader to wrap.
Throws:
IOException

StreamNormalizingReader

protected StreamNormalizingReader()
This constructor is intended for use by subclasses.

Method Detail

read

public int read()
         throws IOException
Read a single character. This method will block until a character is available, an I/O error occurs, or the end of the stream is reached.

Overrides:
read in class Reader
Throws:
IOException

getLine

public int getLine()
Returns the current line in the stream.

Specified by:
getLine in class NormalizingReader

getColumn

public int getColumn()
Returns the current column in the stream.

Specified by:
getColumn in class NormalizingReader

close

public void close()
           throws IOException
Close the stream.

Specified by:
close in interface Closeable
Specified by:
close in class Reader
Throws:
IOException

createCharDecoder

protected CharDecoder createCharDecoder(InputStream is,
                                        String enc)
                                 throws IOException
Creates the CharDecoder mapped with the given encoding name.

Throws:
IOException


Copyright © 2008 Apache Software Foundation. All Rights Reserved.