ExceptionBreakpoint (@NotNull final String exceptionClassName, final String packageName) { ThreadingAssertions.assertEventDispatchThread(); final JavaExceptionBreakpointType type = XDebuggerUtil.getInstance().findBreakpointType(JavaExceptionBreakpointType.class); return WriteAction.compute(() -> { XBreakpoint<JavaExceptionBreakpointProperties> xBreakpoint = XDebuggerManager.getInstance(myProject).getBreakpointManager() .addBreakpoint(type, new JavaExceptionBreakpointProperties(exceptionClassName, packageName)); if (getJavaBreakpoint(xBreakpoint) instanceof ExceptionBreakpoint exceptionBreakpoint) { exceptionBreakpoint.setQualifiedName(exceptionClassName); exceptionBreakpoint.setPackageName(packageName); addBreakpoint(exceptionBreakpoint); LOG.debug("ExceptionBreakpoint Added"); return exceptionBreakpoint; } return null; }); }