Class DiagnosticProvider

java.lang.Object
com.github._1c_syntax.bsl.languageserver.providers.DiagnosticProvider

@Component public final class DiagnosticProvider extends Object
Провайдер для диагностических сообщений.

Отвечает за публикацию диагностик с использованием textDocument/publishDiagnostics, предоставление диагностик по запросу textDocument/diagnostic и уведомление об обновлении диагностик через workspace/diagnostic/refresh.

See Also:
  • Field Details

  • Constructor Details

  • Method Details

    • computeAndPublishDiagnostics

      public void computeAndPublishDiagnostics(DocumentContext documentContext)
      Вычислить и опубликовать диагностики для документа.
      Parameters:
      documentContext - Контекст документа
    • getDiagnostic

      public DocumentDiagnosticReport getDiagnostic(DocumentContext documentContext)
      Получить диагностики для документа (pull-модель).
      Parameters:
      documentContext - Контекст документа
      Returns:
      Отчет с диагностиками
    • publishEmptyDiagnosticList

      public void publishEmptyDiagnosticList(DocumentContext documentContext)
      Опубликовать пустой список диагностик для документа.
      Parameters:
      documentContext - Контекст документа
    • handleInitializeEvent

      @EventListener public void handleInitializeEvent(LanguageServerInitializeRequestReceivedEvent event)
      Обработчик события LanguageServerInitializeRequestReceivedEvent.

      Проверяет поддержку клиентом workspace/diagnostic/refresh.

      Parameters:
      event - Событие
    • handleConfigurationChangedEvent

      @EventListener public void handleConfigurationChangedEvent(LanguageServerConfigurationChangedEvent event)
      Обработчик события LanguageServerConfigurationChangedEvent.

      Отправляет клиенту запрос на обновление диагностик при изменении конфигурации.

      Parameters:
      event - Событие