samples.javaclient.analyzer
Class CatalogExplorer

java.lang.Object
  extended byjava.awt.Component
      extended byjava.awt.Container
          extended byjavax.swing.JComponent
              extended byjavax.swing.JPanel
                  extended bysamples.javaclient.analyzer.CatalogExplorer
All Implemented Interfaces:
javax.accessibility.Accessible, java.awt.dnd.DragGestureListener, java.awt.dnd.DragSourceListener, java.util.EventListener, java.awt.image.ImageObserver, java.awt.MenuContainer, java.io.Serializable
Direct Known Subclasses:
FavoritesExplorer

public class CatalogExplorer
extends javax.swing.JPanel
implements java.awt.dnd.DragGestureListener, java.awt.dnd.DragSourceListener

The Worksheets tab in the Sidebar. This Explorer displays graphs and crosstabs that are in the BI Beans Catalog. Users can open a view by dragging it to the desktop or by double-clicking it.

This class uses a JTree to display objects in the BI Beans Catalog. To do this, it uses customized tree models for the JTree.

See Also:
BITreeModel, BITreeMNode, CatalogTreeModel, CatalogTreeNode, Serialized Form

Nested Class Summary
 
Nested classes inherited from class javax.swing.JPanel
javax.swing.JPanel.AccessibleJPanel
 
Nested classes inherited from class javax.swing.JComponent
javax.swing.JComponent.AccessibleJComponent
 
Nested classes inherited from class java.awt.Container
java.awt.Container.AccessibleAWTContainer
 
Nested classes inherited from class java.awt.Component
java.awt.Component.AccessibleAWTComponent, java.awt.Component.BltBufferStrategy, java.awt.Component.FlipBufferStrategy
 
Field Summary
private static java.lang.String DOCUMENT_DESCRIPTION
          Instruction text.
private  javax.naming.directory.BasicAttributes m_basicAttributes
          Attributes that specify the object type to look for to display in this Explorer.
private  java.lang.String m_description
          Variable for instruction text.
private  java.awt.dnd.DragSource m_dragSource
          DragSource object for drag-and-drop support.
private  java.lang.String m_explorerType
          Type of this Explorer: "WORKSHEET" or "FAVORITES".
private  oracle.dss.bicontext.BIFilter m_filter
          Filter that specifies the object types to display in this Explorer.
private  oracle.dss.metadataManager.common.MDRoot m_MDRoot
          Root folder.
private  oracle.dss.metadataManager.client.MetadataManager m_metadataManager
          The MetadataManager for this Explorer.
private  java.lang.String m_notAvailableText
          Text to display when there is no connection.
private  javax.swing.JScrollPane m_scrollpane
          Scroll pane to put the tree in.
private  javax.swing.JTree m_tree
          Tree to display Catalog objects.
private  oracle.bali.ewt.text.MultiLineLabel notAvail
          Label for m_notAvailableText.
private static java.lang.String ROOT
          Label for the root folder.
 
Fields inherited from class javax.swing.JPanel
 
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.Container
 
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
CatalogExplorer()
          Constructor.
 
Method Summary
 void addListeners()
          Registers any listeners that this Explorer needs.
 void dragDropEnd(java.awt.dnd.DragSourceDropEvent dsde)
          Null implementation for DragSourceListener.
 void dragEnter(java.awt.dnd.DragSourceDragEvent dsde)
          Null implementation for DragSourceListener.
 void dragExit(java.awt.dnd.DragSourceEvent dse)
          Null implementation for DragSourceListener.
 void dragGestureRecognized(java.awt.dnd.DragGestureEvent dge)
          Responds to dragging.
 void dragOver(java.awt.dnd.DragSourceDragEvent dsde)
          Null implementation for DragSourceListener.
 void dropActionChanged(java.awt.dnd.DragSourceDragEvent dsde)
          Null implementation for DragSourceListener.
 javax.naming.directory.BasicAttributes getBasicAttributes()
          Gets the attributes that specify the display objects.
 java.lang.String getDescription()
          Gets the instruction text for this Explorer.
 java.awt.dnd.DragSource getDragSource()
          Gets the drag source for this Explorer.
 java.lang.String getExplorerType()
          Gets the type of Explorer this is.
 oracle.dss.bicontext.BIFilter getFilter()
          Gets the filter that has been set on this Explorer.
 javax.swing.JTree getJTree()
          Gets the JTree for this Explorer.
 oracle.dss.metadataManager.common.MDRoot getMDRoot()
          Gets the root folder for this Explorer.
 oracle.dss.metadataManager.client.MetadataManager getMetadataManager()
          Gets the MetadataManager for this Explorer.
 java.lang.String getNotAvailableText()
          Gets the text that this Explorer displays when it is not available.
private  void jbInit()
          Initializes the user interface for this Explorer.
 void populateTree()
          Populates the tree of objects and folders.
 void refreshTree()
          Updates the JTree in this Explorer when items have been added or removed.
 void setBasicAttributes(javax.naming.directory.BasicAttributes basicAttributes)
          Attributes that specify the display objects.
 void setDescription(java.lang.String description)
          Sets the instruction text for this Explorer.
 void setDragSource(java.awt.dnd.DragSource dragSource)
          Sets the drag source for this Explorer.
 void setExplorerType(java.lang.String type)
          Sets the type of Explorer this is.
 void setFilter(oracle.dss.bicontext.BIFilter filter)
          Sets the search control filter for this Explorer.
 void setMDRoot(oracle.dss.metadataManager.common.MDRoot root)
          Sets the root folder for this Explorer and populates the JTree with the contents of the specified folder.
 void setMDRoot(oracle.dss.metadataManager.common.MDRoot root, boolean populateTree)
          Sets the root folder and optionally populates the tree that displays the contents of the folder.
 void setMetadataManager(oracle.dss.metadataManager.client.MetadataManager mm)
          Specifies the MetadataManager for this Explorer.
 void setNotAvailable()
          Sets this Explorer as not available.
 void setNotAvailableText(java.lang.String text)
          Specifies the text that this Explorer displays when it is not available.
 
Methods inherited from class javax.swing.JPanel
getAccessibleContext, getUI, getUIClassID, paramString, setUI, updateUI
 
Methods inherited from class javax.swing.JComponent
addAncestorListener, addNotify, addPropertyChangeListener, addPropertyChangeListener, addVetoableChangeListener, computeVisibleRect, contains, createToolTip, disable, enable, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, firePropertyChange, fireVetoableChange, getActionForKeyStroke, getActionMap, getAlignmentX, getAlignmentY, getAncestorListeners, getAutoscrolls, getBorder, getBounds, getClientProperty, getComponentGraphics, getConditionForKeyStroke, getDebugGraphicsOptions, getDefaultLocale, getGraphics, getHeight, getInputMap, getInputMap, getInputVerifier, getInsets, getInsets, getListeners, getLocation, getMaximumSize, getMinimumSize, getNextFocusableComponent, getPreferredSize, getPropertyChangeListeners, getPropertyChangeListeners, getRegisteredKeyStrokes, getRootPane, getSize, getToolTipLocation, getToolTipText, getToolTipText, getTopLevelAncestor, getTransferHandler, getVerifyInputWhenFocusTarget, getVetoableChangeListeners, getVisibleRect, getWidth, getX, getY, grabFocus, isDoubleBuffered, isLightweightComponent, isManagingFocus, isMaximumSizeSet, isMinimumSizeSet, isOpaque, isOptimizedDrawingEnabled, isPaintingTile, isPreferredSizeSet, isRequestFocusEnabled, isValidateRoot, paint, paintBorder, paintChildren, paintComponent, paintImmediately, paintImmediately, print, printAll, printBorder, printChildren, printComponent, processComponentKeyEvent, processKeyBinding, processKeyEvent, processMouseMotionEvent, putClientProperty, registerKeyboardAction, registerKeyboardAction, removeAncestorListener, removeNotify, removePropertyChangeListener, removePropertyChangeListener, removeVetoableChangeListener, repaint, repaint, requestDefaultFocus, requestFocus, requestFocus, requestFocusInWindow, requestFocusInWindow, resetKeyboardActions, reshape, revalidate, scrollRectToVisible, setActionMap, setAlignmentX, setAlignmentY, setAutoscrolls, setBackground, setBorder, setDebugGraphicsOptions, setDefaultLocale, setDoubleBuffered, setEnabled, setFont, setForeground, 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, addImpl, applyComponentOrientation, areFocusTraversalKeysSet, countComponents, deliverEvent, doLayout, findComponentAt, findComponentAt, getComponent, getComponentAt, getComponentAt, getComponentCount, getComponents, getContainerListeners, getFocusTraversalKeys, getFocusTraversalPolicy, getLayout, insets, invalidate, isAncestorOf, isFocusCycleRoot, isFocusCycleRoot, isFocusTraversalPolicySet, layout, list, list, locate, minimumSize, paintComponents, preferredSize, printComponents, processContainerEvent, processEvent, remove, remove, removeAll, removeContainerListener, setFocusCycleRoot, setFocusTraversalKeys, setFocusTraversalPolicy, 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, getBackground, getBounds, getColorModel, getComponentListeners, getComponentOrientation, getCursor, getDropTarget, getFocusCycleRootAncestor, getFocusListeners, getFocusTraversalKeysEnabled, getFont, getFontMetrics, getForeground, getGraphicsConfiguration, getHierarchyBoundsListeners, getHierarchyListeners, getIgnoreRepaint, getInputContext, getInputMethodListeners, getInputMethodRequests, getKeyListeners, getLocale, getLocation, getLocationOnScreen, getMouseListeners, getMouseMotionListeners, getMouseWheelListeners, getName, getParent, getPeer, getSize, getToolkit, getTreeLock, gotFocus, handleEvent, hasFocus, hide, imageUpdate, inside, isBackgroundSet, isCursorSet, isDisplayable, isEnabled, isFocusable, isFocusOwner, isFocusTraversable, isFontSet, isForegroundSet, isLightweight, 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, processMouseEvent, processMouseWheelEvent, remove, removeComponentListener, removeFocusListener, removeHierarchyBoundsListener, removeHierarchyListener, removeInputMethodListener, removeKeyListener, removeMouseListener, removeMouseMotionListener, removeMouseWheelListener, 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

m_notAvailableText

private java.lang.String m_notAvailableText
Text to display when there is no connection.


DOCUMENT_DESCRIPTION

private static final java.lang.String DOCUMENT_DESCRIPTION
Instruction text. Currently not displayed.

See Also:
Constant Field Values

ROOT

private static final java.lang.String ROOT
Label for the root folder.

See Also:
Constant Field Values

notAvail

private oracle.bali.ewt.text.MultiLineLabel notAvail
Label for m_notAvailableText. This object makes it possible to set font attributes.


m_MDRoot

private oracle.dss.metadataManager.common.MDRoot m_MDRoot
Root folder.


m_metadataManager

private oracle.dss.metadataManager.client.MetadataManager m_metadataManager
The MetadataManager for this Explorer. This is the application's MetadataManager.


m_basicAttributes

private javax.naming.directory.BasicAttributes m_basicAttributes
Attributes that specify the object type to look for to display in this Explorer.


m_tree

private javax.swing.JTree m_tree
Tree to display Catalog objects.


m_filter

private oracle.dss.bicontext.BIFilter m_filter
Filter that specifies the object types to display in this Explorer.


m_description

private java.lang.String m_description
Variable for instruction text. Currently not used.


m_dragSource

private java.awt.dnd.DragSource m_dragSource
DragSource object for drag-and-drop support.


m_scrollpane

private javax.swing.JScrollPane m_scrollpane
Scroll pane to put the tree in.


m_explorerType

private java.lang.String m_explorerType
Type of this Explorer: "WORKSHEET" or "FAVORITES".

Constructor Detail

CatalogExplorer

public CatalogExplorer()
Constructor.

Method Detail

setExplorerType

public void setExplorerType(java.lang.String type)
Sets the type of Explorer this is. The constructor calls the method to make this Explorer a CatalogExplorer. The FavoritesExplorer subclass calls this method to make itself a FavoritesExplorer.

Parameters:
type - The type of Explorer.

getExplorerType

public java.lang.String getExplorerType()
Gets the type of Explorer this is. The dragGestureRecognized method calls this method.

Returns:
"WORKSHEET" for a CatalogExplorer, "FAVORITES" for a FavoritesExplorer.

jbInit

private void jbInit()
             throws java.lang.Exception
Initializes the user interface for this Explorer. It sets a scroll pane for the contents.

Throws:
java.lang.Exception

setMDRoot

public void setMDRoot(oracle.dss.metadataManager.common.MDRoot root)
Sets the root folder for this Explorer and populates the JTree with the contents of the specified folder.

Parameters:
root - The root folder.

setMDRoot

public void setMDRoot(oracle.dss.metadataManager.common.MDRoot root,
                      boolean populateTree)
Sets the root folder and optionally populates the tree that displays the contents of the folder.

Parameters:
root - The root folder.
populateTree - true to populate the tree, false to set the root without populating the tree.

getMDRoot

public oracle.dss.metadataManager.common.MDRoot getMDRoot()
Gets the root folder for this Explorer.

Returns:
The root folder.

populateTree

public void populateTree()
Populates the tree of objects and folders.


getJTree

public javax.swing.JTree getJTree()
Gets the JTree for this Explorer.

Returns:
The JTree that this Explorer displays.

setFilter

public void setFilter(oracle.dss.bicontext.BIFilter filter)
Sets the search control filter for this Explorer. This filter determines the kinds of objects that appear in this Explorer. The Analyzer.jbInit method calls this method and passes a BIPresentationFilter to it when it instantiates the CatalogExplorer.

Parameters:
filter - The filter that specifies the types of object that this Explorer displays.

getFilter

public oracle.dss.bicontext.BIFilter getFilter()
Gets the filter that has been set on this Explorer.

Returns:
The filter that specifies the types of objects that this Explorer displays.

setNotAvailableText

public void setNotAvailableText(java.lang.String text)
Specifies the text that this Explorer displays when it is not available.

Parameters:
text - The text to display.

getNotAvailableText

public java.lang.String getNotAvailableText()
Gets the text that this Explorer displays when it is not available.

Returns:
The text to display.

setNotAvailable

public void setNotAvailable()
Sets this Explorer as not available.


refreshTree

public void refreshTree()
Updates the JTree in this Explorer when items have been added or removed.


setDescription

public void setDescription(java.lang.String description)
Sets the instruction text for this Explorer. Currently not used.


getDescription

public java.lang.String getDescription()
Gets the instruction text for this Explorer. Currently not used.


setBasicAttributes

public void setBasicAttributes(javax.naming.directory.BasicAttributes basicAttributes)
Attributes that specify the display objects. The BasicAttributes is applied before the filter. The search operation returns a result set that this BasicAttributes has filtered. The filter is then applied on the result set.

The FavoritesExplorer calls this method to specify that it only displays saved selections.


getBasicAttributes

public javax.naming.directory.BasicAttributes getBasicAttributes()
Gets the attributes that specify the display objects.

Returns:
The attributes that specify the objects that are searched for in the Catalog.

addListeners

public void addListeners()
Registers any listeners that this Explorer needs. This method adds a listener to the MetadataManager, to listen for changes in the metadata. If the metadata changes, then this listener updates the JTree.


setMetadataManager

public void setMetadataManager(oracle.dss.metadataManager.client.MetadataManager mm)
Specifies the MetadataManager for this Explorer. The MetadataManager manages access to the BI Beans Catalog and to the OLAP Catalog. If it is set to null, then the catalog objects are not available. The Analyzer.initializeUI method sets the application MetadataManager on this Explorer when the connection is made.

Parameters:
mm - MetadataManager that the application uses.
See Also:
Analyzer.initializeUI()

getMetadataManager

public oracle.dss.metadataManager.client.MetadataManager getMetadataManager()
Gets the MetadataManager for this Explorer. The MetadataManager manages access to the objects that this Explorer displays.

Returns:
The MetadataManager for this Explorer.

getDragSource

public java.awt.dnd.DragSource getDragSource()
Gets the drag source for this Explorer.

Returns:
The drag source.

setDragSource

public void setDragSource(java.awt.dnd.DragSource dragSource)
Sets the drag source for this Explorer.

Parameters:
dragSource - The drag source.

dragGestureRecognized

public void dragGestureRecognized(java.awt.dnd.DragGestureEvent dge)
Responds to dragging.

Specified by:
dragGestureRecognized in interface java.awt.dnd.DragGestureListener
Parameters:
dge - Information about the drag gesture.

dragEnter

public void dragEnter(java.awt.dnd.DragSourceDragEvent dsde)
Null implementation for DragSourceListener.

Specified by:
dragEnter in interface java.awt.dnd.DragSourceListener

dragOver

public void dragOver(java.awt.dnd.DragSourceDragEvent dsde)
Null implementation for DragSourceListener.

Specified by:
dragOver in interface java.awt.dnd.DragSourceListener

dropActionChanged

public void dropActionChanged(java.awt.dnd.DragSourceDragEvent dsde)
Null implementation for DragSourceListener.

Specified by:
dropActionChanged in interface java.awt.dnd.DragSourceListener

dragExit

public void dragExit(java.awt.dnd.DragSourceEvent dse)
Null implementation for DragSourceListener.

Specified by:
dragExit in interface java.awt.dnd.DragSourceListener

dragDropEnd

public void dragDropEnd(java.awt.dnd.DragSourceDropEvent dsde)
Null implementation for DragSourceListener.

Specified by:
dragDropEnd in interface java.awt.dnd.DragSourceListener