Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle Extension SDK
11g Release 2 (11.1.2.2.0)

E17493-03


oracle.ide.log
Class DefaultLogPage

java.lang.Object
  extended by oracle.ide.view.View
      extended by oracle.ide.log.AbstractLogPage
          extended by oracle.ide.log.DefaultLogPage

All Implemented Interfaces:
ControllerProvider, Helpable, LogPage

public class DefaultLogPage
extends AbstractLogPage

This implementation of LogPage supports the logging of simple text messages as well as Collection message objects. When logging a simple text message, it is written to a JTextArea displayed within a JScrollPane. When logging a message which is a Collection, each element within the Collection is displayed as a node within a JTree which itself is displayed within a JScrollPane. No assumptions are made with respect to implementation of the TreeModel interface set as model for the JTree. Subclasses may easily extend this class to display any TreeModel implementation within the JTree or to support any additional GUI displays over and above the JTextArea and JTree defined at this class level.


Field Summary
protected static int FIX_SOURCE_CMD_ID
           
protected static int GOTO_SOURCE_CMD_ID
          Go To Source command identifier.
static int HIDE_ALL_MENUS
           
static int HIDE_COPY_MENU
           
static int HIDE_FIX_SOURCE_MENU
           
static int HIDE_GOTO_SOURCE_MENU
           
static int HIDE_NO_MENUS
          Use these constants to indicate which popup menu items are hidden.
static int HIDE_SAVE_AS_MENU
           
protected  java.awt.event.KeyAdapter keyAdapter
           
protected  java.awt.event.MouseAdapter mouseAdapter
           

 

Fields inherited from class oracle.ide.view.View
EMPTY_SELECTION, PROJECT_PROP, VISIBLE_PROP, WORKSPACE_PROP

 

Constructor Summary
protected DefaultLogPage(ViewId id, javax.swing.Icon icon, boolean addPage)
           
protected DefaultLogPage(ViewId id, javax.swing.Icon icon, boolean addPage, int menuOptions)
          Constructor.

 

Method Summary
protected  void activateObject(java.lang.Object obj)
          Respond to a message object activation originating from the GUI.
 void addKeyListener(java.awt.event.KeyListener listener)
          Add a KeyListener to the GUI.
 void addMouseListener(java.awt.event.MouseListener listener)
          Add a MouseListener to the GUI.
 void asTextForTestingOnly(java.lang.StringBuilder buffer)
          Saves the content of this page to the given buffer.
protected  boolean canFixObject(javax.swing.tree.DefaultMutableTreeNode node)
          Return true if the violation associated with the node can be fixed.
 void clearAll()
          Remove all messages from the GUI.
protected  void copy(java.lang.Object copyObject)
          Copy the contents of the object to the clipboard.
protected  javax.swing.JTree createTree()
           
protected  void fixObject(java.lang.Object obj)
          Respond to a the fix command originating from the GUI.
protected  void forceResizeNotification(java.awt.Component comp)
          Notifies component listeners of a resize.
 ContextMenu getContextMenu()
          Gets the ContextMenu object, if any, managed by this instance.
 Controller getController()
          Get the Controller associated with this view.
protected  java.awt.Component getCurrentView()
          Get the object currently being displayed within the JScrollPane.
 java.awt.Component getGUI()
          Get the GUI to be used to display the state of this page.
protected  javax.swing.tree.DefaultMutableTreeNode getSelectedTreeNode()
           
protected  javax.swing.JTextArea getTextArea()
          Get the JTextArea used for display.
 java.lang.String getTitleName()
          Get the title to be displayed in the log window hosting this page.
protected  javax.swing.JTree getTree()
          Get the JTree used for display.
protected  void logMsg(java.lang.Object msg)
          Display a message in the GUI.
protected  void logText(java.lang.String msg)
          Display a String message in the GUI.
 void removeKeyListener(java.awt.event.KeyListener listener)
          Remove a KeyListener from the GUI.
 void removeMouseListener(java.awt.event.MouseListener listener)
          Remove a MouseListener from the GUI.
protected  void saveToFile(Context context)
           
protected  void setCurrentView(java.awt.Component view)
          Set the object to be currently displayed within the JScrollPane.
protected  void setModel(javax.swing.tree.TreeModel model)
          Set the tree model.
protected  java.lang.String treeNodeToString(java.lang.Object treeNode)
          Convert a tree node to a string.
protected  void updateTreeModel(java.util.Collection message)
          Update the model of the JTree based on the new Collection message object.

 

Methods inherited from class oracle.ide.log.AbstractLogPage
close, getBottomComponent, getLogPageView, getTabIcon, getTabName, getToolTip, getTopComponent, isDisplayComponentScrollable, isVisible, log, log, logQuietly, requestShow, requestShow, setOwner, show, tabNameUpdated

 

Methods inherited from class oracle.ide.view.View
activate, addViewListener, addViewSelectionListener, addViewStateListener, deactivate, fireViewCollapsed, fireViewExpanded, fireViewSelectionChanged, getContext, getContext, getHelpInfo, getId, getSelection, getSelectionFromUI, getToolbar, getViewWithoutDecoration, loadLayout, loadManifestToolbar, loadManifestToolbar, newId, owner, removeViewListener, removeViewSelectionListener, removeViewStateListener, saveLayout, scheduleUpdateSelection, setId, setOwner, setToolbarVisible, toString, updateSelection, updateSelectionImpl, updateTitle, updateToolbarActions, updateVisibleActions, updateVisibleActions

 

Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

 

Field Detail

HIDE_NO_MENUS

public static final int HIDE_NO_MENUS
Use these constants to indicate which popup menu items are hidden.
See Also:
Constant Field Values

HIDE_COPY_MENU

public static final int HIDE_COPY_MENU

HIDE_SAVE_AS_MENU

public static final int HIDE_SAVE_AS_MENU

HIDE_GOTO_SOURCE_MENU

public static final int HIDE_GOTO_SOURCE_MENU

HIDE_FIX_SOURCE_MENU

public static final int HIDE_FIX_SOURCE_MENU

HIDE_ALL_MENUS

public static final int HIDE_ALL_MENUS

GOTO_SOURCE_CMD_ID

protected static final int GOTO_SOURCE_CMD_ID
Go To Source command identifier.

FIX_SOURCE_CMD_ID

protected static final int FIX_SOURCE_CMD_ID

mouseAdapter

protected java.awt.event.MouseAdapter mouseAdapter

keyAdapter

protected java.awt.event.KeyAdapter keyAdapter

Constructor Detail

DefaultLogPage

protected DefaultLogPage(ViewId id,
                         javax.swing.Icon icon,
                         boolean addPage,
                         int menuOptions)
Constructor. Initializes the JTextArea and the JTree. The JTree is set to single selection and its display root node is set to false. A default MouseAdapter and KeyAdapter are added as listeners which calls the activateObject method whenever the user double clicks or type enter on a TreeNode in the JTree.
Parameters:
id - a unique id for this log page view.
icon - the icon to use for this log page. May be null.
addPage - whether to add the page to the log manager. If true then LogManager.getLogManager().addPage( this ) will be called in this constructor implementation. If false the page must be registered separately.
menuOptions - a bit mask specifying which context menu items to hide. May be any combination of HIDE_COPY_MENU, HIDE_SAVE_AS_MENU HIDE_GOTO_SOURCE_MENU, HIDE_FIX_SOURCE_MENU. HIDE_NO_MENUS specifies that all menu items should be present. HIDE_ALL_MENUS specifies that all menu items should be hidden.
See Also:
activateObject(Object)

DefaultLogPage

protected DefaultLogPage(ViewId id,
                         javax.swing.Icon icon,
                         boolean addPage)

Method Detail

setModel

protected void setModel(javax.swing.tree.TreeModel model)
Set the tree model. This method should be called after the tree has been created.

getTitleName

public java.lang.String getTitleName()
Description copied from interface: LogPage
Get the title to be displayed in the log window hosting this page.
Specified by:
getTitleName in interface LogPage
Overrides:
getTitleName in class AbstractLogPage
Returns:
the title to display in the host's title bar.

getGUI

public java.awt.Component getGUI()
Get the GUI to be used to display the state of this page.
Specified by:
getGUI in class View
Returns:
the root graphical user interface component.

getSelectedTreeNode

protected final javax.swing.tree.DefaultMutableTreeNode getSelectedTreeNode()

treeNodeToString

protected java.lang.String treeNodeToString(java.lang.Object treeNode)
Convert a tree node to a string. This is used when copying a log entry to the clipboard or saving all log entries to a file.

This implementation returns String.valueOf( treeNode ). Subclasses may override this method to provide a different implementation.

Parameters:
treeNode - the userdata of a tree node.
Returns:
a human readable string representation of the data stored in the node.

copy

protected final void copy(java.lang.Object copyObject)
Copy the contents of the object to the clipboard.

asTextForTestingOnly

public void asTextForTestingOnly(java.lang.StringBuilder buffer)
Saves the content of this page to the given buffer. FOR TESTING PURPOSES ONLY. DO NOT USE IN PRODUCTION CODE.
Parameters:
buffer - the given buffer.

saveToFile

protected void saveToFile(Context context)

getController

public Controller getController()
Description copied from interface: ControllerProvider
Get the Controller associated with this view.
Specified by:
getController in interface ControllerProvider
Overrides:
getController in class AbstractLogPage
Returns:
the Controller associated with this view.

getContextMenu

public ContextMenu getContextMenu()
Gets the ContextMenu object, if any, managed by this instance.
Overrides:
getContextMenu in class View
Returns:
the ContextMenu, if any.

clearAll

public void clearAll()
Remove all messages from the GUI. This method should be overridden to provide behavior specific to the subclass. This code attempts to handle basic clear operation for the textArea but for trees it only sets the data model to null. Any class subclassing this should probably override this and do something more sensible like clearing their data model to the root node or setting the data model to null and then setting a new data model on the tree to handle new incoming data.
Specified by:
clearAll in interface LogPage
Overrides:
clearAll in class AbstractLogPage

forceResizeNotification

protected void forceResizeNotification(java.awt.Component comp)
Notifies component listeners of a resize. This is necessary when we clearAll because it may mean that scrollbars are no longer necessary and the log window needs to remove them.
Parameters:
comp - the component that is being resized

addMouseListener

public void addMouseListener(java.awt.event.MouseListener listener)
Add a MouseListener to the GUI.
Specified by:
addMouseListener in interface LogPage
Overrides:
addMouseListener in class AbstractLogPage
Parameters:
listener - mouse listener responsible for displaying a context menu.

removeMouseListener

public void removeMouseListener(java.awt.event.MouseListener listener)
Remove a MouseListener from the GUI.
Specified by:
removeMouseListener in interface LogPage
Overrides:
removeMouseListener in class AbstractLogPage
Parameters:
listener - mouse listener responsible for displaying a context menu.

addKeyListener

public void addKeyListener(java.awt.event.KeyListener listener)
Add a KeyListener to the GUI.

removeKeyListener

public void removeKeyListener(java.awt.event.KeyListener listener)
Remove a KeyListener from the GUI.

logMsg

protected void logMsg(java.lang.Object msg)
Display a message in the GUI. If the message provided is a Collection, the JTree will be set as the current view and updateTreeModel will be called to allow the setting of a new TreeModel. Otherwise, logText will be called with the result of the message's toString() method.
Overrides:
logMsg in class AbstractLogPage
Parameters:
msg - the message to display.
See Also:
updateTreeModel(Collection), logText(String)

logText

protected void logText(java.lang.String msg)
Display a String message in the GUI. The JTextArea will be set as the current view and the message provided will be appended to it.

getCurrentView

protected final java.awt.Component getCurrentView()
Get the object currently being displayed within the JScrollPane.

setCurrentView

protected final void setCurrentView(java.awt.Component view)
Set the object to be currently displayed within the JScrollPane.

createTree

protected javax.swing.JTree createTree()

getTree

protected final javax.swing.JTree getTree()
Get the JTree used for display.

getTextArea

protected final javax.swing.JTextArea getTextArea()
Get the JTextArea used for display.

activateObject

protected void activateObject(java.lang.Object obj)
Respond to a message object activation originating from the GUI. Default implementation does nothing.

fixObject

protected void fixObject(java.lang.Object obj)
Respond to a the fix command originating from the GUI. Default implementation does nothing.

canFixObject

protected boolean canFixObject(javax.swing.tree.DefaultMutableTreeNode node)
Return true if the violation associated with the node can be fixed. Default return value is false.

updateTreeModel

protected void updateTreeModel(java.util.Collection message)
Update the model of the JTree based on the new Collection message object. Default implementation creates and invokes a Runnable to construct a new DefaultTreeModel containing DefaultMutableTreeNode instances for each element in the Collection where the Collection element is set as the user data of the DefaultMutableTreeNode instance.

Skip navigation links

Oracle Fusion Middleware Java API Reference for Oracle Extension SDK
11g Release 2 (11.1.2.2.0)

E17493-03


Copyright © 1997, 2012, Oracle. All rights reserved.