Интерфейс 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. Если у атрибута нет значений, возвращается пустое перечисление.
- Изначает:
-
NamingException- Если во время извлечения значений возникло исключение обработки имён. - См. также:
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 в противном случае.
- См. также:
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 String, его синтаксис каталога может быть "Printable 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. - Изначает:
-
NamingException- Если во время получения значения возникло исключение обработки имён. -
IndexOutOfBoundsException- Еслиixнаходится вне указанного диапазона.
удалить
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, 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://download.java.net/java/early_access/jdk24/docs/api/java.naming/javax/naming/directory/Attribute.html
serialVersionUIDв интерфейсе неэффективно.