Package com.ctc.wstx.io
Class MergedReader
- java.lang.Object
-
- java.io.Reader
-
- com.ctc.wstx.io.MergedReader
-
- All Implemented Interfaces:
java.io.Closeable
,java.lang.AutoCloseable
,java.lang.Readable
public final class MergedReader extends java.io.Reader
SimpleReader
implementation that is used to "unwind" some data previously read from a Reader; so that as long as some of that data remains, it's returned; but as long as it's read, we'll just use data from the underlying original Reader. This is similar toPushbackReader
, but with this class there's only one implicit pushback, when instance is constructed; not general pushback buffer and methods to use it.
-
-
Field Summary
Fields Modifier and Type Field Description (package private) ReaderConfig
mConfig
(package private) char[]
mData
This buffer contains the partially read remains left over after bootstrapper has consumed xml declaration (if one found).(package private) int
mEnd
(package private) java.io.Reader
mIn
(package private) int
mPtr
-
Constructor Summary
Constructors Constructor Description MergedReader(ReaderConfig cfg, java.io.Reader in, char[] buf, int start, int end)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
private void
freeMergedBuffer()
void
mark(int readlimit)
boolean
markSupported()
int
read()
int
read(char[] cbuf)
int
read(char[] cbuf, int off, int len)
boolean
ready()
void
reset()
long
skip(long n)
-
-
-
Field Detail
-
mConfig
final ReaderConfig mConfig
-
mIn
final java.io.Reader mIn
-
mData
char[] mData
This buffer contains the partially read remains left over after bootstrapper has consumed xml declaration (if one found). It is generally recycled and can be returned after having been read.
-
mPtr
int mPtr
-
mEnd
final int mEnd
-
-
Constructor Detail
-
MergedReader
public MergedReader(ReaderConfig cfg, java.io.Reader in, char[] buf, int start, int end)
-
-
Method Detail
-
close
public void close() throws java.io.IOException
- Specified by:
close
in interfacejava.lang.AutoCloseable
- Specified by:
close
in interfacejava.io.Closeable
- Specified by:
close
in classjava.io.Reader
- Throws:
java.io.IOException
-
mark
public void mark(int readlimit) throws java.io.IOException
- Overrides:
mark
in classjava.io.Reader
- Throws:
java.io.IOException
-
markSupported
public boolean markSupported()
- Overrides:
markSupported
in classjava.io.Reader
-
read
public int read() throws java.io.IOException
- Overrides:
read
in classjava.io.Reader
- Throws:
java.io.IOException
-
read
public int read(char[] cbuf) throws java.io.IOException
- Overrides:
read
in classjava.io.Reader
- Throws:
java.io.IOException
-
read
public int read(char[] cbuf, int off, int len) throws java.io.IOException
- Specified by:
read
in classjava.io.Reader
- Throws:
java.io.IOException
-
ready
public boolean ready() throws java.io.IOException
- Overrides:
ready
in classjava.io.Reader
- Throws:
java.io.IOException
-
reset
public void reset() throws java.io.IOException
- Overrides:
reset
in classjava.io.Reader
- Throws:
java.io.IOException
-
skip
public long skip(long n) throws java.io.IOException
- Overrides:
skip
in classjava.io.Reader
- Throws:
java.io.IOException
-
freeMergedBuffer
private void freeMergedBuffer()
-
-