args = new String[] {thread.getName()}; } else if (thread.isStepping()) { key.append("stepping"); //$NON-NLS-1$ args = new String[] {thread.getName()}; } else if (thread.isPerformingEvaluation() && breakpoints.length == 0) { key.append("evaluating"); //$NON-NLS-1$ args = new String[] {thread.getName()}; } else if (!thread.isSuspended() || (thread instanceof JDIThread && ((JDIThread)thread).isSuspendedQuiet())) { key.append("running"); //$NON-NLS-1$ args = new String[] {thread.getName()}; } else { key.append("suspended"); //$NON-NLS-1$ key.append("_problem"); //$NON-NLS-1$ String message = problem.getAttribute(IMarker.MESSAGE, DebugUIMessages.JDIModelPresentation_Compilation_error_1); args = new String[] {thread.getName(), message}; args = new String[] {thread.getName(), exName}; } else if (breakpoint instanceof IJavaWatchpoint) { IJavaWatchpoint wp = (IJavaWatchpoint)breakpoint; String fieldName = wp.getFieldName(); args = new String[] {thread.getName(), fieldName, typeName}; if (wp.isAccessSuspend(thread.getDebugTarget())) { key.append("_fieldaccess"); //$NON-NLS-1$ IJavaMethodBreakpoint me= (IJavaMethodBreakpoint)breakpoint; String methodName= me.getMethodName(); args = new String[] {thread.getName(), methodName, typeName}; if (me.isEntrySuspend(thread.getDebugTarget())) {
/** * @see IStatusHandler#handleStatus(IStatus, Object) */ public Object handleStatus(IStatus status, Object source) throws CoreException { IJavaThread thread= (IJavaThread) source; final ErrorDialog dialog= new ErrorDialog(JDIDebugUIPlugin.getActiveWorkbenchShell(), DebugUIMessages.SuspendTimeoutHandler_suspend, MessageFormat.format(DebugUIMessages.SuspendTimeoutHandler_timeout_occurred, new String[] {thread.getName()}), status, IStatus.WARNING | IStatus.ERROR | IStatus.INFO); // Display display= JDIDebugUIPlugin.getStandardDisplay(); display.syncExec(new Runnable() { public void run() { dialog.open(); } }); return null; } }