Class SerializedModelSaver

    • Nested Class Summary

      • Nested classes/interfaces inherited from class javax.swing.JComponent

        javax.swing.JComponent.AccessibleJComponent
      • Nested classes/interfaces inherited from class java.awt.Component

        java.awt.Component.BaselineResizeBehavior
    • 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
      • 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
    • 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 into
      Tag 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 bean
      void 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
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
    • Field Detail

      • 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
    • Constructor Detail

      • SerializedModelSaver

        public SerializedModelSaver()
        Constructor.
    • Method Detail

      • setCustomName

        public void setCustomName​(java.lang.String name)
        Set a custom (descriptive) name for this bean
        Specified by:
        setCustomName in interface BeanCommon
        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 interface BeanCommon
        Returns:
        the custom name (or the default name)
      • useDefaultVisual

        public void useDefaultVisual()
        Use the default images for this bean.
        Specified by:
        useDefaultVisual in interface Visible
      • setVisual

        public void setVisual​(BeanVisual newVisual)
        Set the visual for this data source.
        Specified by:
        setVisual in interface Visible
        Parameters:
        newVisual - a BeanVisual value
      • getVisual

        public BeanVisual getVisual()
        Get the visual being used by this data source.
        Specified by:
        getVisual in interface Visible
        Returns:
        a BeanVisual value
      • 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 interface BeanCommon
        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 interface BeanCommon
        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 interface BeanCommon
        Parameters:
        eventName - the event
        source - 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 interface BeanCommon
        Parameters:
        eventName - the event
        source - 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 interface BeanCommon
        Parameters:
        logger - a weka.gui.Logger value
      • stop

        public void stop()
        Stop any processing that the bean might be doing.
        Specified by:
        stop in interface BeanCommon
      • 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 interface BeanCommon
        Returns:
        true if the bean is busy.
      • 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 to
        model - the model to save
        header - 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 to
        model - the model to save
        header - 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 to
        model - the model to save
        header - 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