void (@NotNull final PsiElement element, @Nullable final CommonProblemDescriptor descriptor, @NotNull final SuppressIntentionAction action, @NotNull InspectionToolWrapper wrapper, @NotNull final SuppressableInspectionTreeNode node) { if (action instanceof SuppressIntentionActionFromFix && !(descriptor instanceof ProblemDescriptor)) { LOG.info("local suppression fix for specific problem descriptor: " + wrapper.getTool().getClass().getName()); } final Project project = element.getProject(); try { PsiElement container = null; if (action instanceof SuppressIntentionActionFromFix) { container = ((SuppressIntentionActionFromFix)action).getContainer(element); } if (container == null) { container = element; } if (action.isAvailable(project, null, element)) { ThrowableRunnable<RuntimeException> runnable = () -> action.invoke(project, null, element); if (action.startInWriteAction()) { WriteAction.run(runnable); } else { runnable.run(); } } final Set<GlobalInspectionContextImpl> globalInspectionContexts = ((InspectionManagerEx)InspectionManager.getInstance(element.getProject())).getRunningContexts(); for (GlobalInspectionContextImpl context : globalInspectionContexts) { context.resolveElement(wrapper.getTool(), container); if (descriptor != null) { context.getPresentation(wrapper).suppressProblem(descriptor); } } } catch (IncorrectOperationException e1) { LOG.error(e1); } node.removeSuppressActionFromAvailable(mySuppressAction); }