Interface Loader
-
- All Superinterfaces:
java.io.Serializable
- All Known Implementing Classes:
AbstractLoader,CSVLoader
public interface Loader extends java.io.SerializableInterface to something that can load Instances from an input source in some format.- Version:
- $Revision: 1.6.2.2 $
- Author:
- Mark Hall (mhall@cs.waikato.ac.nz)
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description InstancesgetDataSet()Return the full data set.InstancegetNextInstance(Instances structure)Read the data set incrementally---get the next instance in the data set or returns null if there are no more instances to get.InstancesgetStructure()Determines and returns (if possible) the structure (internally the header) of the data set as an empty set of instances.voidreset()Resets the Loader object ready to begin loading.voidsetSource(java.io.File file)Resets the Loader object and sets the source of the data set to be the supplied File object.voidsetSource(java.io.InputStream input)Resets the Loader object and sets the source of the data set to be the supplied InputStream.
-
-
-
Method Detail
-
reset
void reset() throws java.lang.ExceptionResets the Loader object ready to begin loading. If there is an existing source, implementations should attempt to reset in such a fashion as to be able to load from the beginning of the source.- Throws:
java.lang.Exception
-
setSource
void setSource(java.io.File file) throws java.io.IOExceptionResets the Loader object and sets the source of the data set to be the supplied File object.- Parameters:
file- the File- Throws:
java.io.IOException- if an error occurs support loading from a File.public_normal_behavior requires: file != null && (* file exists *); modifiable: model_sourceSupplied, model_structureDetermined; ensures: model_sourceSupplied == true && model_structureDetermined == false; also public_exceptional_behavior requires: file == null || (* file does not exist *); signals: (IOException);
-
setSource
void setSource(java.io.InputStream input) throws java.io.IOExceptionResets the Loader object and sets the source of the data set to be the supplied InputStream.- Parameters:
input- the source InputStream- Throws:
java.io.IOException- if this Loader doesn't support loading from a File.
-
getStructure
Instances getStructure() throws java.io.IOException
Determines and returns (if possible) the structure (internally the header) of the data set as an empty set of instances.- Returns:
- the structure of the data set as an empty set of Instances
- Throws:
java.io.IOException- if there is no source or parsing failspublic_normal_behavior requires: model_sourceSupplied == true && model_structureDetermined == false && (* successful parse *); modifiable: model_structureDetermined; ensures: \result != null && \result.numInstances() == 0 && model_structureDetermined == true; also public_exceptional_behavior requires: model_sourceSupplied == false || (* unsuccessful parse *); signals: (IOException);
-
getDataSet
Instances getDataSet() throws java.io.IOException
Return the full data set. If the structure hasn't yet been determined by a call to getStructure then the method should do so before processing the rest of the data set.- Returns:
- the full data set as an Instances object
- Throws:
java.io.IOException- if there is an error during parsing or if getNextInstance has been called on this source (either incremental or batch loading can be used, not both).public_normal_behavior requires: model_sourceSupplied == true && (* successful parse *); modifiable: model_structureDetermined; ensures: \result != null && \result.numInstances() >= 0 && model_structureDetermined == true; also public_exceptional_behavior requires: model_sourceSupplied == false || (* unsuccessful parse *); signals: (IOException);
-
getNextInstance
Instance getNextInstance(Instances structure) throws java.io.IOException
Read the data set incrementally---get the next instance in the data set or returns null if there are no more instances to get. If the structure hasn't yet been determined by a call to getStructure then method should do so before returning the next instance in the data set. If it is not possible to read the data set incrementally (ie. in cases where the data set structure cannot be fully established before all instances have been seen) then an exception should be thrown.- Parameters:
structure- the dataset header information, will get updated in case of string or relational attributes- Returns:
- the next instance in the data set as an Instance object or null if there are no more instances to be read
- Throws:
java.io.IOException- if there is an error during parsing or if getDataSet has been called on this source (either incremental or batch loading can be used, not both).
-
-