Spec-Zone.ru › OpenJDK 8

Класс MembershipKey

  • java.lang.Object
    • java.nio.channels.MembershipKey

public abstract class MembershipKey
extends Object

Токен, представляющий членство в группе интернет-мультимедиа (IP) multicast.

Ключ членства может представлять членство в получении всех дейтаграмм, отправленных в группу, или он может быть специфичным для источника, что означает, что он представляет членство, получающее только дейтаграммы от определенного адреса источника. Является ли ключ членства специфичным для источника, можно определить, вызвав метод sourceAddress.

Ключ членства действителен при создании и остается действительным до тех пор, пока членство не будет отменено вызовом метода drop или канал не будет закрыт. Действительность ключа членства можно проверить, вызвав метод isValid.

Если ключ членства не специфичен для источника, а операционная система поддерживает фильтрацию источников, то методы block и unblock можно использовать для блокирования или разблокирования дейтаграмм multicast от определенных адресов источника.

С:
1.7
См. также:
MulticastChannel

Конструкторы

Модификатор Конструктор и описание
protected MembershipKey()

Инициализирует новый экземпляр этого класса.

Методы

Модификатор и тип Метод и описание
abstract MembershipKey block(InetAddress source)

Блокирует дейтаграммы multicast от указанного адреса источника.

abstract MulticastChannel channel()

Возвращает канал, для которого был создан этот ключ членства.

abstract void drop()

Отмена членства.

abstract InetAddress group()

Возвращает группу multicast, для которой был создан этот ключ членства.

abstract boolean isValid()

Указывает, действителен ли данный объект членства.

abstract NetworkInterface networkInterface()

Возвращает сетевой интерфейс, для которого был создан этот ключ членства.

abstract InetAddress sourceAddress()

Возвращает адрес источника, если этот ключ членства специфичен для источника, или null, если это членство не специфично для источника.

abstract MembershipKey unblock(InetAddress source)

Разблокирует дейтаграммы multicast от указанного адреса источника, который был ранее заблокирован с помощью метода block.

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

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

Конструкторы

MembershipKey

protected MembershipKey()

Инициализирует новый экземпляр этого класса.

Методы

isValid

public abstract boolean isValid()

Указывает, действителен ли данный объект членства.

Членство в группе multicast действительное при создании и остается действительным до тех пор, пока членство не будет отменено вызовом метода drop или канал не будет закрыт.

Возвращает:
true если этот ключ членства действителен, false в противном случае

drop

public abstract void drop()

Отмена членства.

Если ключ членства представляет членство в получении всех дейтаграмм, то членство отменяется, и канал больше не будет получать дейтаграммы, отправленные в группу. Если ключ членства специфичен для источника, то канал больше не будет получать дейтаграммы, отправленные в группу от этого адреса источника.

После отмены членства все еще возможно получать дейтаграммы, отправленные в группу. Это может произойти, когда дейтаграммы ожидают получения в буфере приема сокета. После отмены членства канал может join группу снова, в этом случае возвращается новый ключ членства.

По возвращении этот объект членства будет invalid. Если членство в группе multicast уже недействительно, то вызов этого метода не повлияет. После того, как членство в группе multicast станет недействительным, оно остается недействительным навсегда.

block

public abstract MembershipKey block(InetAddress source)
                             throws IOException

Блокирует дейтаграммы multicast от указанного адреса источника.

Если этот ключ членства не специфичен для источника и операционная система поддерживает фильтрацию источников, то этот метод блокирует дейтаграммы multicast от указанного адреса источника. Если данный адрес источника уже заблокирован, то этот метод не повлияет. После блокировки адреса источника все еще возможно получать дейтаграммы от этого источника. Это может произойти, когда дейтаграммы ожидают получения в буфере приема сокета.

Параметры:
source - Адрес источника, который нужно заблокировать
Возвращает:
Этот ключ членства
Исключения:
IllegalArgumentException - Если параметр source не является адресом unicast или не является адресом того же типа, что и группа multicast
IllegalStateException - Если этот ключ членства специфичен для источника или больше недействителен
UnsupportedOperationException - Если операционная система не поддерживает фильтрацию источников
IOException - Если произошла ошибка ввода-вывода

unblock

public abstract MembershipKey unblock(InetAddress source)

Разблокирует дейтаграммы multicast от указанного адреса источника, который был ранее заблокирован с помощью метода block.

Параметры:
source - Адрес источника, который нужно разблокировать
Возвращает:
Этот ключ членства
Исключения:
IllegalStateException - Если указанный адрес источника в настоящее время не заблокирован или ключ членства больше недействителен

channel

public abstract MulticastChannel channel()

Возвращает канал, для которого был создан этот ключ членства. Этот метод будет продолжать возвращать канал даже после того, как членство станет invalid.

Возвращает:
канал

group

public abstract InetAddress group()

Возвращает группу multicast, для которой был создан этот ключ членства. Этот метод будет продолжать возвращать группу даже после того, как членство станет invalid.

Возвращает:
группа multicast

networkInterface

public abstract NetworkInterface networkInterface()

Возвращает сетевой интерфейс, для которого был создан этот ключ членства. Этот метод будет продолжать возвращать сетевой интерфейс даже после того, как членство станет invalid.

Возвращает:
сетевой интерфейс

sourceAddress

public abstract InetAddress sourceAddress()

Возвращает адрес источника, если этот ключ членства специфичен для источника, или null если это членство не специфично для источника.

Возвращает:
Адрес источника, если этот ключ членства специфичен для источника, в противном случае null

© 1993, 2020, 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.

Spec-Zone.ru

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