weka.core.converters
Class AbstractSaver

java.lang.Object
  extended by weka.core.converters.AbstractSaver
All Implemented Interfaces:
Serializable, CapabilitiesHandler, Saver, RevisionHandler
Direct Known Subclasses:
AbstractFileSaver, DatabaseSaver

public abstract class AbstractSaver
extends Object
implements Saver, CapabilitiesHandler

Abstract class for Saver

Version:
$Revision: 8034 $
Author:
Richard Kirkby ([email protected]), Stefan Mutter ([email protected])
See Also:
Serialized Form

Field Summary
 
Fields inherited from interface weka.core.converters.Saver
BATCH, INCREMENTAL, NONE
 
Constructor Summary
AbstractSaver()
           
 
Method Summary
 void cancel()
          Cancels the incremental saving process if the write mode is CANCEL.
 String filePrefix()
          Default implementation throws an IOException.
 Capabilities getCapabilities()
          Returns the Capabilities of this saver.
 String getFileExtension()
          Default implementation throws an IOException.
 Instances getInstances()
          Gets instances that should be stored.
 int getWriteMode()
          Gets the write mode.
 void resetOptions()
          resets the options
 void resetStructure()
          Resets the structure (header information of the instances)
 String retrieveDir()
          Default implementation throws an IOException.
 void setDestination(File file)
          Default implementation throws an IOException.
 void setDestination(OutputStream output)
          Default implementation throws an IOException.
 void setDir(String dir)
          Default implementation throws an IOException.
 void setDirAndPrefix(String relationName, String add)
          Default implementation throws an IOException.
 void setFile(File file)
          Default implementation throws an IOException.
 void setFilePrefix(String prefix)
          Default implementation throws an IOException.
 void setInstances(Instances instances)
          Sets instances that should be stored.
 void setRetrieval(int mode)
          Sets the retrieval mode.
 int setStructure(Instances headerInfo)
          Sets the strcuture of the instances for the first step of incremental saving.
abstract  void writeBatch()
          Writes to a file in batch mode To be overridden.
 void writeIncremental(Instance i)
          Method for incremental saving.
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface weka.core.RevisionHandler
getRevision
 

Constructor Detail

AbstractSaver

public AbstractSaver()
Method Detail

resetOptions

public void resetOptions()
resets the options


resetStructure

public void resetStructure()
Resets the structure (header information of the instances)


setRetrieval

public void setRetrieval(int mode)
Sets the retrieval mode.

Specified by:
setRetrieval in interface Saver
Parameters:
mode - the retrieval mode

getWriteMode

public int getWriteMode()
Gets the write mode.

Specified by:
getWriteMode in interface Saver
Returns:
the write mode

setInstances

public void setInstances(Instances instances)
Sets instances that should be stored.

Specified by:
setInstances in interface Saver
Parameters:
instances - the instances

getInstances

public Instances getInstances()
Gets instances that should be stored.

Returns:
the instances

setDestination

public void setDestination(File file)
                    throws IOException
Default implementation throws an IOException.

Specified by:
setDestination in interface Saver
Parameters:
file - the File
Throws:
IOException - always

setDestination

public void setDestination(OutputStream output)
                    throws IOException
Default implementation throws an IOException.

Specified by:
setDestination in interface Saver
Parameters:
output - the OutputStream
Throws:
IOException - always

getCapabilities

public Capabilities getCapabilities()
Returns the Capabilities of this saver. Derived savers have to override this method to enable capabilities.

Specified by:
getCapabilities in interface CapabilitiesHandler
Returns:
the capabilities of this object
See Also:
Capabilities

setStructure

public int setStructure(Instances headerInfo)
Sets the strcuture of the instances for the first step of incremental saving. The instances only need to have a header.

Parameters:
headerInfo - an instances object.
Returns:
the appropriate write mode

cancel

public void cancel()
Cancels the incremental saving process if the write mode is CANCEL.


writeIncremental

public void writeIncremental(Instance i)
                      throws IOException
Method for incremental saving. Standard behaviour: no incremental saving is possible, therefore throw an IOException. An incremental saving process is stopped by calling this method with null.

Specified by:
writeIncremental in interface Saver
Parameters:
i - the instance to be saved
Throws:
IOException - IOEXception if the instance acnnot be written to the specified destination

writeBatch

public abstract void writeBatch()
                         throws IOException
Writes to a file in batch mode To be overridden.

Specified by:
writeBatch in interface Saver
Throws:
IOException - exception if writting is not possible

getFileExtension

public String getFileExtension()
                        throws Exception
Default implementation throws an IOException.

Specified by:
getFileExtension in interface Saver
Returns:
a string conatining the file extension (including the '.')
Throws:
IOException - always
Exception - exception if a Saver not implementing FileSourcedConverter is used.

setFile

public void setFile(File file)
             throws IOException
Default implementation throws an IOException.

Specified by:
setFile in interface Saver
Parameters:
file - the File
Throws:
IOException - always

setFilePrefix

public void setFilePrefix(String prefix)
                   throws Exception
Default implementation throws an IOException.

Specified by:
setFilePrefix in interface Saver
Parameters:
prefix - the file prefix
Throws:
IOException - always
Exception - exception if a Saver not implementing FileSourcedConverter is used.

filePrefix

public String filePrefix()
                  throws Exception
Default implementation throws an IOException.

Specified by:
filePrefix in interface Saver
Returns:
the prefix of the file name
Throws:
IOException - always
Exception - exception if a Saver not implementing FileSourcedConverter is used.

setDir

public void setDir(String dir)
            throws IOException
Default implementation throws an IOException.

Specified by:
setDir in interface Saver
Parameters:
dir - the name of the directory to save in
Throws:
IOException - always

setDirAndPrefix

public void setDirAndPrefix(String relationName,
                            String add)
                     throws IOException
Default implementation throws an IOException.

Specified by:
setDirAndPrefix in interface Saver
Parameters:
relationName -
add -
Throws:
IOException - always

retrieveDir

public String retrieveDir()
                   throws IOException
Default implementation throws an IOException.

Specified by:
retrieveDir in interface Saver
Returns:
the directory as a string
Throws:
IOException - always


Copyright © 2013 University of Waikato, Hamilton, NZ. All Rights Reserved.