Spec-Zone.ru › OpenJDK 17

Интерфейс Attribute

Все суперинтерфейсы:
Cloneable, Serializable
Все известные реализующие классы:
BasicAttribute
public interface Attribute extends Cloneable, Serializable
Этот интерфейс представляет атрибут, связанный с именованным объектом.

В каталоге именованные объекты могут иметь ассоциированные с ними атрибуты. Интерфейс Attribute представляет собой атрибут, связанный с именованным объектом. Атрибут содержит 0 или более, возможно, нулевые значения. Значения атрибута могут быть упорядоченными или неупорядоченными (см. isOrdered()). Если значения неупорядочены, дубликаты не допускаются. Если значения упорядочены, дубликаты допускаются.

Содержание и представление атрибута и его значений определяется схемой атрибута. Схема содержит информацию о синтаксисе атрибута и других свойствах. См. getAttributeDefinition() и getAttributeSyntaxDefinition() для получения подробной информации о том, как получить информацию о схеме атрибута, если служба каталогов поддерживает схемы.

Равенство двух атрибутов определяется реализующим классом. Простая реализация может использовать Object.equals() для определения равенства значений атрибута, в то время как более сложная реализация может использовать информацию о схеме для определения равенства. Аналогично, одна реализация может предоставить статическую структуру хранения, которая просто возвращает значения, переданные в конструктор, в то время как другая реализация может определять get() и getAll() для динамического получения значений из каталога.

Обратите внимание, что обновления Attribute (например, добавление или удаление значения) не влияют на соответствующее представление атрибута в каталоге. Обновления каталога могут быть произведены только с помощью операций в интерфейсе DirContext.

С момента:
1.3
См. также:
  • BasicAttribute

Краткое описание полей

Модификатор и тип Поле Описание
static final long serialVersionUID
Устаревшее.
Поле serialVersionUID в интерфейсе неэффективно.

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

Модификатор и тип Метод Описание
void add(int ix, Object attrVal)
Добавляет значение атрибута в упорядоченный список значений атрибута.
boolean add(Object attrVal)
Добавляет новое значение в атрибут.
void clear()
Удаляет все значения из этого атрибута.
Object clone()
Создает копию атрибута.
boolean contains(Object attrVal)
Определяет, находится ли значение в атрибуте.
Object get()
Получает одно из значений этого атрибута.
Object get(int ix)
Получает значение атрибута из упорядоченного списка значений атрибута.
NamingEnumeration<?> getAll()
Получает перечисление значений атрибута.
DirContext getAttributeDefinition()
Получает определение схемы атрибута.
DirContext getAttributeSyntaxDefinition()
Получает определение синтаксиса, связанное с атрибутом.
String getID()
Получает идентификатор этого атрибута.
boolean isOrdered()
Определяет, являются ли значения этого атрибута упорядоченными.
Object remove(int ix)
Удаляет значение атрибута из упорядоченного списка значений атрибута.
boolean remove(Object attrval)
Удаляет указанное значение из атрибута.
Object set(int ix, Object attrVal)
Устанавливает значение атрибута в упорядоченном списке значений атрибута.
int size()
Получает количество значений в этом атрибуте.

Подробное описание полей

serialVersionUID

@Deprecated static final long serialVersionUID
Устарело.
Поле serialVersionUID в интерфейсе неэффективно. Не использовать; замены нет.
Используйте serialVersionUID из JNDI 1.1.1 для межплатформенной совместимости.
См. также:
  • Значения константных полей

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

getAll

NamingEnumeration<?> getAll() throws NamingException
Возвращает перечисление значений атрибута. Поведение этого перечисления не определено, если значения атрибута добавляются, изменяются или удаляются во время работы перечисления. Если значения атрибута упорядочены, элементы перечисления будут упорядочены.
Возвращает:
Непустое перечисление значений атрибута. Каждый элемент перечисления — это, возможно, нулевой объект. Класс объекта — это класс значения атрибута. Элемент равен null, если значение атрибута равно null. Если атрибут имеет ноль значений, возвращается пустое перечисление.
Исключения:
NamingException - Если при получении значений возникло исключение имени.
См. также:
  • isOrdered()

get

Object get() throws NamingException
Возвращает одно из значений этого атрибута. Если атрибут имеет более одного значения и неупорядочен, возвращается любое из значений. Если атрибут имеет более одного значения и упорядочен, возвращается первое значение.
Возвращает:
Возможный нулевой объект, представляющий одно из значений атрибута. Он равен null, если значение атрибута равно null.
Исключения:
NamingException - Если при получении значения возникло исключение имени.
NoSuchElementException - Если у этого атрибута нет значений.

size

int size()
Возвращает количество значений в этом атрибуте.
Возвращает:
Неотрицательное количество значений в этом атрибуте.

getID

String getID()
Возвращает идентификатор этого атрибута.
Возвращает:
Идентификатор этого атрибута. Он не может быть null.

contains

boolean contains(Object attrVal)
Определяет, содержится ли значение в атрибуте. Равенство определяется реализацией, которая может использовать Object.equals() или схему информации для определения равенства.
Параметры:
attrVal - Возможный нулевой проверяемый объект. Если null, проверьте, имеет ли атрибут значение, равное null.
Возвращает:
true, если attrVal — одно из значений этого атрибута; иначе false.
См. также:
  • Object.equals(java.lang.Object)
  • BasicAttribute.equals(java.lang.Object)

add

boolean add(Object attrVal)
Добавляет новое значение в атрибут. Если значения атрибута неупорядочены и attrVal уже присутствует в атрибуте, этот метод ничего не делает. Если значения атрибута упорядочены, attrVal добавляется в конец списка значений атрибута.

Равенство определяется реализацией, которая может использовать Object.equals() или схему информации для определения равенства.

Параметры:
attrVal - Новое, возможно, нулевое значение для добавления. Если null, null добавляется как значение атрибута.
Возвращает:
true, если значение было добавлено; иначе false.

remove

boolean remove(Object attrval)
Удаляет указанное значение из атрибута. Если attrval не содержится в атрибуте, этот метод ничего не делает. Если значения атрибута упорядочены, первая встречающаяся attrVal удаляется, а значения атрибута с индексами, большими, чем удаленное значение, сдвигаются к началу списка (и их индексы уменьшаются на единицу).

Равенство определяется реализацией, которая может использовать Object.equals() или схему информации для определения равенства.

Параметры:
attrval - Возможно, нулевое значение для удаления из этого атрибута. Если null, удаляется значение атрибута, равное null.
Возвращает:
true, если значение было удалено; иначе false.

clear

void clear()
Удаляет все значения из этого атрибута.

getAttributeSyntaxDefinition

DirContext getAttributeSyntaxDefinition() throws NamingException
Возвращает определение синтаксиса, связанное с атрибутом. Определение синтаксиса атрибута определяет формат значения(ей) атрибута. Обратите внимание, что это отличается от представления значения атрибута как объекта Java. Определение синтаксиса относится к понятию синтаксиса в каталоге.

Например, даже если значение может быть объектом Java String, его синтаксис каталога может быть «Печатная строка» или «Номер телефона». Или значение может быть массивом байтов, а его синтаксис каталога — «JPEG» или «Сертификат». Например, если синтаксис этого атрибута — «JPEG», этот метод вернёт определение синтаксиса для «JPEG».

Информация, которую можно получить из определения синтаксиса, зависит от каталога.

Если реализация не поддерживает схемы, она должна выбросить OperationNotSupportedException. Если реализация поддерживает схемы, она должна определить этот метод, чтобы вернуть соответствующую информацию.

Возвращает:
Определение синтаксиса атрибута. Null, если реализация поддерживает схемы, но у этого атрибута нет информации о схеме.
Исключения:
OperationNotSupportedException - Если получение схемы не поддерживается.
NamingException - Если при получении схемы возникло исключение имени.

getAttributeDefinition

DirContext getAttributeDefinition() throws NamingException
Возвращает определение схемы атрибута. Определение схемы атрибута содержит информацию, такую как то, является ли атрибут многозначным или однозначным, правила сопоставления, которые следует использовать при сравнении значений атрибута. Информация, которую можно получить из определения атрибута, зависит от каталога.

Если реализация не поддерживает схемы, она должна выбросить OperationNotSupportedException. Если реализация поддерживает схемы, она должна определить этот метод, чтобы вернуть соответствующую информацию.

Возвращает:
Определение схемы этого атрибута. Null, если реализация поддерживает схемы, но у этого атрибута нет информации о схеме.
Исключения:
OperationNotSupportedException - Если получение схемы не поддерживается.
NamingException - Если при получении схемы возникло исключение имени.

clone

Object clone()
Создаёт копию атрибута. Копия содержит те же значения атрибута, что и исходный атрибут: сами значения атрибута не клонируются. Изменения в копии не повлияют на оригинал и наоборот.
Возвращает:
Непустая копия атрибута.

isOrdered

boolean isOrdered()
Определяет, упорядочены ли значения этого атрибута. Если значения атрибута упорядочены, допускаются дублируемые значения. Если значения атрибута неупорядочены, они представлены в произвольном порядке и не содержат дубликатов.
Возвращает:
true, если значения этого атрибута упорядочены; false в противном случае.
См. также:
  • get(int)
  • remove(int)
  • add(int, java.lang.Object)
  • set(int, java.lang.Object)

get

Object get(int ix) throws NamingException
Возвращает значение атрибута из упорядоченного списка значений атрибутов. Этот метод возвращает значение по ix индексу в списке значений атрибутов. Если значения атрибута неупорядочены, этот метод возвращает значение, которое случайно находится на этом индексе.
Параметры:
ix - Индекс значения в упорядоченном списке значений атрибутов. 0 <= ix < size().
Возвращает:
Возможно, нулевое значение атрибута по индексу ix; null, если значение атрибута равно null.
Исключения:
NamingException - Если при получении значения возникло исключение имени.
IndexOutOfBoundsException - Если ix находится вне заданного диапазона.

remove

Object remove(int ix)
Удаляет значение атрибута из упорядоченного списка значений атрибутов. Этот метод удаляет значение по ix индексу в списке значений атрибутов. Если значения атрибута неупорядочены, этот метод удаляет значение, которое случайно находится на этом индексе. Значения, расположенные на индексах, больших, чем ix, сдвигаются к началу списка (и их индексы уменьшаются на единицу).
Параметры:
ix - Индекс удаляемого значения. 0 <= ix < size().
Возвращает:
Возможный нулевой объект атрибута по индексу ix , который был удалён; null, если значение атрибута равно null.
Исключения:
IndexOutOfBoundsException - Если ix находится вне заданного диапазона.

Добавить

void add(int ix, Object attrVal)
Добавляет значение атрибута в упорядоченный список значений атрибутов. Этот метод добавляет attrVal в список значений атрибутов по индексу ix. Значения, расположенные по индексам, равным или большим ix, смещаются вниз к концу списка (и их индексы увеличиваются на единицу). Если значения атрибутов неупорядочены и уже содержат attrVal, выбрасывается IllegalStateException.
Параметры:
ix - Индекс в упорядоченном списке значений атрибутов для добавления нового значения. 0 <= ix <= size().
attrVal - Возможно, нулевое значение атрибута для добавления; если null, добавляется null.
Исключения:
IndexOutOfBoundsException - Если ix находится вне заданного диапазона.
IllegalStateException - Если значения атрибутов неупорядочены и attrVal является одним из этих значений.

Установить

Object set(int ix, Object attrVal)
Устанавливает значение атрибута в упорядоченном списке значений атрибутов. Этот метод устанавливает значение по индексу ix в списке значений атрибутов на attrVal. Старое значение удаляется. Если значения атрибутов неупорядочены, этот метод устанавливает значение, которое случайно находится на этом индексе, на attrVal, если только attrVal не является уже одним из значений. В этом случае выбрасывается IllegalStateException.
Параметры:
ix - Индекс значения в упорядоченном списке значений атрибутов. 0 <= ix < size().
attrVal - Возможно, нулевое значение атрибута для использования. Если null, 'null' заменяет старое значение.
Возвращаемое значение:
Возможно, нулевое значение атрибута по индексу ix, которое было заменено. Null, если значение атрибута было null.
Исключения:
IndexOutOfBoundsException - Если ix находится вне заданного диапазона.
IllegalStateException - Если attrVal уже существует и значения атрибутов неупорядочены.

© 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.naming/javax/naming/directory/Attribute.html

Spec-Zone.ru

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