protected String getThreadText(IJavaThread thread, boolean qualified) {
protected String getThreadText(IJavaThread thread, boolean qualified) throws DebugException {
	protected String getThreadText(IJavaThread thread, boolean qualified) {		if (thread.isTerminated()) {			if (thread.isSystemThread()) {				return getFormattedString(TERMINATED_SYS, thread.getName());			} else {				return getFormattedString(TERMINATED_USR, thread.getName());			}		}		if (thread.isStepping()) {			if (thread.isSystemThread()) {				return getFormattedString(STEPPING_SYS, thread.getName());			} else {				return getFormattedString(STEPPING_USR, thread.getName());			}		}		if (!thread.isSuspended()) {			if (thread.isSystemThread()) {				return getFormattedString(RUNNING_SYS, thread.getName());			} else {				return getFormattedString(RUNNING_USR, thread.getName());			}		}		IMarker breakpoint= thread.getBreakpoint();		if (breakpoint != null && breakpoint.exists()) {			String typeName= getMarkerTypeName(breakpoint, qualified);			if (JDIDebugModel.isExceptionBreakpoint(breakpoint)) {				if (thread.isSystemThread()) {					return getFormattedString(EXCEPTION_SYS, new String[] {thread.getName(), typeName});				} else {					return getFormattedString(EXCEPTION_USR, new String[] {thread.getName(), typeName});				}			}			int lineNumber= breakpoint.getAttribute(IMarker.LINE_NUMBER, -1);			if (lineNumber > -1) {				if (thread.isSystemThread()) {					if (JDIDebugModel.isRunToLineBreakpoint(breakpoint)) {						return getFormattedString(RUN_TO_LINE_SYS, new String[] {thread.getName(), String.valueOf(lineNumber), typeName});					} else {						return getFormattedString(BREAKPOINT_SYS, new String[] {thread.getName(), String.valueOf(lineNumber), typeName});					}				} else {					if (JDIDebugModel.isRunToLineBreakpoint(breakpoint)) {						return getFormattedString(RUN_TO_LINE_USR, new String[] {thread.getName(), String.valueOf(lineNumber), typeName});					} else {						return getFormattedString(BREAKPOINT_USR, new String[] {thread.getName(), String.valueOf(lineNumber), typeName});					}				}			}		}		// Otherwise, it's just suspended		if (thread.isSystemThread()) {			return getFormattedString(SUSPENDED_SYS, thread.getName());		} else {			return getFormattedString(SUSPENDED_USR, thread.getName());		}	}