Интерфейс атрибута
- Все суперинтерфейсы:
-
Cloneable,Serializable
- Все известные реализующие классы:
BasicAttribute
public interface Attribute extends Cloneable, Serializable
Этот интерфейс представляет атрибут, связанный с именованным объектом.
В каталоге именованные объекты могут иметь связанные с ними атрибуты. Интерфейс Attribute представляет атрибут, связанный с именованным объектом. Атрибут содержит 0 или более, возможно, нулевых значений. Значения атрибута могут быть упорядоченными или неупорядоченными (см. isOrdered()). Если значения неупорядочены, дубликаты не допускаются. Если значения упорядочены, дубликаты разрешены.
Содержимое и представление атрибута и его значений определяются схемой атрибута. Схема содержит информацию о синтаксисе атрибута и других свойствах атрибута. Смотрите getAttributeDefinition() и getAttributeSyntaxDefinition() для получения подробностей о том, как получить информацию о схеме атрибута, если служба каталогов поддерживает схемы.
Равенство двух атрибутов определяется реализующим классом. Простая реализация может использовать Object.equals() для определения равенства значений атрибутов, в то время как более сложная реализация может использовать информацию из схемы для определения равенства. Аналогично, одна реализация может предоставить статическую структуру хранения, которая просто возвращает значения, переданные в конструктор, в то время как другая реализация может определять get() и getAll(), чтобы динамически получать значения из каталога.
Обратите внимание, что обновления Attribute (например, добавление или удаление значения) не влияют на соответствующее представление атрибута в каталоге. Обновления каталога могут быть выполнены только с помощью операций в интерфейсе DirContext.
- С:
- 1.3
- См. также:
BasicAttribute
Поля
| Модификатор и тип | Поле | Описание |
|---|---|---|
static long | serialVersionUID | Используйте serialVersionUID из JNDI 1.1.1 для межсетевого взаимодействия. |
Методы
| Модификатор и тип | Метод | Описание |
|---|---|---|
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
static final long 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находится за пределами заданного диапазона.
add
void add(int ix,
Object attrVal) Добавляет значение атрибута в упорядоченный список значений атрибута. Этот метод добавляет attrVal в список значений атрибута по индексу ix. Значения, расположенные по индексам на или выше ix, сдвигаются вниз к концу списка (и их индексы увеличиваются на единицу). Если значения атрибута неупорядочены и attrVal уже присутствует, будет выброшено исключение IllegalStateException.
- Параметры:
-
ix- Индекс в упорядоченном списке значений атрибутов для добавления нового значения.0 <= ix <= size(). -
attrVal- Возможно нулевое значение атрибута для добавления; если 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 заменяет старое значение. - Возвращает:
- Возможный нулевой атрибут-значение по индексу ix, который был заменён. Null, если значение атрибута было null.
- Изначает:
-
IndexOutOfBoundsException- Еслиixнаходится за пределами заданного диапазона. -
IllegalStateException- ЕслиattrValуже существует и значения атрибута неупорядочены.
© 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.
https://docs.oracle.com/en/java/javase/11/docs/api/java.naming/javax/naming/directory/Attribute.html