Класс 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" или начинается с "my_example.my_type".- Начиная с версии:
- 1.5
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
NotificationFilterSupport() |
Создаёт NotificationFilterSupport. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
disableAllTypes() |
Отключает все типы уведомлений. |
void |
disableType |
Удаляет указанный префикс из списка префиксов. |
void |
enableType |
Разрешает отправку слушателю всех уведомлений, тип которых начинается с указанного префикса. |
Vector |
getEnabledTypes() |
Возвращает все разрешённые типы уведомлений для этого фильтра. |
boolean |
isNotificationEnabled |
Вызывается перед отправкой указанного уведомления слушателю. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создаёт и возвращает копию этого объекта. |
boolean |
equals |
Указывает, равен ли этот объект другому объекту. |
protected void |
finalize() |
Устарело, планируется удаление: этот элемент API может быть удалён в будущей версии. Финализация устарела и может быть удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Заставляет текущий поток ожидать, пока он не будет пробуждён, обычно в результате вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ожидать, пока он не будет пробуждён, обычно в результате вызова notify или interrupt, либо пока не истечёт заданное время. |
final void |
wait |
Заставляет текущий поток ожидать, пока он не будет пробуждён, обычно в результате вызова notify или interrupt, либо пока не истечёт заданное время. |
Подробное описание конструкторов
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, 2025, 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.