edu.sdsc.inca
Class IncatResourceTab

java.lang.Object
  extended by java.awt.Component
      extended by java.awt.Container
          extended by javax.swing.JComponent
              extended by javax.swing.JSplitPane
                  extended by edu.sdsc.inca.IncatResourceTab
All Implemented Interfaces:
java.awt.event.ActionListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable, java.util.EventListener, javax.accessibility.Accessible

public class IncatResourceTab
extends javax.swing.JSplitPane
implements java.awt.event.ActionListener

This class has a unique instance that implements the second (resource) tab in the incat display.

See Also:
Serialized Form

Nested Class Summary
protected  class IncatResourceTab.HostRenderer
          A ListCellRenderer that marks unreachable hosts.
protected  class IncatResourceTab.MacroRenderer
          A ListCellRenderer that marks inherited macros.
 
Nested classes/interfaces inherited from class javax.swing.JSplitPane
javax.swing.JSplitPane.AccessibleJSplitPane
 
Nested classes/interfaces inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes/interfaces inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes/interfaces inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
protected  java.lang.String editMacroName
           
protected  WrapResource editResource
           
protected  IncatMacroDialog macroDialog
           
protected  IncatList macroList
           
protected  IncatList memberList
           
protected  incat owner
           
protected  IncatResourceDialog resourceDialog
           
protected  IncatList resourceList
           
 
Fields inherited from class javax.swing.JSplitPane
BOTTOM, CONTINUOUS_LAYOUT_PROPERTY, continuousLayout, DIVIDER, DIVIDER_LOCATION_PROPERTY, DIVIDER_SIZE_PROPERTY, dividerSize, HORIZONTAL_SPLIT, LAST_DIVIDER_LOCATION_PROPERTY, lastDividerLocation, LEFT, leftComponent, ONE_TOUCH_EXPANDABLE_PROPERTY, oneTouchExpandable, orientation, ORIENTATION_PROPERTY, RESIZE_WEIGHT_PROPERTY, RIGHT, rightComponent, TOP, VERTICAL_SPLIT
 
Fields inherited from class javax.swing.JComponent
accessibleContext, listenerList, TOOL_TIP_TEXT_KEY, ui, 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
IncatResourceTab(incat owner)
          Constructs an IncatResourceTab.
 
Method Summary
 void actionPerformed(java.awt.event.ActionEvent ae)
          Responds to user GUI actions in this component.
 void addOrEditListElement(boolean add)
          An event method: either adds a new element to the selected list or edits the currently-selected element.
protected  void addOrEditMacro(boolean add)
          An event method: copies either an empty macro or or the currently-selected one into the macro dialog.
protected  void addOrEditResource(boolean add)
          An event method: copies either an empty resource or the currently-selected one into the resource dialog.
 void cloneListElement()
          An event method: clones the currently-selected list element.
protected  void cloneMacro()
          An event method: clones the currently-selected macro.
protected  void cloneResource()
          An event method: clones the currently-selected resource.
protected  void deleteListElement()
          An event method: deletes the currently-selected list element.
 void deleteMacro()
          An event method: deletes the currently-selected macro.
 void deleteResource()
          An event method: deletes the currently-selected resource.
 java.util.ArrayList getDescendants(WrapResource resource, boolean includeSelf, boolean leavesOnly)
          Returns an ArrayList of resources included, recursively, in the member pattern of a resource.
protected  java.lang.String[] getHosts(WrapResource resource)
          Expands a resource into a set of host names.
protected  java.util.ArrayList getParents(WrapResource resource)
          Returns an ArrayList of all resources with a member pattern that includes the resource.
 WrapResource getResource(java.lang.String name)
          Returns the resource with a specified name, null if none.
 WrapResource[] getResources(boolean addHosts)
          Returns an array of the resources shown in the resource tab.
protected  void recomputeInheritedMacros(WrapResource resource)
          Recompute the set of macros that a resource inherits from its ancestors.
protected  void refreshMacroPanel()
          Rewrites the contents of the macro list to reflect the current selection in the resource list.
protected  void refreshMemberPanel()
          Rewrites the contents of the member list to reflect the current selection in the resource list.
static java.lang.String[] resourceUnknownMacros(WrapResource resource, java.lang.String xml)
          Returns a collection of undefined macro names referenced by a bit of XML.
 void setResources(WrapResource[] resources)
          Replaces the resources shown in the resource tab.
protected  void updateMacro()
          An event method: copies the contents of the macro edit dialog into a new or existing macro.
protected  void updateResource()
          An event method: copies the contents of the resource edit dialog into a new or existing resource.
 
Methods inherited from class javax.swing.JSplitPane
addImpl, getAccessibleContext, getBottomComponent, getDividerLocation, getDividerSize, getLastDividerLocation, getLeftComponent, getMaximumDividerLocation, getMinimumDividerLocation, getOrientation, getResizeWeight, getRightComponent, getTopComponent, getUI, getUIClassID, isContinuousLayout, isOneTouchExpandable, isValidateRoot, paintChildren, paramString, remove, remove, removeAll, resetToPreferredSizes, setBottomComponent, setContinuousLayout, setDividerLocation, setDividerLocation, setDividerSize, setLastDividerLocation, setLeftComponent, setOneTouchExpandable, setOrientation, setResizeWeight, setRightComponent, setTopComponent, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, 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, isDoubleBuffered, isLightweightComponent, isManagingFocus, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isRequestFocusEnabled, paint, paintBorder, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, 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, setUI, 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, processContainerEvent, processEvent, removeContainerListener, setComponentZOrder, setFocusCycleRoot, setFocusTraversalPolicy, setFocusTraversalPolicyProvider, setLayout, transferFocusBackward, transferFocusDownCycle, validate, validateTree
 
Methods inherited from class java.awt.Component
action, add, addComponentListener, addFocusListener, addHierarchyBoundsListener, addHierarchyListener, addInputMethodListener, addKeyListener, addMouseListener, addMouseMotionListener, addMouseWheelListener, bounds, checkImage, checkImage, coalesceEvents, contains, createImage, createImage, createVolatileImage, createVolatileImage, disableEvents, dispatchEvent, enable, enableEvents, enableInputMethods, firePropertyChange, 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, getPeer, getPropertyChangeListeners, getPropertyChangeListeners, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, 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, processComponentEvent, processFocusEvent, processHierarchyBoundsEvent, processHierarchyEvent, processInputMethodEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, removePropertyChangeListener, removePropertyChangeListener, repaint, repaint, repaint, resize, resize, setBounds, setBounds, setComponentOrientation, setCursor, setDropTarget, setFocusable, setFocusTraversalKeysEnabled, setIgnoreRepaint, setLocale, setLocation, setLocation, setName, setSize, setSize, show, show, size, toString, transferFocus, transferFocusUpCycle
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

editMacroName

protected java.lang.String editMacroName

editResource

protected WrapResource editResource

macroDialog

protected IncatMacroDialog macroDialog

macroList

protected IncatList macroList

memberList

protected IncatList memberList

owner

protected incat owner

resourceDialog

protected IncatResourceDialog resourceDialog

resourceList

protected IncatList resourceList
Constructor Detail

IncatResourceTab

public IncatResourceTab(incat owner)
Constructs an IncatResourceTab.

Parameters:
owner - the incat instance that incorporates this tab.
Method Detail

actionPerformed

public void actionPerformed(java.awt.event.ActionEvent ae)
Responds to user GUI actions in this component.

Specified by:
actionPerformed in interface java.awt.event.ActionListener

addOrEditListElement

public void addOrEditListElement(boolean add)
An event method: either adds a new element to the selected list or edits the currently-selected element.

Parameters:
add - whether to add a new element

addOrEditMacro

protected void addOrEditMacro(boolean add)
An event method: copies either an empty macro or or the currently-selected one into the macro dialog.

Parameters:
add - copy a new macro

addOrEditResource

protected void addOrEditResource(boolean add)
An event method: copies either an empty resource or the currently-selected one into the resource dialog.

Parameters:
add - copy a new resource

cloneListElement

public void cloneListElement()
An event method: clones the currently-selected list element.


cloneMacro

protected void cloneMacro()
An event method: clones the currently-selected macro.


cloneResource

protected void cloneResource()
An event method: clones the currently-selected resource.


deleteListElement

protected void deleteListElement()
An event method: deletes the currently-selected list element.


deleteMacro

public void deleteMacro()
An event method: deletes the currently-selected macro.


deleteResource

public void deleteResource()
An event method: deletes the currently-selected resource.


getDescendants

public java.util.ArrayList getDescendants(WrapResource resource,
                                          boolean includeSelf,
                                          boolean leavesOnly)
Returns an ArrayList of resources included, recursively, in the member pattern of a resource.

Parameters:
resource - the resource to search
includeSelf - include the resource itself as a descendant?
leavesOnly - whether to return all descendants, or only those that refer to hosts
Returns:
an ArrayList of descendants of the specified resource

getHosts

protected java.lang.String[] getHosts(WrapResource resource)
Expands a resource into a set of host names. In addition to the usual pattern characters, the resource member pattern may contain names of resource groups from the resource list. These will be expanded into the hosts that match the patterns for those groups.


getParents

protected java.util.ArrayList getParents(WrapResource resource)
Returns an ArrayList of all resources with a member pattern that includes the resource.

Parameters:
resource - the resource to search for
Returns:
all parents of the specified resource

getResource

public WrapResource getResource(java.lang.String name)
Returns the resource with a specified name, null if none.

Parameters:
name - the resource name
Returns:
the resource with the specified name, null if none

getResources

public WrapResource[] getResources(boolean addHosts)
Returns an array of the resources shown in the resource tab.

Parameters:
addHosts - whether to include in the returned value resources for the member hosts of the resources shown
Returns:
an array of all resources

recomputeInheritedMacros

protected void recomputeInheritedMacros(WrapResource resource)
Recompute the set of macros that a resource inherits from its ancestors.

Parameters:
resource - the resource to recompute

refreshMacroPanel

protected void refreshMacroPanel()
Rewrites the contents of the macro list to reflect the current selection in the resource list.


refreshMemberPanel

protected void refreshMemberPanel()
Rewrites the contents of the member list to reflect the current selection in the resource list.


resourceUnknownMacros

public static java.lang.String[] resourceUnknownMacros(WrapResource resource,
                                                       java.lang.String xml)
Returns a collection of undefined macro names referenced by a bit of XML.

Parameters:
r - the resource that defines the macros
xml - the XML that may contain macro references
Returns:
a collection of undefined macro names referenced in the XML

setResources

public void setResources(WrapResource[] resources)
Replaces the resources shown in the resource tab.

Parameters:
resources - the resources to show

updateMacro

protected void updateMacro()
An event method: copies the contents of the macro edit dialog into a new or existing macro.


updateResource

protected void updateResource()
An event method: copies the contents of the resource edit dialog into a new or existing resource.