Интерфейс Attribute
- Все суперинтерфейсы:
Cloneable, Serializable
- Все известные реализующие классы:
BasicAttribute
public interface Attribute extends Cloneable, Serializable
В каталоге с именованными объектами могут быть связаны атрибуты. Интерфейс Attribute представляет атрибут, связанный с именованным объектом. Атрибут содержит 0 или более значений, которые могут быть null. Значения атрибута могут быть упорядоченными или неупорядоченными (см. isOrdered()). Если значения неупорядочены, дубликаты не допускаются. Если значения упорядочены, дубликаты допускаются.
Содержимое и представление атрибута и его значений определяются схемой атрибута. Схема содержит информацию о синтаксисе атрибута и другие его свойства. Подробные сведения о том, как получить информацию о схеме атрибута, если базовая служба каталогов поддерживает схемы, см. в getAttributeDefinition() и getAttributeSyntaxDefinition().
Равенство двух атрибутов определяется классом реализации. Простая реализация может использовать Object.equals() для определения равенства значений атрибутов, а более сложная реализация может использовать информацию о схеме для определения равенства. Аналогично, одна реализация может предоставлять статическую структуру хранения, которая просто возвращает значения, переданные ее конструктору, а другая реализация может определять get() и getAll(), чтобы динамически получать значения из каталога.
Обратите внимание, что обновления Attribute (например, добавление или удаление значения) не влияют на соответствующее представление атрибута в каталоге. Обновить каталог можно только с помощью операций интерфейса DirContext.
- Начиная с версии:
- 1.3
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final long |
serialVersionUID |
Устарело. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
add |
Добавляет значение атрибута в упорядоченный список значений атрибута. |
boolean |
add |
Добавляет новое значение в атрибут. |
void |
clear() |
Удаляет все значения из этого атрибута. |
Object |
clone() |
Создает копию атрибута. |
boolean |
contains |
Определяет, содержится ли значение в атрибуте. |
Object |
get() |
Возвращает одно из значений этого атрибута. |
Object |
get |
Возвращает значение атрибута из упорядоченного списка значений атрибута. |
NamingEnumeration |
getAll() |
Возвращает перечисление значений атрибута. |
DirContext |
getAttributeDefinition() |
Возвращает определение схемы атрибута. |
DirContext |
getAttributeSyntaxDefinition() |
Возвращает определение синтаксиса, связанное с атрибутом. |
String |
getID() |
Возвращает идентификатор этого атрибута. |
boolean |
isOrdered() |
Определяет, упорядочены ли значения этого атрибута. |
Object |
remove |
Удаляет значение атрибута из упорядоченного списка значений атрибута. |
boolean |
remove |
Удаляет указанное значение из атрибута. |
Object |
set |
Устанавливает значение атрибута в упорядоченном списке значений атрибута. |
int |
size() |
Возвращает количество значений в этом атрибуте. |
Подробное описание полей
serialVersionUID
@Deprecated static final long serialVersionUID
serialVersionUID в интерфейсе не имеет смысла. Не используйте; замены нет.- См. также:
Подробное описание методов
getAll
NamingEnumeration<?> getAll() throws NamingException
- Возвращает:
- Ненулевое перечисление значений атрибута. Каждый элемент перечисления представляет собой объект, который может быть null. Класс объекта соответствует классу значения атрибута. Элемент равен null, если значение атрибута равно null. Если у атрибута нет значений, возвращается пустое перечисление.
- Вызывает исключение:
-
NamingException— если при получении значений возникло исключение именования. - См. также:
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.
- См. также:
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 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
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уже существует, а значения атрибута не упорядочены.
© 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
serialVersionUIDв интерфейсе не имеет смысла.