Package weka.gui.beans
Class Sorter
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
weka.gui.beans.Sorter
- All Implemented Interfaces:
ImageObserver,MenuContainer,Serializable,EventListener,Accessible,EnvironmentHandler,BeanCommon,DataSource,DataSourceListener,EventConstraints,InstanceListener,StructureProducer,TestSetListener,TrainingSetListener,Visible
@KFStep(category="Tools",
toolTipText="Sort instances in ascending or descending order")
public class Sorter
extends JPanel
implements BeanCommon, Visible, Serializable, DataSource, DataSourceListener, TrainingSetListener, TestSetListener, InstanceListener, EventConstraints, StructureProducer, EnvironmentHandler
Sorts incoming instances in ascending or descending
order according to the values of user specified attributes. Instances can be
sorted according to multiple attributes (defined in order). Handles data sets
larger than can be fit into main memory via instance connections and
specifying the in-memory buffer size. Implements a merge-sort by writing the
sorted in-memory buffer to a file when full and then interleaving instances
from the disk based file(s) when the incoming stream has finished.
- Version:
- $Revision: 11132 $
- Author:
- Mark Hall (mhall{[at]}pentaho{[dot]}com)
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponentNested classes/interfaces inherited from class java.awt.Component
Component.BaselineResizeBehavior -
Field Summary
Fields inherited from class javax.swing.JComponent
TOOL_TIP_TEXT_KEY, UNDEFINED_CONDITION, WHEN_ANCESTOR_OF_FOCUSED_COMPONENT, WHEN_FOCUSED, WHEN_IN_FOCUSED_WINDOWFields inherited from class java.awt.Component
BOTTOM_ALIGNMENT, CENTER_ALIGNMENT, LEFT_ALIGNMENT, RIGHT_ALIGNMENT, TOP_ALIGNMENTFields inherited from interface java.awt.image.ImageObserver
ABORT, ALLBITS, ERROR, FRAMEBITS, HEIGHT, PROPERTIES, SOMEBITS, WIDTH -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidAccept and process a data set eventvoidAccept and process an instance eventvoidAccept and process a test set eventvoidAccept and process a training set eventvoidAdd a datasource listenervoidAdd an instance listenerbooleanReturns true if, at this time, the object will accept a connection via the named eventbooleanconnectionAllowed(String eventName) Returns true if, at this time, the object will accept a connection via the named eventvoidconnectionNotification(String eventName, Object source) Notify this object that it has been registered as a listener with a source for receiving events described by the named event This object is responsible for recording this fact.voiddisconnectionNotification(String eventName, Object source) Notify this object that it has been deregistered as a listener with a source for named event.booleaneventGeneratable(String eventName) Returns true if, at the current time, the named event could be generated.Get the size of the in-memory bufferReturns the structure of the incoming instances (if any)Get the custom (descriptive) name for this bean (if one has been set)Get the sort rules to usegetStructure(String eventName) Get the structure of the output encapsulated in the named event.Get the directory to use for temporary files during incremental operationGet the visual representationHelp information suitable for displaying in the GUI.booleanisBusy()Returns true if.voidRemove a datasource listenervoidRemove an instance listenervoidsetBufferSize(String buffSize) Set the size of the in-memory buffervoidsetCustomName(String name) Set a custom (descriptive) name for this beanvoidSet environment variables to usevoidSet a loggervoidsetSortDetails(String sortDetails) Set the sort rules to usevoidsetTempDirectory(String tempDir) Set the directory to use for temporary files during incremental operationvoidsetVisual(BeanVisual newVisual) Set a new visual representationvoidstop()Stop any processing that the bean might be doing.voidUse the default visual representationMethods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, setUI, updateUIMethods 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, updateMethods 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, validateMethods 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
-
Constructor Details
-
Sorter
public Sorter()Constructs a new Sorter
-
-
Method Details
-
globalInfo
Help information suitable for displaying in the GUI.- Returns:
- a description of this component
-
eventGeneratable
Returns true if, at the current time, the named event could be generated.- Specified by:
eventGeneratablein interfaceEventConstraints- Parameters:
eventName- the name of the event in question- Returns:
- true if the named event could be generated
-
acceptInstance
Accept and process an instance event- Specified by:
acceptInstancein interfaceInstanceListener- Parameters:
e- anInstanceEventvalue
-
acceptTestSet
Accept and process a test set event- Specified by:
acceptTestSetin interfaceTestSetListener- Parameters:
e- aTestSetEventvalue
-
acceptTrainingSet
Accept and process a training set event- Specified by:
acceptTrainingSetin interfaceTrainingSetListener- Parameters:
e- aTrainingSetEventvalue
-
getBufferSize
Get the size of the in-memory buffer- Returns:
- the size of the in-memory buffer
-
setBufferSize
Set the size of the in-memory buffer- Parameters:
buffSize- the size of the in-memory buffer
-
setTempDirectory
Set the directory to use for temporary files during incremental operation- Parameters:
tempDir- the temp dir to use
-
getTempDirectory
Get the directory to use for temporary files during incremental operation- Returns:
- the temp dir to use
-
setSortDetails
Set the sort rules to use- Parameters:
sortDetails- the sort rules in internal string representation
-
getSortDetails
Get the sort rules to use- Returns:
- the sort rules in internal string representation
-
acceptDataSet
Accept and process a data set event- Specified by:
acceptDataSetin interfaceDataSourceListener- Parameters:
e- aDataSetEventvalue
-
addDataSourceListener
Add a datasource listener- Specified by:
addDataSourceListenerin interfaceDataSource- Parameters:
dsl- the datasource listener to add
-
removeDataSourceListener
Remove a datasource listener- Specified by:
removeDataSourceListenerin interfaceDataSource- Parameters:
dsl- the datasource listener to remove
-
addInstanceListener
Add an instance listener- Specified by:
addInstanceListenerin interfaceDataSource- Parameters:
dsl- the instance listener to add
-
removeInstanceListener
Remove an instance listener- Specified by:
removeInstanceListenerin interfaceDataSource- Parameters:
dsl- the instance listener to remove
-
useDefaultVisual
public void useDefaultVisual()Use the default visual representation- Specified by:
useDefaultVisualin interfaceVisible
-
setVisual
Set a new visual representation -
getVisual
Get the visual representation -
setCustomName
Set a custom (descriptive) name for this bean- Specified by:
setCustomNamein interfaceBeanCommon- Parameters:
name- the name to use
-
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)
-
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.
-
setLog
Set a logger- Specified by:
setLogin interfaceBeanCommon- Parameters:
logger- aweka.gui.Loggervalue
-
connectionAllowed
Returns true if, at this time, the object will accept a connection via the named event- Specified by:
connectionAllowedin interfaceBeanCommon- Parameters:
esd- the EventSetDescriptor for the event in question- Returns:
- true if the object will accept a connection
-
connectionAllowed
Returns true if, at this time, the object will accept a connection via the named event- Specified by:
connectionAllowedin interfaceBeanCommon- Parameters:
eventName- the name of the event- Returns:
- true if the object will accept a connection
-
connectionNotification
Notify this object that it has been registered as a listener with a source for receiving events described by the named event This object is responsible for recording this fact.- Specified by:
connectionNotificationin interfaceBeanCommon- Parameters:
eventName- the eventsource- the source with which this object has been registered as a listener
-
disconnectionNotification
Notify this object that it has been deregistered as a listener with a source for named event. This object is responsible for recording this fact.- Specified by:
disconnectionNotificationin interfaceBeanCommon- Parameters:
eventName- the eventsource- the source with which this object has been registered as a listener
-
getStructure
Get the structure of the output encapsulated in the named event. If the structure can't be determined in advance of seeing input, or this StructureProducer does not generate the named event, null should be returned.- Specified by:
getStructurein interfaceStructureProducer- Parameters:
eventName- the name of the output event that encapsulates the requested output.- Returns:
- the structure of the output encapsulated in the named event or null if it can't be determined in advance of seeing input or the named event is not generated by this StructureProducer.
-
getConnectedFormat
Returns the structure of the incoming instances (if any)- Returns:
- an
Instancesvalue
-
setEnvironment
Set environment variables to use- Specified by:
setEnvironmentin interfaceEnvironmentHandler- Parameters:
env- the environment variables to use
-