Package org.custommonkey.xmlunit
Class DoctypeInputStream
- java.lang.Object
-
- java.io.InputStream
-
- org.custommonkey.xmlunit.DoctypeInputStream
-
- All Implemented Interfaces:
Closeable,AutoCloseable
public class DoctypeInputStream extends InputStream
Adapts the marked-up content in a source InputStream to specify that it conforms to a different DTD. Combines InputStream semantics with the ability to specify a target doctype for a byte stream containing XML markup. Used by Validator class to wrap an InputStream, when performing validation of a document against a DTD.
-
-
Constructor Summary
Constructors Constructor Description DoctypeInputStream(InputStream originalSource, String encoding, String doctypeName, String systemID)Create an InputStream whose XML content is provided by the originalSource with the exception of the DOCTYPE which is provided by the doctypeName and systemID.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclose()protected StringgetContent(String encoding)intread()Read DOCTYPE-replaced content from the wrapped InputStream-
Methods inherited from class java.io.InputStream
available, mark, markSupported, nullInputStream, read, read, readAllBytes, readNBytes, readNBytes, reset, skip, transferTo
-
-
-
-
Constructor Detail
-
DoctypeInputStream
public DoctypeInputStream(InputStream originalSource, String encoding, String doctypeName, String systemID)
Create an InputStream whose XML content is provided by the originalSource with the exception of the DOCTYPE which is provided by the doctypeName and systemID.- Parameters:
originalSource- the original inputdoctypeName- name of the new doctypesystemID- system id of the new doctypeencoding- optional encoding of the input (defaults to platform encoding)
-
-
Method Detail
-
getContent
protected String getContent(String encoding) throws IOException
- Parameters:
encoding- optional encoding of the input (defaults to platform encoding)- Returns:
- the content of the original source, without amendments or substitutions. Safe to call multiple times.
- Throws:
IOException- if thrown while reading from the original source
-
read
public int read() throws IOExceptionRead DOCTYPE-replaced content from the wrapped InputStream- Specified by:
readin classInputStream- Throws:
IOException
-
close
public void close() throws IOException- Specified by:
closein interfaceAutoCloseable- Specified by:
closein interfaceCloseable- Overrides:
closein classInputStream- Throws:
IOException
-
-