Spec-Zone.ru › OpenJDK 25

Интерфейс Attribute

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

В каталоге с именованными объектами могут быть связаны атрибуты. Интерфейс Attribute представляет атрибут, связанный с именованным объектом. Атрибут содержит 0 или более значений, которые могут быть null. Значения атрибута могут быть упорядоченными или неупорядоченными (см. 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, если значение атрибута равно null. Если у атрибута нет значений, возвращается пустое перечисление.
Вызывает исключение:
NamingException — если при получении значений возникло исключение именования.
См. также:
  • isOrdered()

get

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

size

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

getID

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

contains

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

add

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

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

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

remove

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

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

Параметры:
attrval — значение, которое может быть null и которое нужно удалить из этого атрибута. Если оно равно 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, если значение атрибута равно null.
Вызывает исключение:
NamingException — если при получении значения возникло исключение именования.
IndexOutOfBoundsException — если ix находится вне допустимого диапазона.

remove

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

add

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

set

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

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, обзоры концепций, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее дочерних компаний в США и других странах.
Авторские права © 1993, 2025, Oracle и/или ее дочерние компании, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.naming/javax/naming/directory/Attribute.html

Spec-Zone.ru

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