void (@NotNull final XSourcePosition position, @Nullable XSuspendContext context) { dropFrameCaches(); if (isConnected() && !mySuspendedThreads.isEmpty()) { final PySourcePosition pyPosition = myPositionConverter.convertToPython(position); String type = ReadAction.compute(() -> { String t = PyLineBreakpointType.ID; final Document document = FileDocumentManager.getInstance().getDocument(position.getFile()); if (document != null) { for (XBreakpointType breakpointType : XBreakpointType.EXTENSION_POINT_NAME.getExtensionList()) { if (breakpointType instanceof PyBreakpointType && ((PyBreakpointType)breakpointType).canPutInDocument(getSession().getProject(), document)) { t = breakpointType.getId(); break; } } } return t; }); myDebugger.setTempBreakpoint(type, pyPosition.getFile(), pyPosition.getLine()); passToCurrentThread(context, ResumeOrStepCommand.Mode.RESUME); } }