Spec-Zone.ru › OpenJDK 21

Класс Handler

java.lang.Object
java.util.logging.Handler
Прямые известные подклассы:
MemoryHandler, StreamHandler
public abstract class Handler extends Object
Объект Handler получает сообщения журнала от Logger и экспортирует их. Например, он может записывать их в консоль или файл, отправлять в службу сетевого ведения журнала или пересылать в журнал ОС, или как-то ещё.

Объект Handler может быть отключён выполнением setLevel(Level.OFF), и может быть снова включён выполнением setLevel с соответствующим уровнем.

Классы Handler обычно используют свойства LogManager для установки значений по умолчанию для Handler Filter, Formatter, и Level. См. конкретную документацию для каждого конкретного класса Handler.

С:
1.4

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

Handler()
Модификатор Конструктор Описание
protected
Конструктор по умолчанию.

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

Модификатор и тип Метод Описание
abstract void close()
Закрыть Handler и освободить все связанные ресурсы.
abstract void flush()
Очистить буферизованный вывод.
String getEncoding()
Возвращает кодировку символов для этого Handler.
ErrorManager getErrorManager()
Получает ErrorManager для этого обработчика.
Filter getFilter()
Получить текущий Filter для этого Handler.
Formatter getFormatter()
Возвращает Formatter для этого Handler.
Level getLevel()
Получить уровень журнала, определяющий, какие сообщения будут зарегистрированы этим Handler.
boolean isLoggable(LogRecord record)
Проверить, будет ли этот Handler действительно регистрировать данный LogRecord.
abstract void publish(LogRecord record)
Опубликовать LogRecord.
protected void reportError(String msg, Exception ex, int code)
Защищенный вспомогательный метод для сообщения об ошибке в ErrorManager этого обработчика.
void setEncoding(String encoding)
Установить кодировку символов, используемую этим Handler.
void setErrorManager(ErrorManager em)
Определить ErrorManager для этого обработчика.
void setFilter(Filter newFilter)
Установить Filter для управления выводом в этом Handler.
void setFormatter(Formatter newFormatter)
Установить Formatter.
void setLevel(Level newLevel)
Установить уровень журнала, определяющий, какие уровни сообщений будут регистрироваться этим Handler.

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

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

Handler

protected Handler()
Конструктор по умолчанию. Результирующий Handler имеет уровень логирования Level.ALL, без Formatter, и без Filter. По умолчанию устанавливается экземпляр ErrorManager в качестве ErrorManager.

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

publish

public abstract void publish(LogRecord record)
Опубликовать LogRecord.

Изначальный запрос логирования был сделан к объекту Logger, который инициализировал LogRecord и передал его сюда.

Handler отвечает за форматирование сообщения, при необходимости. Форматирование должно включать локализация.

Параметры:
record - описание события логирования. Нулевой рекорд игнорируется и не публикуется

flush

public abstract void flush()
Очистить буферизованный вывод.

close

public abstract void close() throws SecurityException
Закрыть Handler и освободить все связанные ресурсы.

Метод close выполнит flush и затем закроет Handler. После вызова close этот Handler больше не должен использоваться. Вызовы методов могут быть проигнорированы или могут вызывать исключения времени выполнения.

Исключения:
SecurityException - если существует менеджер безопасности и у вызывающей стороны нет LoggingPermission("control").

setFormatter

public void setFormatter(Formatter newFormatter) throws SecurityException
Установить Formatter. Этот Formatter будет использоваться для форматирования LogRecords для данного Handler.

Некоторые Handlers могут не использовать Formatters, в этом случае Formatter будет запомнен, но не использован.

Параметры:
newFormatter - используемый Formatter (не может быть null)
Исключения:
SecurityException - если существует менеджер безопасности и у вызывающей стороны нет LoggingPermission("control").

getFormatter

public Formatter getFormatter()
Возвращает Formatter для данного Handler.
Возвращаемое значение:
Formatter (может быть null).

setEncoding

public void setEncoding(String encoding) throws SecurityException, UnsupportedEncodingException
Установить кодировку символов, используемую этим Handler.

Кодировка должна быть установлена до записи любых LogRecords в Handler.

Параметры:
encoding - имя поддерживаемой кодировки символов. Может быть null, чтобы указать кодировку по умолчанию платформы.
Исключения:
SecurityException - если существует менеджер безопасности и у вызывающей стороны нет LoggingPermission("control").
UnsupportedEncodingException - если указанная кодировка не поддерживается.

getEncoding

public String getEncoding()
Возвращает кодировку символов для данного Handler.
Возвращаемое значение:
Имя кодировки. Может быть null, что указывает на использование кодировки по умолчанию.

setFilter

public void setFilter(Filter newFilter) throws SecurityException
Установить Filter для управления выводом в этом Handler.

При каждом вызове publish Handler вызовет этот Filter (если он не null), чтобы проверить, должно ли LogRecord быть опубликовано или отброшено.

Параметры:
newFilter - объект Filter (может быть null)
Исключения:
SecurityException - если существует менеджер безопасности и у вызывающей стороны нет LoggingPermission("control").

getFilter

public Filter getFilter()
Получить текущий Filter для данного Handler.
Возвращаемое значение:
объект Filter (может быть null)

setErrorManager

public void setErrorManager(ErrorManager em)
Определить ErrorManager для этого Handler.

Метод "error" ErrorManager будет вызван, если возникнут ошибки при использовании этого Handler.

Параметры:
em - новый ErrorManager
Исключения:
SecurityException - если существует менеджер безопасности и у вызывающей стороны нет LoggingPermission("control").

getErrorManager

public ErrorManager getErrorManager()
Получить ErrorManager для этого Handler.
Возвращаемое значение:
ErrorManager для этого Handler
Исключения:
SecurityException - если существует менеджер безопасности и у вызывающей стороны нет LoggingPermission("control").

reportError

protected void reportError(String msg, Exception ex, int code)
Защищённый вспомогательный метод для сообщения об ошибке менеджеру ошибок этого Handler. Обратите внимание, что этот метод получает и использует ErrorManager без проверки безопасности. Поэтому он может использоваться в средах, где вызывающая сторона может быть не привилегированной.
Параметры:
msg - описательная строка (может быть null)
ex - исключение (может быть null)
code - код ошибки, определённый в ErrorManager

setLevel

public void setLevel(Level newLevel) throws SecurityException
Установить уровень логирования, определяющий, какие уровни сообщений будут зарегистрированы этим Handler. Уровни сообщений ниже этого значения будут отброшены.

Цель состоит в том, чтобы позволить разработчикам включить обширное логирование, но ограничить сообщения, отправляемые в определённые Handlers.

Параметры:
newLevel - новое значение уровня логирования
Исключения:
SecurityException - если существует менеджер безопасности и у вызывающей стороны нет LoggingPermission("control").

getLevel

public Level getLevel()
Получить уровень логирования, определяющий, какие сообщения будут зарегистрированы этим Handler. Уровни сообщений ниже этого уровня будут отброшены.
Возвращаемое значение:
уровень регистрируемых сообщений.

isLoggable

public boolean isLoggable(LogRecord record)
Проверить, будет ли данный Handler фактически зарегистрирован этим LogRecord.

Этот метод проверяет, обладает ли LogRecord соответствующим Level и удовлетворяет ли он каким-либо Filter. Также он может выполнять другие проверки, специфичные для Handler, которые могут помешать обработчику зарегистрировать LogRecord. Он вернёт false, если LogRecord является null.

Параметры:
record - LogRecord (может быть null).
Возвращаемое значение:
true, если LogRecord будет зарегистрирован.

© 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/java.logging/java/util/logging/Handler.html

Spec-Zone.ru

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