Package weka.gui.beans
Class SerializedModelSaver
- java.lang.Object
-
- java.awt.Component
-
- java.awt.Container
-
- javax.swing.JComponent
-
- javax.swing.JPanel
-
- weka.gui.beans.SerializedModelSaver
-
- All Implemented Interfaces:
java.awt.image.ImageObserver,java.awt.MenuContainer,java.io.Serializable,java.util.EventListener,javax.accessibility.Accessible,EnvironmentHandler,BatchClassifierListener,BatchClustererListener,BeanCommon,IncrementalClassifierListener,Visible
public class SerializedModelSaver extends javax.swing.JPanel implements BeanCommon, Visible, BatchClassifierListener, IncrementalClassifierListener, BatchClustererListener, EnvironmentHandler, java.io.Serializable
A bean that saves serialized models- Version:
- $Revision: 10534 $
- Author:
- Mark Hall (mhall{[at]}pentaho{[dot]}org
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static intBINARYstatic java.lang.StringFILE_EXTENSIONthe extension for serialized models (binary Java serialization)static intKOMLVstatic java.util.ArrayList<Tag>s_fileFormatsAvailableAvailable file formats.static intXSTREAM-
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOW
-
-
Constructor Summary
Constructors Constructor Description SerializedModelSaver()Constructor.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidacceptClassifier(BatchClassifierEvent ce)Accept and save a batch trained classifier.voidacceptClassifier(IncrementalClassifierEvent ce)Accept and save an incrementally trained classifier.voidacceptClusterer(BatchClustererEvent ce)Accept and save a batch trained clusterer.booleanconnectionAllowed(java.beans.EventSetDescriptor esd)Returns true if, at this time, the object will accept a connection according to the supplied EventSetDescriptor.booleanconnectionAllowed(java.lang.String eventName)Returns true if, at this time, the object will accept a connection according to the supplied event name.voidconnectionNotification(java.lang.String eventName, java.lang.Object source)Notify this object that it has been registered as a listener with a source with respect to the supplied event name.voiddisconnectionNotification(java.lang.String eventName, java.lang.Object source)Notify this object that it has been deregistered as a listener with a source with respect to the supplied event name.java.lang.StringgetCustomName()Get the custom (descriptive) name for this bean (if one has been set)java.io.FilegetDirectory()Get the directory that the model(s) will be saved intoTaggetFileFormat()Get the file format to use for saving.java.lang.StringgetPrefix()Get the prefix to prepend to the model file names.booleangetUseRelativePath()Get whether to use relative paths for the directory.BeanVisualgetVisual()Get the visual being used by this data source.java.lang.StringglobalInfo()Global info for this bean.booleanisBusy()Returns true if.static voidsaveBinary(java.io.File saveTo, java.lang.Object model, Instances header)Save a model in binary form.static voidsaveKOML(java.io.File saveTo, java.lang.Object model, Instances header)Save a model in KOML deep object serialized XML form.static voidsaveXStream(java.io.File saveTo, java.lang.Object model, Instances header)Save a model in XStream deep object serialized XML form.voidsetCustomName(java.lang.String name)Set a custom (descriptive) name for this beanvoidsetDirectory(java.io.File d)Set the directory that the model(s) will be saved into.voidsetEnvironment(Environment env)Set environment variables to use.voidsetFileFormat(Tag ff)Set the file format to use for saving.voidsetLog(Logger logger)Set a log for this bean.voidsetPrefix(java.lang.String p)Set the prefix to prepend to the model file names.voidsetUseRelativePath(boolean rp)Set whether to use relative paths for the directory.voidsetVisual(BeanVisual newVisual)Set the visual for this data source.voidstop()Stop any processing that the bean might be doing.voiduseDefaultVisual()Use the default images for this bean.TagvalidateFileFormat(Tag ff)Validate the file format.-
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, setUI, updateUI
-
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBaseline, getBaselineResizeBehavior, getBorder, getBounds, getClientProperty, 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, hide, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingForPrint, isPaintingTile, isRequestFocusEnabled, isValidateRoot, paint, paintImmediately, paintImmediately, print, printAll, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, 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, setVerifyInputWhenFocusTarget, setVisible, unregisterKeyboardAction, update
-
Methods inherited from class java.awt.Container
add, add, add, add, add, addContainerListener, 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, remove, remove, removeAll, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusDownCycle, validate
-
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, contains, createImage, createImage, createVolatileImage, createVolatileImage, dispatchEvent, enable, enableInputMethods, 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, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, 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, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, requestFocus, requestFocusInWindow, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setMixingCutoutShape, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusBackward, transferFocusUpCycle
-
-
-
-
Field Detail
-
BINARY
public static final int BINARY
- See Also:
- Constant Field Values
-
KOMLV
public static final int KOMLV
- See Also:
- Constant Field Values
-
XSTREAM
public static final int XSTREAM
- See Also:
- Constant Field Values
-
FILE_EXTENSION
public static final java.lang.String FILE_EXTENSION
the extension for serialized models (binary Java serialization)- See Also:
- Constant Field Values
-
s_fileFormatsAvailable
public static java.util.ArrayList<Tag> s_fileFormatsAvailable
Available file formats. Reflection is used to check if classes are available for deep object serialization to XML
-
-
Method Detail
-
setCustomName
public void setCustomName(java.lang.String name)
Set a custom (descriptive) name for this bean- Specified by:
setCustomNamein interfaceBeanCommon- Parameters:
name- the name to use
-
getCustomName
public java.lang.String getCustomName()
Get the custom (descriptive) name for this bean (if one has been set)- Specified by:
getCustomNamein interfaceBeanCommon- Returns:
- the custom name (or the default name)
-
useDefaultVisual
public void useDefaultVisual()
Use the default images for this bean.- Specified by:
useDefaultVisualin interfaceVisible
-
setVisual
public void setVisual(BeanVisual newVisual)
Set the visual for this data source.
-
getVisual
public BeanVisual getVisual()
Get the visual being used by this data source.
-
connectionAllowed
public boolean connectionAllowed(java.beans.EventSetDescriptor esd)
Returns true if, at this time, the object will accept a connection according to the supplied EventSetDescriptor.- Specified by:
connectionAllowedin interfaceBeanCommon- Parameters:
esd- the EventSetDescriptor- Returns:
- true if the object will accept a connection
-
connectionAllowed
public boolean connectionAllowed(java.lang.String eventName)
Returns true if, at this time, the object will accept a connection according to the supplied event name.- Specified by:
connectionAllowedin interfaceBeanCommon- Parameters:
eventName- the event- Returns:
- true if the object will accept a connection
-
connectionNotification
public void connectionNotification(java.lang.String eventName, java.lang.Object source)Notify this object that it has been registered as a listener with a source with respect to the supplied event name.- Specified by:
connectionNotificationin interfaceBeanCommon- Parameters:
eventName- the eventsource- the source with which this object has been registered as a listener
-
disconnectionNotification
public void disconnectionNotification(java.lang.String eventName, java.lang.Object source)Notify this object that it has been deregistered as a listener with a source with respect to the supplied event name.- Specified by:
disconnectionNotificationin interfaceBeanCommon- Parameters:
eventName- the eventsource- the source with which this object has been registered as a listener
-
setLog
public void setLog(Logger logger)
Set a log for this bean.- Specified by:
setLogin interfaceBeanCommon- Parameters:
logger- aweka.gui.Loggervalue
-
stop
public void stop()
Stop any processing that the bean might be doing.- Specified by:
stopin interfaceBeanCommon
-
isBusy
public boolean isBusy()
Returns true if. at this time, the bean is busy with some (i.e. perhaps a worker thread is performing some calculation).- Specified by:
isBusyin interfaceBeanCommon- Returns:
- true if the bean is busy.
-
acceptClusterer
public void acceptClusterer(BatchClustererEvent ce)
Accept and save a batch trained clusterer.- Specified by:
acceptClustererin interfaceBatchClustererListener- Parameters:
ce- aBatchClassifierEventvalue
-
acceptClassifier
public void acceptClassifier(IncrementalClassifierEvent ce)
Accept and save an incrementally trained classifier.- Specified by:
acceptClassifierin interfaceIncrementalClassifierListener- Parameters:
ce- the BatchClassifierEvent containing the classifier
-
acceptClassifier
public void acceptClassifier(BatchClassifierEvent ce)
Accept and save a batch trained classifier.- Specified by:
acceptClassifierin interfaceBatchClassifierListener- Parameters:
ce- the BatchClassifierEvent containing the classifier
-
saveBinary
public static void saveBinary(java.io.File saveTo, java.lang.Object model, Instances header) throws java.io.IOExceptionSave a model in binary form.- Parameters:
saveTo- the file name to save tomodel- the model to saveheader- the header of the data that was used to train the model (optional)- Throws:
java.io.IOException
-
saveKOML
public static void saveKOML(java.io.File saveTo, java.lang.Object model, Instances header) throws java.lang.ExceptionSave a model in KOML deep object serialized XML form.- Parameters:
saveTo- the file name to save tomodel- the model to saveheader- the header of the data that was used to train the model (optional)- Throws:
java.lang.Exception
-
saveXStream
public static void saveXStream(java.io.File saveTo, java.lang.Object model, Instances header) throws java.lang.ExceptionSave a model in XStream deep object serialized XML form.- Parameters:
saveTo- the file name to save tomodel- the model to saveheader- the header of the data that was used to train the model (optional)- Throws:
java.lang.Exception
-
getDirectory
public java.io.File getDirectory()
Get the directory that the model(s) will be saved into- Returns:
- the directory to save to
-
setDirectory
public void setDirectory(java.io.File d)
Set the directory that the model(s) will be saved into.- Parameters:
d- the directory to save to
-
setUseRelativePath
public void setUseRelativePath(boolean rp)
Set whether to use relative paths for the directory. I.e. relative to the startup (user.dir) directory- Parameters:
rp- true if relative paths are to be used
-
getUseRelativePath
public boolean getUseRelativePath()
Get whether to use relative paths for the directory. I.e. relative to the startup (user.dir) directory- Returns:
- true if relative paths are to be used
-
getPrefix
public java.lang.String getPrefix()
Get the prefix to prepend to the model file names.- Returns:
- the prefix to prepend
-
setPrefix
public void setPrefix(java.lang.String p)
Set the prefix to prepend to the model file names.- Parameters:
p- the prefix to prepend
-
globalInfo
public java.lang.String globalInfo()
Global info for this bean. Gets displayed in the GUI.- Returns:
- information about this bean.
-
setFileFormat
public void setFileFormat(Tag ff)
Set the file format to use for saving.- Parameters:
ff- the file format to use
-
getFileFormat
public Tag getFileFormat()
Get the file format to use for saving.- Returns:
- the file format to use
-
validateFileFormat
public Tag validateFileFormat(Tag ff)
Validate the file format. After this bean is deserialized, classes for XML serialization may not be in the classpath any more.- Parameters:
ff- the current file format to validate
-
setEnvironment
public void setEnvironment(Environment env)
Set environment variables to use.- Specified by:
setEnvironmentin interfaceEnvironmentHandler- Parameters:
env- the environment variables to use
-
-