Интерфейс 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 если такой поток недоступен. |
void |
print |
Выводит сообщение об ошибке, связанное с узлом дерева в комментарии к документации. |
void |
print |
Выводит сообщение об ошибке. |
void |
print |
Выводит сообщение об ошибке, связанное с элементом. |
default void |
print |
Выводит сообщение об ошибке, связанное с позицией внутри диапазона символов в файле. |
Подробное описание методов
void print(Diagnostic.Kind kind, String message)
- Параметры:
-
kind- тип диагностики -
message- сообщение для вывода
void print(Diagnostic.Kind kind, DocTreePath path, String message)
- Параметры:
-
kind- тип диагностики -
path- путь к узлу дерева -
message- сообщение для вывода
void print(Diagnostic.Kind kind, Element element, String message)
- Параметры:
-
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, переопределяет эту реализацию. - Параметры:
-
kind- тип диагностики -
file- файл -
start- начало охватывающего диапазона -
pos- позиция -
end- конец охватывающего диапазона -
message- сообщение для вывода - Since:
- 17
getStandardWriter
default PrintWriter getStandardWriter()
null если такой поток недоступен.- Примечание API:
- Значение может или не может совпадать со значением, возвращаемым
getDiagnosticWriter(). - Требования к реализации:
- Данная реализация возвращает
null. Реализация, предоставленная инструментомjavadocдляinitializedoclet, всегда возвращает значение, отличное отnull. - Возвращает:
- поток
- Since:
- 17
getDiagnosticWriter
default PrintWriter getDiagnosticWriter()
null если такой поток недоступен.- Примечание API:
- Значение может или не может совпадать со значением, возвращаемым
getStandardWriter(). - Требования к реализации:
- Данная реализация возвращает
null. Реализация, предоставленная инструментомjavadocдляinitializedoclet, всегда возвращает значение, отличное отnull. - Возвращает:
- поток
- Since:
- 17
© 1993, 2021, 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/17/docs/api/jdk.javadoc/jdk/javadoc/doclet/Reporter.html