Spec-Zone.ru › OpenJDK 21

Интерфейс Reporter

public interface Reporter
Интерфейс для сообщения об диагностике и других сообщениях.

Диагностика состоит из diagnostic kind и сообщения и может дополнительно быть связана с element, tree node в комментарии документации или произвольной позиции в заданном file. Другие сообщения могут быть записаны непосредственно в один из двух потоков, которые используются для "стандартного вывода" и "вывода диагностики", где "стандартный вывод" означает вывод, который является ожидаемым результатом выполнения некоторой операции, например, справки командной строки, которая генерируется при использовании параметра --help, а "вывод диагностики" относится к любым ошибкам, предупреждениям и другим выводам, которые являются побочным эффектом выполнения операции.

Точный способ вывода диагностики не определен и зависит от окружающего контекста. Например:

  • API DocumentationTool позволяет клиенту указать DiagnosticListener, которому будут передаваться диагностические сообщения reported. Если слушатель не указан, диагностические сообщения будут записаны в указанный поток или в System.err если такой поток не предоставлен.
  • API ToolProvider позволяет клиенту указать потоки, используемые для сообщения о стандартном и диагностическом выводе.
Since:
9

Краткое описание методов

Модификатор и тип Метод Описание
default PrintWriter getDiagnosticWriter()
Возвращает поток, который можно использовать для записи диагностического вывода, или null если такой поток недоступен.
default PrintWriter getStandardWriter()
Возвращает поток, который можно использовать для записи не диагностического вывода, или null если такой поток недоступен.
default void print(Diagnostic.Kind kind, DocTreePath path, int start, int pos, int end, String message)
Выводит сообщение о диагностике, связанное с позицией в диапазоне символов в узле дерева.
void print(Diagnostic.Kind kind, DocTreePath path, String message)
Выводит сообщение о диагностике, связанное с узлом дерева в комментарии документации.
void print(Diagnostic.Kind kind, String message)
Выводит сообщение о диагностике.
void print(Diagnostic.Kind kind, Element element, String message)
Выводит сообщение о диагностике, связанное с элементом.
default void print(Diagnostic.Kind kind, FileObject file, int start, int pos, int end, String message)
Выводит сообщение о диагностике, связанное с позицией в диапазоне символов в файле.

Подробное описание методов

print

void print(Diagnostic.Kind kind, String message)
Выводит сообщение о диагностике.
Parameters:
kind - тип диагностики
message - сообщение для вывода

print

void print(Diagnostic.Kind kind, DocTreePath path, String message)
Выводит сообщение о диагностике, связанное с узлом дерева в комментарии документации.
Parameters:
kind - тип диагностики
path - путь к узлу дерева
message - сообщение для вывода

print

default void print(Diagnostic.Kind kind, DocTreePath path, int start, int pos, int end, String message)
Выводит сообщение о диагностике, связанное с позицией в диапазоне символов в узле дерева. Только типы DocTree которые оборачивают простое строковое значение поддерживаются как листья данного пути. В настоящее время это включает CommentTree, DocTypeTree, ReferenceTree и TextTree. Позиции — это смещения символов относительно начала строки, все с нуля. Позиции должны удовлетворять соотношению start <= pos <= end.
Требования к реализации:
Эта реализация игнорирует значения (start, pos, end) и просто вызывает print(kind, path, message).
Parameters:
kind - тип диагностики
path - путь к узлу дерева
start - начало охватывающего диапазона
pos - позиция
end - конец охватывающего диапазона
message - сообщение для вывода
Throws:
IllegalArgumentException - если start, pos и end не образуют допустимый диапазон.
Since:
18

print

void print(Diagnostic.Kind kind, Element element, String message)
Выводит сообщение о диагностике, связанное с элементом.
Parameters:
kind - тип диагностики
element - элемент
message - сообщение для вывода

print

default void print(Diagnostic.Kind kind, FileObject file, int start, int pos, int end, String message)
Выводит сообщение о диагностике, связанное с позицией в диапазоне символов в файле. Позиции — это смещения символов относительно начала содержимого файла, все с нуля. Позиции должны удовлетворять соотношению start <= pos <= end.
Требования к реализации:
Эта реализация всегда выбрасывает UnsupportedOperationException. Реализация, предоставленная инструментом javadoc для initialize doclet, переопределяет эту реализацию.
Parameters:
kind - тип диагностики
file - файл
start - начало охватывающего диапазона
pos - позиция
end - конец охватывающего диапазона
message - сообщение для вывода
Since:
17

getStandardWriter

default PrintWriter getStandardWriter()
Возвращает поток, который можно использовать для записи не диагностического вывода, или null если такой поток недоступен.
API Note:
Значение может совпадать или не совпадать со значением, возвращаемым getDiagnosticWriter().
Требования к реализации:
Эта реализация возвращает null. Реализация, предоставленная инструментом javadoc для initialize doclet, всегда возвращает не-null значение.
Returns:
поток
Since:
17

getDiagnosticWriter

default PrintWriter getDiagnosticWriter()
Возвращает поток, который можно использовать для записи диагностического вывода, или null если такой поток недоступен.
API Note:
Значение может совпадать или не совпадать со значением, возвращаемым getStandardWriter().
Требования к реализации:
Эта реализация возвращает null. Реализация, предоставленная инструментом javadoc для initialize doclet, всегда возвращает не-null значение.
Returns:
поток
Since:
17

© 1993, 2023, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/21/docs/api/jdk.javadoc/jdk/javadoc/doclet/Reporter.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API