Annotation (@NotNull HighlightSeverity severity, @NotNull TextRange range, @NlsContexts.DetailedDescription @Nullable String message, @NlsContexts.Tooltip @Nullable String tooltip, @Nullable Class<?> callerClass, @NotNull String methodName) { Annotation annotation = new Annotation(range.getStartOffset(), range.getEndOffset(), severity, message, tooltip); add(annotation); String callerInfo = callerClass == null ? "" : " (the call to which was found in "+callerClass+")"; PluginException pluginException = PluginException.createByClass( new IncorrectOperationException("'AnnotationHolder."+methodName + "()' method" + callerInfo + " is slow, non-incremental " + "and thus can cause unexpected behaviour (e.g. annoying blinking), " + "is deprecated and will be removed soon. " + "Please use `newAnnotation(...).create()` instead"), callerClass == null ? getClass() : callerClass); LOG.warnInProduction(pluginException); return annotation; }