|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
public interface IChemObjectIO
This class is the interface that all IO readers should implement. Programs need only care about this interface for any kind of IO. Currently, database IO and file IO is supported.
The easiest way to implement a new IChemObjectReader is to
subclass the DefaultChemObjectReader.
DefaultChemObjectReader| Method Summary | ||
|---|---|---|
boolean |
accepts(Class<? extends IChemObject> classObject)
Returns whether the given IChemObject can be read or written. |
|
void |
addChemObjectIOListener(IChemObjectIOListener listener)
Adds a IChemObjectIOListener to this IChemObjectIO. |
|
|
addSetting(IOSetting setting)
Add an IOSetting to the reader/writer. |
|
void |
addSettings(Collection<IOSetting> settings)
Adds a collection of IOSettings to the reader/writer. |
|
void |
close()
Closes this IChemObjectIO's resources. |
|
IResourceFormat |
getFormat()
Returns the IResourceFormat class for this IO class. |
|
IOSetting[] |
getIOSettings()
Returns an array of IOSettings defined by this IChemObjectIO class. |
|
Collection<IChemObjectIOListener> |
getListeners()
Access all the listeners for this ChemObject Reader or Writer. |
|
|
getSetting(String name)
Access a named setting managed by this reader/writer. |
|
|
getSetting(String name,
Class<S> c)
Access a named setting managed by this reader/writer. |
|
Collection<IOSetting> |
getSettings()
Access a collection of IOSettings for this reader/writer. |
|
boolean |
hasSetting(String name)
Determine whether this reader/writer has a setting of the provided name. |
|
void |
removeChemObjectIOListener(IChemObjectIOListener listener)
Removes a IChemObjectIOListener from this IChemObjectIO. |
|
| Method Detail |
|---|
IResourceFormat getFormat()
IResourceFormat class for this IO class.
boolean accepts(Class<? extends IChemObject> classObject)
IChemObject can be read or written.
classObject - IChemObject of which is tested if it can be handled.
IChemObject can be handled.
@TestMethod(value="testClose")
void close()
throws IOException
close in interface Closeablethrows - an IOException when the wrapper IO class cannot be closed.
IOExceptionIOSetting[] getIOSettings()
IOSettings defined by this IChemObjectIO class.
IOSettings for this class.void addChemObjectIOListener(IChemObjectIOListener listener)
IChemObjectIOListener to this IChemObjectIO.
listener - the reader listener to add.void removeChemObjectIOListener(IChemObjectIOListener listener)
IChemObjectIOListener from this IChemObjectIO.
listener - the listener to be removed.Collection<IChemObjectIOListener> getListeners()
addListener(IChemObjectIOListener) and
removeListener(IChemObjectIOListener)
<S extends IOSetting> S addSetting(IOSetting setting)
private BooleanIOSetting setting; // field
...
setting = addSetting(new BooleanIOSetting("setting", ...));
// if setting was already added we are now using the correct instance
setting - setting to add
SettingManager.add(org.openscience.cdk.interfaces.ISetting)void addSettings(Collection<IOSetting> settings)
IOSettings to the reader/writer. This
is useful for transferring/propagating settings between different
reader/writer.
When the new settings are added if there is a setting with the same
name already stored the value for the new setting is set on the managed
setting (See. IteratingSDFReader/SDFWriter for propagation examples).
Note that if the setting is invalid (a CDKException thrown) then the setting
will not be set.
// two different readers (of same or different type)
IChemObjectReader reader1 = ...;
IChemObjectReader reader2 = ...;
// settings transferred from reader2 to reader1
reader1.addSettings(reader2.getSettings());
settings - collection of settings to addgetSettings()boolean hasSetting(String name)
name - name of a setting
SettingManager.has(String)<S extends IOSetting> S getSetting(String name)
S - type to cast toname - name of the setting
getSetting(String, Class),
SettingManager.get(String)
<S extends IOSetting> S getSetting(String name,
Class<S> c)
S - type to cast toname - name of the settingc - the class of the setting (matching generic return type). This is need
as due to type erasure we don't know the class of 'S' at runtime.
getSetting(String),
SettingManager.get(String, Class)Collection<IOSetting> getSettings()
IOSettings for this reader/writer.
addSettings(java.util.Collection)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||