Follow Techotopia on Twitter

On-line Guides
All Guides
eBook Store
iOS / Android
Linux for Beginners
Office Productivity
Linux Installation
Linux Security
Linux Utilities
Linux Virtualization
Linux Kernel
System/Network Admin
Programming
Scripting Languages
Development Tools
Web Development
GUI Toolkits/Desktop
Databases
Mail Systems
openSolaris
Eclipse Documentation
Techotopia.com
Virtuatopia.com
Answertopia.com

How To Guides
Virtualization
General System Admin
Linux Security
Linux Filesystems
Web Servers
Graphics & Desktop
PC Hardware
Windows
Problem Solutions
Privacy Policy

  




 

 


Eclipse Platform
Release 3.5

org.eclipse.ui.statushandlers
Class StatusManager


java.lang.Object
  extended by 
org.eclipse.ui.statushandlers.StatusManager

public class StatusManager
extends Object

StatusManager is the entry point for all statuses to be reported in the user interface.

Handlers shoudn't be used directly but through the StatusManager singleton which keeps the status handling policy and chooses handlers. StatusManager.getManager().handle(IStatus) and handle(IStatus status, int style) are the methods are the primary access points to the StatusManager.

Acceptable styles (can be combined with logical OR)

  • NONE - a style indicating that the status should not be acted on. This is used by objects such as log listeners that do not want to report a status twice
  • LOG - a style indicating that the status should be logged only
  • SHOW - a style indicating that handlers should show a problem to an user without blocking the calling method while awaiting user response. This is generally done using a non modal Dialog
  • BLOCK - a style indicating that the handling should block the calling method until the user has responded. This is generally done using a modal window such as a Dialog

Handlers are intended to be accessed via the status manager. The StatusManager chooses which handler should be used for a particular error. There are two ways for adding handlers to the handling flow. First using extension point org.eclipse.ui.statusHandlers, second by the workbench advisor and its method WorkbenchAdvisor.getWorkbenchErrorHandler(). If a handler is associated with a product, it is used instead of this defined in advisor.

Since:
3.3
See Also:
AbstractStatusHandler

Nested Class Summary
static interface StatusManager.INotificationListener
          This interface allows for listening to status handling framework changes.
static interface StatusManager.INotificationTypes
          This interface declares types of notification.
 
Field Summary
static int BLOCK
          A style indicating that the handling should block the calling thread until the status has been handled.
static int LOG
          A style indicating that the status should be logged only.
static int NONE
          A style indicating that the status should not be acted on.
static int SHOW
          A style indicating that handlers should show a problem to an user without blocking the calling method while awaiting user response.
 
Method Summary
 void addListener ( StatusManager.INotificationListener listener)
          Adds a listener to the StatusManager.
 void addLoggedStatus ( IStatus status)
          This method informs the StatusManager that this IStatus is being handled by the handler and to ignore it when it shows up in our ILogListener.
 void fireNotification (int type, StatusAdapter[] adapters)
          This method should be called by custom status handlers when an event occurs.
static  StatusManager getManager ()
          Returns StatusManager singleton instance.
 void handle ( CoreException coreException, String pluginId)
          Handles given CoreException.
 void handle ( IStatus status)
          Handles the given status.
 void handle ( IStatus status, int style)
          Handles the given status due to the style.
 void handle ( StatusAdapter statusAdapter)
          Handles the given status adapter.
 void handle ( StatusAdapter statusAdapter, int style)
          Handles the given status adapter due to the style.
 void removeListener ( StatusManager.INotificationListener listener)
          Removes a listener from StatusManager.
 
Methods inherited from class java.lang. Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NONE

public static final int NONE
A style indicating that the status should not be acted on. This is used by objects such as log listeners that do not want to report a status twice.

See Also:
Constant Field Values

LOG

public static final int LOG
A style indicating that the status should be logged only.

See Also:
Constant Field Values

SHOW

public static final int SHOW
A style indicating that handlers should show a problem to an user without blocking the calling method while awaiting user response. This is generally done using a non modal Dialog.

See Also:
Constant Field Values

BLOCK

public static final int BLOCK
A style indicating that the handling should block the calling thread until the status has been handled.

A typical usage of this would be to ensure that the user's actions are blocked until they've dealt with the status in some manner. It is therefore likely but not required that the StatusHandler would achieve this through the use of a modal dialog.

Due to the fact that use of BLOCK will block any thread, care should be taken in this use of this flag.

See Also:
Constant Field Values
Method Detail

getManager

public static 
StatusManager getManager()
Returns StatusManager singleton instance.

Returns:
the manager instance

handle

public void handle(
StatusAdapter statusAdapter,
                   int style)
Handles the given status adapter due to the style. Because the facility depends on Workbench, this method will log the status, if Workbench isn't initialized and the style isn't NONE. If Workbench isn't initialized and the style is NONE, the manager will do nothing.

Parameters:
statusAdapter - the status adapter
style - the style. Value can be combined with logical OR. One of NONE, LOG, SHOW and BLOCK.

handle

public void handle(
StatusAdapter statusAdapter)
Handles the given status adapter. The LOG style is used when this method is called.

Parameters:
statusAdapter - the status adapter

handle

public void handle(
IStatus status,
                   int style)
Handles the given status due to the style. Because the facility depends on Workbench, this method will log the status, if Workbench isn't initialized and the style isn't NONE. If Workbench isn't initialized and the style is NONE, the manager will do nothing.

Parameters:
status - the status to handle
style - the style. Value can be combined with logical OR. One of NONE, LOG, SHOW and BLOCK.

handle

public void handle(
IStatus status)
Handles the given status. The LOG style is used when this method is called.

Parameters:
status - the status to handle

handle

public void handle(
CoreException coreException,
                   
String pluginId)
Handles given CoreException. This method has been introduced to prevent anti-pattern:
StatusManager.getManager().handle(coreException.getStatus());
that does not print the stack trace to the log.

Parameters:
coreException - a CoreException to be handled.
pluginId - the unique identifier of the relevant plug-in
Since:
3.4
See Also:
handle(IStatus)

addLoggedStatus

public void addLoggedStatus(
IStatus status)
This method informs the StatusManager that this IStatus is being handled by the handler and to ignore it when it shows up in our ILogListener.

Parameters:
status - already handled and logged status

fireNotification

public void fireNotification(int type,
                             
StatusAdapter[] adapters)
This method should be called by custom status handlers when an event occurs. This method has no effect if statushandler does not support particular event type.

Parameters:
type - - type of the event.
adapters - - array of affected StatusAdapters.
Since:
3.5
See Also:
StatusManager.INotificationTypes, AbstractStatusHandler.supportsNotification(int)

addListener

public void addListener(
StatusManager.INotificationListener listener)
Adds a listener to the StatusManager.

Parameters:
listener - - a listener to be added.
Since:
3.5

removeListener

public void removeListener(
StatusManager.INotificationListener listener)
Removes a listener from StatusManager.

Parameters:
listener - - a listener to be removed.
Since:
3.5

Eclipse Platform
Release 3.5

Guidelines for using Eclipse APIs.

Copyright (c) Eclipse contributors and others 2000, 2008. All rights reserved.


 
 
  Published under the terms of the Eclipse Public License Version 1.0 ("EPL") Design by Interspire