Интерфейс 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 |
Выводит сообщение о диагностике, связанное с позицией в диапазоне символов в узле дерева. |
void |
print |
Выводит сообщение о диагностике, связанное с узлом дерева в комментарии документации. |
void |
print |
Выводит сообщение о диагностике. |
void |
print |
Выводит сообщение о диагностике, связанное с элементом. |
default void |
print |
Выводит сообщение о диагностике, связанное с позицией в диапазоне символов в файле. |
Подробное описание методов
void print(Diagnostic.Kind kind, String message)
- Parameters:
-
kind- тип диагностики -
message- сообщение для вывода
void print(Diagnostic.Kind kind, DocTreePath path, String message)
- Parameters:
-
kind- тип диагностики -
path- путь к узлу дерева -
message- сообщение для вывода
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
void print(Diagnostic.Kind kind, Element element, String message)
- Parameters:
-
kind- тип диагностики -
element- элемент -
message- сообщение для вывода
default void print(Diagnostic.Kind kind, FileObject file, int start, int pos, int end, String message)
start <= pos <= end.- Требования к реализации:
- Эта реализация всегда выбрасывает
UnsupportedOperationException. Реализация, предоставленная инструментомjavadocдляinitializedoclet, переопределяет эту реализацию. - Parameters:
-
kind- тип диагностики -
file- файл -
start- начало охватывающего диапазона -
pos- позиция -
end- конец охватывающего диапазона -
message- сообщение для вывода - Since:
- 17
getStandardWriter
default PrintWriter getStandardWriter()
null если такой поток недоступен.- API Note:
- Значение может совпадать или не совпадать со значением, возвращаемым
getDiagnosticWriter(). - Требования к реализации:
- Эта реализация возвращает
null. Реализация, предоставленная инструментомjavadocдляinitializedoclet, всегда возвращает не-nullзначение. - Returns:
- поток
- Since:
- 17
getDiagnosticWriter
default PrintWriter getDiagnosticWriter()
null если такой поток недоступен.- API Note:
- Значение может совпадать или не совпадать со значением, возвращаемым
getStandardWriter(). - Требования к реализации:
- Эта реализация возвращает
null. Реализация, предоставленная инструментомjavadocдляinitializedoclet, всегда возвращает не-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