Class AbstractFileSaver

    • Constructor Detail

      • AbstractFileSaver

        public AbstractFileSaver()
    • Method Detail

      • getWriter

        public java.io.BufferedWriter getWriter()
        Gets the writer
        Returns:
        the BufferedWriter
      • resetWriter

        public void resetWriter()
        Sets the writer to null.
      • getFileExtensions

        public java.lang.String[] getFileExtensions()
        Gets all the file extensions used for this type of file
        Specified by:
        getFileExtensions in interface FileSourcedConverter
        Returns:
        the file extensions
      • retrieveFile

        public java.io.File retrieveFile()
        Gets the destination file.
        Specified by:
        retrieveFile in interface FileSourcedConverter
        Returns:
        the destination file.
      • setFile

        public void setFile​(java.io.File outputFile)
                     throws java.io.IOException
        Sets the destination file.
        Specified by:
        setFile in interface FileSourcedConverter
        Specified by:
        setFile in interface Saver
        Overrides:
        setFile in class AbstractSaver
        Parameters:
        outputFile - the destination file.
        Throws:
        java.io.IOException - throws an IOException if file cannot be set
      • setFilePrefix

        public void setFilePrefix​(java.lang.String prefix)
        Sets the file name prefix
        Specified by:
        setFilePrefix in interface Saver
        Overrides:
        setFilePrefix in class AbstractSaver
        Parameters:
        prefix - the file name prefix
      • filePrefix

        public java.lang.String filePrefix()
        Gets the file name prefix
        Specified by:
        filePrefix in interface Saver
        Overrides:
        filePrefix in class AbstractSaver
        Returns:
        the prefix of the filename
      • setDir

        public void setDir​(java.lang.String dir)
        Sets the directory where the instances should be stored
        Specified by:
        setDir in interface Saver
        Overrides:
        setDir in class AbstractSaver
        Parameters:
        dir - a string containing the directory path and name
      • retrieveDir

        public java.lang.String retrieveDir()
        Gets the directory
        Specified by:
        retrieveDir in interface Saver
        Overrides:
        retrieveDir in class AbstractSaver
        Returns:
        a string with the file name
      • setEnvironment

        public void setEnvironment​(Environment env)
        Set the environment variables to use.
        Specified by:
        setEnvironment in interface EnvironmentHandler
        Parameters:
        env - the environment variables to use
      • listOptions

        public java.util.Enumeration listOptions()
        Returns an enumeration describing the available options.
        Specified by:
        listOptions in interface OptionHandler
        Returns:
        an enumeration of all the available options.
      • setOptions

        public void setOptions​(java.lang.String[] options)
                        throws java.lang.Exception
        Parses a given list of options. Valid option is:

        -i input arff file
        The input filw in arff format.

        -o the output file
        The output file. The prefix of the output file is sufficient. If no output file is given, Saver tries to use standard out.

        Specified by:
        setOptions in interface OptionHandler
        Parameters:
        options - the list of options as an array of strings
        Throws:
        java.lang.Exception - if an option is not supported
      • getOptions

        public java.lang.String[] getOptions()
        Gets the current settings of the Saver object.
        Specified by:
        getOptions in interface OptionHandler
        Returns:
        an array of strings suitable for passing to setOptions
      • cancel

        public void cancel()
        Cancels the incremental saving process.
        Overrides:
        cancel in class AbstractSaver
      • setDestination

        public void setDestination​(java.io.File file)
                            throws java.io.IOException
        Sets the destination file (and directories if necessary).
        Specified by:
        setDestination in interface Saver
        Overrides:
        setDestination in class AbstractSaver
        Parameters:
        file - the File
        Throws:
        java.io.IOException - always
      • setDestination

        public void setDestination​(java.io.OutputStream output)
                            throws java.io.IOException
        Sets the destination output stream.
        Specified by:
        setDestination in interface Saver
        Overrides:
        setDestination in class AbstractSaver
        Parameters:
        output - the output stream.
        Throws:
        java.io.IOException - throws an IOException if destination cannot be set
      • setDirAndPrefix

        public void setDirAndPrefix​(java.lang.String relationName,
                                    java.lang.String add)
        Sets the directory and the file prefix. This method is used in the KnowledgeFlow GUI
        Specified by:
        setDirAndPrefix in interface Saver
        Overrides:
        setDirAndPrefix in class AbstractSaver
        Parameters:
        relationName - the name of the relation to save
        add - additional string which should be part of the filename
      • getFileDescription

        public abstract java.lang.String getFileDescription()
        to be pverridden
        Specified by:
        getFileDescription in interface FileSourcedConverter
        Returns:
        the file type description.
      • useRelativePathTipText

        public java.lang.String useRelativePathTipText()
        Tip text suitable for displaying int the GUI
        Returns:
        a description of this property as a String
      • setUseRelativePath

        public void setUseRelativePath​(boolean rp)
        Set whether to use relative rather than absolute paths
        Specified by:
        setUseRelativePath in interface FileSourcedConverter
        Parameters:
        rp - true if relative paths are to be used
      • getUseRelativePath

        public boolean getUseRelativePath()
        Gets whether relative paths are to be used
        Specified by:
        getUseRelativePath in interface FileSourcedConverter
        Returns:
        true if relative paths are to be used
      • runFileSaver

        public static void runFileSaver​(AbstractFileSaver saver,
                                        java.lang.String[] options)
        runs the given saver with the specified options
        Parameters:
        saver - the saver to run
        options - the commandline options