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 int
BINARY
static java.lang.String
FILE_EXTENSION
the extension for serialized models (binary Java serialization)static int
KOMLV
static java.util.ArrayList<Tag>
s_fileFormatsAvailable
Available file formats.static int
XSTREAM
-
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 void
acceptClassifier(BatchClassifierEvent ce)
Accept and save a batch trained classifier.void
acceptClassifier(IncrementalClassifierEvent ce)
Accept and save an incrementally trained classifier.void
acceptClusterer(BatchClustererEvent ce)
Accept and save a batch trained clusterer.boolean
connectionAllowed(java.beans.EventSetDescriptor esd)
Returns true if, at this time, the object will accept a connection according to the supplied EventSetDescriptor.boolean
connectionAllowed(java.lang.String eventName)
Returns true if, at this time, the object will accept a connection according to the supplied event name.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.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.java.lang.String
getCustomName()
Get the custom (descriptive) name for this bean (if one has been set)java.io.File
getDirectory()
Get the directory that the model(s) will be saved intoTag
getFileFormat()
Get the file format to use for saving.java.lang.String
getPrefix()
Get the prefix to prepend to the model file names.boolean
getUseRelativePath()
Get whether to use relative paths for the directory.BeanVisual
getVisual()
Get the visual being used by this data source.java.lang.String
globalInfo()
Global info for this bean.boolean
isBusy()
Returns true if.static void
saveBinary(java.io.File saveTo, java.lang.Object model, Instances header)
Save a model in binary form.static void
saveKOML(java.io.File saveTo, java.lang.Object model, Instances header)
Save a model in KOML deep object serialized XML form.static void
saveXStream(java.io.File saveTo, java.lang.Object model, Instances header)
Save a model in XStream deep object serialized XML form.void
setCustomName(java.lang.String name)
Set a custom (descriptive) name for this beanvoid
setDirectory(java.io.File d)
Set the directory that the model(s) will be saved into.void
setEnvironment(Environment env)
Set environment variables to use.void
setFileFormat(Tag ff)
Set the file format to use for saving.void
setLog(Logger logger)
Set a log for this bean.void
setPrefix(java.lang.String p)
Set the prefix to prepend to the model file names.void
setUseRelativePath(boolean rp)
Set whether to use relative paths for the directory.void
setVisual(BeanVisual newVisual)
Set the visual for this data source.void
stop()
Stop any processing that the bean might be doing.void
useDefaultVisual()
Use the default images for this bean.Tag
validateFileFormat(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:
setCustomName
in 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:
getCustomName
in interfaceBeanCommon
- Returns:
- the custom name (or the default name)
-
useDefaultVisual
public void useDefaultVisual()
Use the default images for this bean.- Specified by:
useDefaultVisual
in 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:
connectionAllowed
in 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:
connectionAllowed
in 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:
connectionNotification
in 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:
disconnectionNotification
in 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:
setLog
in interfaceBeanCommon
- Parameters:
logger
- aweka.gui.Logger
value
-
stop
public void stop()
Stop any processing that the bean might be doing.- Specified by:
stop
in 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:
isBusy
in interfaceBeanCommon
- Returns:
- true if the bean is busy.
-
acceptClusterer
public void acceptClusterer(BatchClustererEvent ce)
Accept and save a batch trained clusterer.- Specified by:
acceptClusterer
in interfaceBatchClustererListener
- Parameters:
ce
- aBatchClassifierEvent
value
-
acceptClassifier
public void acceptClassifier(IncrementalClassifierEvent ce)
Accept and save an incrementally trained classifier.- Specified by:
acceptClassifier
in interfaceIncrementalClassifierListener
- Parameters:
ce
- the BatchClassifierEvent containing the classifier
-
acceptClassifier
public void acceptClassifier(BatchClassifierEvent ce)
Accept and save a batch trained classifier.- Specified by:
acceptClassifier
in 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.IOException
Save 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.Exception
Save 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.Exception
Save 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:
setEnvironment
in interfaceEnvironmentHandler
- Parameters:
env
- the environment variables to use
-
-