Package weka.gui.beans
Class MetaBean
java.lang.Object
java.awt.Component
java.awt.Container
javax.swing.JComponent
javax.swing.JPanel
weka.gui.beans.MetaBean
- All Implemented Interfaces:
ImageObserver
,MenuContainer
,Serializable
,Accessible
,BeanCommon
,EventConstraints
,Startable
,UserRequestAcceptor
,Visible
public class MetaBean
extends JPanel
implements BeanCommon, Visible, EventConstraints, Serializable, UserRequestAcceptor, Startable
A meta bean that encapsulates several other regular beans, useful for
grouping large KnowledgeFlows.
- Version:
- $Revision: 10221 $
- Author:
- Mark Hall (mhall at cs dot waikato dot ac dot nz)
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class javax.swing.JComponent
JComponent.AccessibleJComponent
Nested 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_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
-
Method Summary
Modifier and TypeMethodDescriptionvoid
boolean
canAcceptConnection
(Class<?> listenerClass) Checks to see if any of the inputs to this group implements the supplied listener classboolean
Returns true if, at this time, the object will accept a connection with respect to the supplied EventSetDescriptorboolean
connectionAllowed
(String eventName) Returns true if, at this time, the object will accept a connection via the named eventvoid
connectionNotification
(String eventName, Object source) Notify this object that it has been registered as a listener with a source with respect to the named event.void
disconnectionNotification
(String eventName, Object source) Notify this object that it has been deregistered as a listener with a source with respect to the supplied event name.Return an enumeration of requests that can be made by the userboolean
Returns true, if at the current time, the event described by the supplied event descriptor could be generated.boolean
eventGeneratable
(String eventName) Returns true, if at the current time, the named event could be generated.Return all the beans in the inputsReturn all the beans in the outputsReturn all the beans in the sub flowGet the custom (descriptive) name for this bean (if one has been set)returns the vector containing the original coordinates (instances of class Point) for the inputsGets a string that describes the start action.Return a list of input beans capable of receiving the supplied eventGets the visual appearance of this wrapper beanboolean
inputsContains
(BeanInstance toCheck) boolean
isBusy()
Returns true if.boolean
outputsContains
(BeanInstance toCheck) void
performRequest
(String request) Perform a particular requestvoid
void
restoreBeans
(int x, int y) void
void
setCustomName
(String name) Set a custom (descriptive) name for this beanvoid
void
Set a loggervoid
setOriginalCoords
(Vector<Point> value) sets the vector containing the original coordinates (instances of class Point) for the inputsvoid
setOutputs
(Vector<Object> outputs) void
setSubFlow
(Vector<Object> sub) void
void
setVisual
(BeanVisual newVisual) Sets the visual appearance of this wrapper beanvoid
shiftBeans
(BeanInstance toShiftTo, boolean save) Move coords of all inputs and outputs of this meta bean to the coords of the supplied BeanInstance.void
start()
Start the flow runningvoid
stop()
Stop all encapsulated beansboolean
subFlowContains
(BeanInstance toCheck) void
Use the default visual appearance for this beanMethods 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
-
Constructor Details
-
MetaBean
public MetaBean()
-
-
Method Details
-
setCustomName
Set a custom (descriptive) name for this bean- Specified by:
setCustomName
in interfaceBeanCommon
- Parameters:
name
- the name to use
-
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)
-
setAssociatedConnections
-
getAssociatedConnections
-
setSubFlow
-
getSubFlow
-
setInputs
-
getInputs
-
setOutputs
-
getOutputs
-
subFlowContains
-
inputsContains
-
outputsContains
-
getBeansInSubFlow
Return all the beans in the sub flow- Returns:
- a Vector of all the beans in the sub flow
-
getBeansInInputs
Return all the beans in the inputs- Returns:
- a Vector of all the beans in the inputs
-
getBeansInOutputs
Return all the beans in the outputs- Returns:
- a Vector of all the beans in the outputs
-
getBeanInfoSubFlow
-
getBeanInfoInputs
-
getBeanInfoOutputs
-
getOriginalCoords
returns the vector containing the original coordinates (instances of class Point) for the inputs- Returns:
- the containing the coord Points of the original inputs
-
setOriginalCoords
sets the vector containing the original coordinates (instances of class Point) for the inputs- Parameters:
value
- the vector containing the points of the coords of the original inputs
-
shiftBeans
Move coords of all inputs and outputs of this meta bean to the coords of the supplied BeanInstance. Typically the supplied BeanInstance is the BeanInstance that encapsulates this meta bean; the result in this case is that all inputs and outputs are shifted so that their coords coincide with the meta bean and all connections to them appear (visually) to go to/from the meta bean.- Parameters:
toShiftTo
- the BeanInstance whos coordinates will be used.save
- true if coordinates are to be saved.
-
restoreBeans
public void restoreBeans(int x, int y) -
eventGeneratable
Returns true, if at the current time, the event described by the supplied event descriptor could be generated.- Parameters:
esd
- anEventSetDescriptor
value- Returns:
- a
boolean
value
-
eventGeneratable
Returns true, if at the current time, the named event could be generated. Assumes that the supplied event name is an event that could be generated by this bean- Specified by:
eventGeneratable
in interfaceEventConstraints
- Parameters:
eventName
- the name of the event in question- Returns:
- true if the named event could be generated at this point in time
-
connectionAllowed
Returns true if, at this time, the object will accept a connection with respect to the supplied EventSetDescriptor- Specified by:
connectionAllowed
in interfaceBeanCommon
- Parameters:
esd
- the EventSetDescriptor- Returns:
- true if the object will accept a connection
-
connectionAllowed
Description copied from interface:BeanCommon
Returns true if, at this time, the object will accept a connection via the named event- Specified by:
connectionAllowed
in 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 with respect to the named event. This is just a dummy method in this class to satisfy the interface. Specific code in BeanConnection takes care of this method for MetaBeans- Specified by:
connectionNotification
in 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 with respect to the supplied event name. This is just a dummy method in this class to satisfy the interface. Specific code in BeanConnection takes care of this method for MetaBeans- Specified by:
disconnectionNotification
in interfaceBeanCommon
- Parameters:
eventName
- the eventsource
- the source with which this object has been registered as a listener
-
stop
public void stop()Stop all encapsulated beans- 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.
-
setVisual
Sets the visual appearance of this wrapper bean -
getVisual
Gets the visual appearance of this wrapper bean -
useDefaultVisual
public void useDefaultVisual()Use the default visual appearance for this bean- Specified by:
useDefaultVisual
in interfaceVisible
-
getStartMessage
Description copied from interface:Startable
Gets a string that describes the start action. The KnowledgeFlow uses this in the popup contextual menu for the component. The string can be proceeded by a '$' character to indicate that the component can't be started at present.- Specified by:
getStartMessage
in interfaceStartable
- Returns:
- a string describing the start action.
-
start
public void start()Description copied from interface:Startable
Start the flow running -
enumerateRequests
Return an enumeration of requests that can be made by the user- Specified by:
enumerateRequests
in interfaceUserRequestAcceptor
- Returns:
- an
Enumeration
value
-
setSubFlowPreview
-
performRequest
Perform a particular request- Specified by:
performRequest
in interfaceUserRequestAcceptor
- Parameters:
request
- the request to perform- Throws:
IllegalArgumentException
- if an error occurs
-
setLog
Set a logger- Specified by:
setLog
in interfaceBeanCommon
- Parameters:
logger
- aLogger
value
-
removePropertyChangeListenersSubFlow
-
addPropertyChangeListenersSubFlow
-
canAcceptConnection
Checks to see if any of the inputs to this group implements the supplied listener class- Parameters:
listenerClass
- the listener to check for
-
getSuitableTargets
Return a list of input beans capable of receiving the supplied event- Parameters:
esd
- the event in question- Returns:
- a vector of beans capable of handling the event
-