Package org.openscience.cdk.io
Class MDLRXNV2000Reader
- java.lang.Object
-
- org.openscience.cdk.io.ChemObjectIO
-
- org.openscience.cdk.io.DefaultChemObjectReader
-
- org.openscience.cdk.io.MDLRXNV2000Reader
-
- All Implemented Interfaces:
Closeable
,AutoCloseable
,IChemObjectIO
,IChemObjectReader
,ISimpleChemObjectReader
public class MDLRXNV2000Reader extends DefaultChemObjectReader
Reads a molecule from an MDL RXN file [Dalby, A. et. al.. Journal of Chemical Information and Computer Sciences. 1992. 32]. This MDL RXN reader uses theMDLV2000Reader
to read each mol file.This reader has two modes:
IChemObjectReader.Mode.STRICT
andIChemObjectReader.Mode.RELAXED
. It defaults to modeRELAXED
.In mode
RELAXED
it supports an entry for agents on the count line. It also silently accepts any molecular entities that are not declared on the counts line as agents.
InSTRICT
mode this reader throws aCDKException
if- there is an entry for agents on the counts line or
- the number of molecular entities is greater than the sum of the number of reactants and the number of products (i.e., there are undeclared agents)
Additionally,
MDLV2000Reader
used for reading the individual molecular entities comes with its own set of constraints when running inSTRICT
mode.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from interface org.openscience.cdk.io.IChemObjectReader
IChemObjectReader.Mode
-
-
Field Summary
-
Fields inherited from class org.openscience.cdk.io.DefaultChemObjectReader
errorHandler, mode
-
-
Constructor Summary
Constructors Constructor Description MDLRXNV2000Reader()
MDLRXNV2000Reader(InputStream input)
MDLRXNV2000Reader(InputStream input, IChemObjectReader.Mode mode)
MDLRXNV2000Reader(Reader in)
Constructs a new MDLReader that can read Molecule from a given Reader.MDLRXNV2000Reader(Reader in, IChemObjectReader.Mode mode)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
accepts(Class<? extends IChemObject> classObject)
Returns whether the givenIChemObject
can be read or written.boolean
accepts(IChemObject object)
void
close()
Closes this IChemObjectIO's resources.IResourceFormat
getFormat()
Returns theIResourceFormat
class for this IO class.<T extends IChemObject>
Tread(T object)
Takes an object which subclasses IChemObject, e.g.Molecule, and will read this (from file, database, internet etc).void
setReader(InputStream input)
Sets the InputStream from which this ChemObjectReader should read the contents.void
setReader(Reader input)
Sets the Reader from which this ChemObjectReader should read the contents.-
Methods inherited from class org.openscience.cdk.io.DefaultChemObjectReader
fireFrameRead, handleError, handleError, handleError, handleError, setErrorHandler, setReaderMode
-
Methods inherited from class org.openscience.cdk.io.ChemObjectIO
addChemObjectIOListener, addSetting, addSettings, fireIOSettingQuestion, getIOSettings, getListeners, getSetting, getSetting, getSettings, hasSetting, removeChemObjectIOListener
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.openscience.cdk.io.IChemObjectIO
addChemObjectIOListener, addSetting, addSettings, getIOSettings, getListeners, getSetting, getSetting, getSettings, hasSetting, removeChemObjectIOListener
-
-
-
-
Constructor Detail
-
MDLRXNV2000Reader
public MDLRXNV2000Reader(Reader in)
Constructs a new MDLReader that can read Molecule from a given Reader.- Parameters:
in
- Reader to read from
-
MDLRXNV2000Reader
public MDLRXNV2000Reader(Reader in, IChemObjectReader.Mode mode)
-
MDLRXNV2000Reader
public MDLRXNV2000Reader(InputStream input)
-
MDLRXNV2000Reader
public MDLRXNV2000Reader(InputStream input, IChemObjectReader.Mode mode)
-
MDLRXNV2000Reader
public MDLRXNV2000Reader()
-
-
Method Detail
-
getFormat
public IResourceFormat getFormat()
Description copied from interface:IChemObjectIO
Returns theIResourceFormat
class for this IO class.
-
setReader
public void setReader(Reader input) throws CDKException
Description copied from interface:IChemObjectReader
Sets the Reader from which this ChemObjectReader should read the contents.- Throws:
CDKException
-
setReader
public void setReader(InputStream input) throws CDKException
Description copied from interface:IChemObjectReader
Sets the InputStream from which this ChemObjectReader should read the contents.- Throws:
CDKException
-
accepts
public boolean accepts(Class<? extends IChemObject> classObject)
Description copied from interface:IChemObjectIO
Returns whether the givenIChemObject
can be read or written.- Parameters:
classObject
-IChemObject
of which is tested if it can be handled.- Returns:
- true, if the
IChemObject
can be handled.
-
read
public <T extends IChemObject> T read(T object) throws CDKException
Takes an object which subclasses IChemObject, e.g.Molecule, and will read this (from file, database, internet etc). If the specific implementation does not support a specific IChemObject it will throw an Exception.- Parameters:
object
- The object that subclasses IChemObject- Returns:
- The IChemObject read
- Throws:
CDKException
- thrown in case the type of providedobject
is not supported
-
accepts
public boolean accepts(IChemObject object)
-
close
public void close() throws IOException
Description copied from interface:IChemObjectIO
Closes this IChemObjectIO's resources.- Throws:
IOException
- when the wrapper IO class cannot be closed.
-
-