Class RunAllTestsCodeLensSupplier

java.lang.Object
com.github._1c_syntax.bsl.languageserver.codelenses.RunAllTestsCodeLensSupplier
All Implemented Interfaces:
CodeLensSupplier<DefaultCodeLensData>

@Component public class RunAllTestsCodeLensSupplier extends Object implements CodeLensSupplier<DefaultCodeLensData>
Поставщик линзы для запуска всех тестов в текущем файле.
  • Constructor Details

  • Method Details

    • handleEvent

      Обработчик события LanguageServerInitializeRequestReceivedEvent.

      Анализирует тип подключенного клиента и управляет применимостью линзы.

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

      public boolean isApplicable(DocumentContext documentContext)
      Возвращает необходимость применения сапплаера на конкретном документе.
      Specified by:
      isApplicable in interface CodeLensSupplier<DefaultCodeLensData>
      Parameters:
      documentContext - Документ.
      Returns:
      Необходимость применения.
    • getCodeLenses

      public List<CodeLens> getCodeLenses(DocumentContext documentContext)
      Получить список линз, доступных в документе.

      Предпочтительно, чтобы линзы, возвращаемые этим методом были "не-разрешенными"

      Specified by:
      getCodeLenses in interface CodeLensSupplier<DefaultCodeLensData>
      Parameters:
      documentContext - Документ, для которого надо рассчитать линзы.
      Returns:
      Список линз.
    • resolve

      public CodeLens resolve(DocumentContext documentContext, CodeLens unresolved, DefaultCodeLensData data)
      Выполнить операцию "разрешения" линзы.

      По умолчанию линза возвращается не-разрешенной.

      Specified by:
      resolve in interface CodeLensSupplier<DefaultCodeLensData>
      Parameters:
      documentContext - Документ, которому принадлежит линза.
      unresolved - Линза, которую надо разрешить.
      data - Десериализованные данные линзы.
      Returns:
      Разрешенная линза (с заполненным полем CodeLens.getCommand())
    • getCodeLensDataClass

      public Class<DefaultCodeLensData> getCodeLensDataClass()
      Получить класс для хранения данных линзы.

      При создании не-разрешенной линзы поле CodeLens.setData(Object) должно заполняться объектом данного класса.

      Specified by:
      getCodeLensDataClass in interface CodeLensSupplier<DefaultCodeLensData>
      Returns:
      Конкретный класс для хранения данных линзы.