weka.gui.beans
Class Saver

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JPanel
                  extended by weka.gui.beans.AbstractDataSink
                      extended by weka.gui.beans.Saver
All Implemented Interfaces:
java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible, weka.gui.beans.BeanCommon, weka.gui.beans.DataSink, weka.gui.beans.DataSourceListener, weka.gui.beans.InstanceListener, weka.gui.beans.TestSetListener, weka.gui.beans.TrainingSetListener, weka.gui.beans.Visible, weka.gui.beans.WekaWrapper

public class Saver
extends weka.gui.beans.AbstractDataSink
implements weka.gui.beans.WekaWrapper

Saves data sets using weka.core.converter classes

Version:
$Revision: 1.2 $
Author:
Stefan Mutter
See Also:
Serialized Form

Nested Class Summary
private  class Saver.SaveBatchThread
           
 
Nested classes/interfaces inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
static int EXECUTING
           
static int INITIALIZED
           
private  int m_count
          Count for structure available messages
private  weka.core.Instances m_dataSet
          Holds the instances to be saved
private  java.lang.String m_fileName
          The relation name that becomes part of the file name
protected  java.lang.String m_globalInfo
          Global info for the wrapped loader (if it exists).
private  Saver.SaveBatchThread m_ioThread
          Thread for doing IO in
private  boolean m_isDBSaver
          Flag indicating that instances will be saved to database.
private  weka.core.converters.Saver m_Saver
          Saver
private  weka.core.Instances m_structure
          Holds the structure
private  int status
           
static int TERMINATED
           
 
Fields inherited from class weka.gui.beans.AbstractDataSink
m_listenee, m_logger, m_visual
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
 
Fields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENT
 
Fields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH
 
Constructor Summary
Saver()
          Contsructor
 
Method Summary
 void acceptDataSet(weka.gui.beans.DataSetEvent e)
          Method reacts to a dataset event and starts the writing process in batch mode
 void acceptInstance(weka.gui.beans.InstanceEvent e)
          Methods reacts to instance events and saves instances incrementally.
 void acceptTestSet(weka.gui.beans.TestSetEvent e)
          Method reacts to a test set event and starts the writing process in batch mode
 void acceptTrainingSet(weka.gui.beans.TrainingSetEvent e)
          Method reacts to a training set event and starts the writing process in batch mode
private  void block(boolean tf)
          Function used to stop code that calls acceptTrainingSet.
 weka.core.converters.Saver getSaver()
          Get the saver
 java.lang.Object getWrappedAlgorithm()
          Get the saver
 java.lang.String globalInfo()
          Global info (if it exists) for the wrapped loader
static void main(java.lang.String[] args)
          The main method for testing
 void saveBatch()
          Saves instances in batch mode
 void setSaver(weka.core.converters.Saver saver)
          Set the loader to use
 void setWrappedAlgorithm(java.lang.Object algorithm)
          Set the saver
 void stop()
          Stops the bean
 void waitUntilFinish()
           
 
Methods inherited from class weka.gui.beans.AbstractDataSink
connectionAllowed, connectionAllowed, connectionNotification, disconnectionNotification, getVisual, setLog, setVisual, useDefaultVisual
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getComponentPopupMenu, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getFontMetrics, getGraphics, getHeight, getInheritsPopupMenu, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPopupLocation, getPreferredSize, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setComponentPopupMenu, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFocusTraversalKeys, setFont, setForeground, setInheritsPopupMenu, setInputMap, setInputVerifier, setMaximumSize, setMinimumSize, setNextFocusableComponent, setOpaque, setPreferredSize, setRequestFocusEnabled, setToolTipText, setTransferHandler, setUI, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
 
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, addImpl, addPropertyChangeListener, addPropertyChangeListener, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getComponentZOrder, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, getMousePosition, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicyProvider, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMousePosition, getMouseWheelListeners, getName, getParent, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, isMaximumSizeSet, isMinimumSizeSet, isPreferredSizeSet, isShowing, isValid, isVisible, keyDown, keyUp, list, list, list, location, lostFocus, mouseDown, mouseDrag, mouseEnter, mouseExit, mouseMove, mouseUp, move, nextFocus, paintAll, postEvent, prepareImage, prepareImage, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

m_dataSet

private weka.core.Instances m_dataSet
Holds the instances to be saved


m_structure

private weka.core.Instances m_structure
Holds the structure


m_globalInfo

protected java.lang.String m_globalInfo
Global info for the wrapped loader (if it exists).


m_ioThread

private transient Saver.SaveBatchThread m_ioThread
Thread for doing IO in


m_Saver

private weka.core.converters.Saver m_Saver
Saver


m_fileName

private java.lang.String m_fileName
The relation name that becomes part of the file name


m_isDBSaver

private boolean m_isDBSaver
Flag indicating that instances will be saved to database. Used because structure information can only be sent after a database has been configured.


m_count

private int m_count
Count for structure available messages


status

private int status

INITIALIZED

public static final int INITIALIZED
See Also:
Constant Field Values

EXECUTING

public static final int EXECUTING
See Also:
Constant Field Values

TERMINATED

public static final int TERMINATED
See Also:
Constant Field Values
Constructor Detail

Saver

public Saver()
Contsructor

Method Detail

block

private void block(boolean tf)
Function used to stop code that calls acceptTrainingSet. This is needed as classifier construction is performed inside a separate thread of execution.

Parameters:
tf - a boolean value

waitUntilFinish

public void waitUntilFinish()

globalInfo

public java.lang.String globalInfo()
Global info (if it exists) for the wrapped loader

Returns:
the global info

setSaver

public void setSaver(weka.core.converters.Saver saver)
Set the loader to use

Parameters:
saver - a Saver

acceptDataSet

public void acceptDataSet(weka.gui.beans.DataSetEvent e)
Method reacts to a dataset event and starts the writing process in batch mode

Specified by:
acceptDataSet in interface weka.gui.beans.DataSourceListener
Specified by:
acceptDataSet in class weka.gui.beans.AbstractDataSink
Parameters:
e - a dataset event

acceptTestSet

public void acceptTestSet(weka.gui.beans.TestSetEvent e)
Method reacts to a test set event and starts the writing process in batch mode

Specified by:
acceptTestSet in interface weka.gui.beans.TestSetListener
Specified by:
acceptTestSet in class weka.gui.beans.AbstractDataSink
Parameters:
e - test set event

acceptTrainingSet

public void acceptTrainingSet(weka.gui.beans.TrainingSetEvent e)
Method reacts to a training set event and starts the writing process in batch mode

Specified by:
acceptTrainingSet in interface weka.gui.beans.TrainingSetListener
Specified by:
acceptTrainingSet in class weka.gui.beans.AbstractDataSink
Parameters:
e - a training set event

saveBatch

public void saveBatch()
Saves instances in batch mode


acceptInstance

public void acceptInstance(weka.gui.beans.InstanceEvent e)
Methods reacts to instance events and saves instances incrementally. If the instance to save is null, the file is closed and the saving process is ended.

Specified by:
acceptInstance in interface weka.gui.beans.InstanceListener
Specified by:
acceptInstance in class weka.gui.beans.AbstractDataSink
Parameters:
e - instance event

getSaver

public weka.core.converters.Saver getSaver()
Get the saver

Returns:
a weka.core.converters.Saver value

setWrappedAlgorithm

public void setWrappedAlgorithm(java.lang.Object algorithm)
Set the saver

Specified by:
setWrappedAlgorithm in interface weka.gui.beans.WekaWrapper
Parameters:
algorithm - a Saver

getWrappedAlgorithm

public java.lang.Object getWrappedAlgorithm()
Get the saver

Specified by:
getWrappedAlgorithm in interface weka.gui.beans.WekaWrapper
Returns:
a Saver

stop

public void stop()
Stops the bean

Specified by:
stop in interface weka.gui.beans.BeanCommon
Specified by:
stop in class weka.gui.beans.AbstractDataSink

main

public static void main(java.lang.String[] args)
The main method for testing

Parameters:
args -