Класс NotificationFilterSupport
- Все реализованные интерфейсы:
-
Serializable,NotificationFilter
- Непосредственные известные подклассы:
MBeanServerNotificationFilter
public class NotificationFilterSupport extends Object implements NotificationFilter
NotificationFilter. Фильтрация выполняется по атрибуту типа уведомления. Управляет списком включенных типов уведомлений. Метод позволяет пользователям включать/отключать любое количество типов уведомлений.
Затем, перед отправкой уведомления слушателю, зарегистрированному с фильтром, отправитель уведомлений сравнивает этот тип уведомления со всеми включенными типами уведомлений в фильтре. Уведомление будет отправлено слушателю только в том случае, если его фильтр включает этот тип уведомления.
Пример:
NotificationFilterSupport myFilter = new NotificationFilterSupport();
myFilter.enableType("my_example.my_type");
myBroadcaster.addListener(myListener, myFilter, null);
Слушатель myListener будет получать только уведомления, тип которых равен/начинается с "my_example.my_type".Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
NotificationFilterSupport() |
Создает NotificationFilterSupport. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
disableAllTypes() |
Отключает все типы уведомлений. |
void |
disableType |
Удаляет заданный префикс из списка префиксов. |
void |
enableType |
Включает все уведомления, тип которых начинается с указанного префикса, для отправки слушателю. |
Vector<String> |
getEnabledTypes() |
Получает все включенные типы уведомлений для данного фильтра. |
boolean |
isNotificationEnabled |
Вызывается перед отправкой указанного уведомления слушателю. |
Подробное описание конструкторов
NotificationFilterSupport
public NotificationFilterSupport()
NotificationFilterSupport.Подробное описание методов
isNotificationEnabled
public boolean isNotificationEnabled(Notification notification)
Этот фильтр сравнивает тип указанного уведомления с каждым включенным типом. Если тип уведомления соответствует одному из включенных типов, уведомление должно быть отправлено слушателю, и этот метод возвращает
true.- Указано в:
-
isNotificationEnabledв интерфейсеNotificationFilter - Параметры:
-
notification- Уведомление, которое нужно отправить. - Возвращает:
-
trueесли уведомление должно быть отправлено слушателю,falseв противном случае.
enableType
public void enableType(String prefix) throws IllegalArgumentException
Если указанный префикс уже находится в списке включенных типов уведомлений, этот метод не оказывает никакого эффекта.
Пример:
// Enables all notifications the type of which starts with "my_example" to be sent.
myFilter.enableType("my_example");
// Enables all notifications the type of which is "my_example.my_type" to be sent.
myFilter.enableType("my_example.my_type");
Обратите внимание, что:
myFilter.enableType("my_example.*");
не будет соответствовать ни одному типу уведомления.- Параметры:
-
prefix- Префикс. - Исключения:
-
IllegalArgumentException- Параметр префикс равен null.
disableType
public void disableType(String prefix)
Если указанный префикс не находится в списке включенных типов уведомлений, этот метод не оказывает никакого эффекта.
- Параметры:
-
prefix- Префикс.
disableAllTypes
public void disableAllTypes()
getEnabledTypes
public Vector<String> getEnabledTypes()
- Возвращает:
- Список, содержащий все включенные типы уведомлений.
© 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/java.management/javax/management/NotificationFilterSupport.html