List of usage examples for org.eclipse.jface.util SafeRunnable setRunner
public static void setRunner(ISafeRunnableRunner runner)
From source file:org.eclipse.ui.internal.JFaceUtil.java
License:Open Source License
/** * Initializes JFace for use by Eclipse. */// w w w . java 2s.c o m public static void initializeJFace() { // Set the SafeRunner to run all SafeRunnables SafeRunnable.setRunner(new ISafeRunnableRunner() { public void run(ISafeRunnable code) { SafeRunner.run(code); } }); // Pass all errors and warnings to the status handling facility // and the rest to the main runtime log Policy.setLog(new ILogger() { public void log(IStatus status) { if (status.getSeverity() == IStatus.WARNING || status.getSeverity() == IStatus.ERROR) { StatusManager.getManager().handle(status); } else { WorkbenchPlugin.log(status); } } }); Policy.setStatusHandler(new StatusHandler() { public void show(IStatus status, String title) { StatusAdapter statusAdapter = new StatusAdapter(status); statusAdapter.setProperty(StatusAdapter.TITLE_PROPERTY, title); StatusManager.getManager().handle(statusAdapter, StatusManager.SHOW); } }); // Get all debug options from Platform if ("true".equalsIgnoreCase(Platform.getDebugOption(Policy.JFACE + "/debug"))) { //$NON-NLS-1$ //$NON-NLS-2$ Policy.DEBUG_DIALOG_NO_PARENT = "true" //$NON-NLS-1$ .equalsIgnoreCase(Platform.getDebugOption(Policy.JFACE + "/debug/dialog/noparent")); //$NON-NLS-1$ Policy.TRACE_ACTIONS = "true" //$NON-NLS-1$ .equalsIgnoreCase(Platform.getDebugOption(Policy.JFACE + "/trace/actions")); //$NON-NLS-1$ Policy.TRACE_TOOLBAR = "true" //$NON-NLS-1$ .equalsIgnoreCase(Platform.getDebugOption(Policy.JFACE + "/trace/toolbarDisposal")); //$NON-NLS-1$ InternalPolicy.DEBUG_LOG_REENTRANT_VIEWER_CALLS = "true".equalsIgnoreCase( //$NON-NLS-1$ Platform.getDebugOption(Policy.JFACE + "/debug/viewers/reentrantViewerCalls")); //$NON-NLS-1$ InternalPolicy.DEBUG_LOG_EQUAL_VIEWER_ELEMENTS = "true" //$NON-NLS-1$ .equalsIgnoreCase(Platform.getDebugOption(Policy.JFACE + "/debug/viewers/equalElements")); //$NON-NLS-1$ } }
From source file:org.nightlabs.base.ui.app.AbstractApplication.java
License:Open Source License
/** * Initializes the Exception Handling by setting the DefaultUncaughtExceptionHandler * to the {@link ExceptionHandlerRegistry} and setting the Platform {@link SafeRunnable} * to {@link SaveRunnableRunner}.// ww w . j av a 2s . co m * * @see Thread#setDefaultUncaughtExceptionHandler(java.lang.Thread.UncaughtExceptionHandler) */ public void initExceptionHandling() { ExceptionHandlerRegistry.sharedInstance() .addProcessListener(SimpleExceptionHandlerRegistry.sharedInstance()); final Thread.UncaughtExceptionHandler oldDefaultExceptionHandler = Thread .getDefaultUncaughtExceptionHandler(); Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() { public void uncaughtException(Thread t, Throwable e) { if (!ExceptionHandlerRegistry.syncHandleException(t, e)) { if (oldDefaultExceptionHandler != null) { oldDefaultExceptionHandler.uncaughtException(t, e); } } } }); SafeRunnable.setRunner(new SaveRunnableRunner()); }