Класс BasicAttribute
- Все реализованные интерфейсы:
-
Serializable,Cloneable,Attribute
public class BasicAttribute extends Object implements Attribute
Attribute. Данная реализация не поддерживает методы схемы getAttributeDefinition() и getAttributeSyntaxDefinition(). Они просто выбрасывают исключение OperationNotSupportedException. Подклассы класса BasicAttribute должны переопределять эти методы, если они их поддерживают.
Класс BasicAttribute по умолчанию использует Object.equals() для определения равенства значений атрибутов при проверке на равенство или при поиске значений, *за исключением* случаев, когда значение является массивом. Для массива каждый элемент массива проверяется с помощью Object.equals(). Подклассы класса BasicAttribute могут использовать информацию схемы при выполнении аналогичных проверок на равенство, переопределяя методы, в которых такое использование схемы имеет смысл. Аналогично, класс BasicAttribute по умолчанию возвращает значения, переданные в конструктор и/или изменённые с помощью методов добавления/удаления. Подклассы класса BasicAttribute могут переопределить методы get() и getAll(), чтобы динамически получать значения из каталога (или реализовать интерфейс Attribute напрямую вместо наследования от класса BasicAttribute).
Обратите внимание, что обновления BasicAttribute (например, добавление или удаление значения) не влияют на соответствующее представление атрибута в каталоге. Обновления каталога могут быть выполнены только с помощью операций интерфейса DirContext.
Экземпляр класса BasicAttribute не синхронизирован против одновременного доступа нескольких потоков. Несколько потоков, пытающихся получить доступ к объекту BasicAttribute и изменить его, должны заблокировать объект.
- С тех пор:
- 1.3
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected String |
attrID |
Содержит идентификатор атрибута. |
protected boolean |
ordered |
Флаг для записи о том, упорядочены ли значения этого атрибута. |
protected Vector |
values |
Содержит значения атрибута. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
BasicAttribute |
Создаёт новый экземпляр неупорядоченного атрибута без значения. |
BasicAttribute |
Создаёт новый экземпляр, возможно, упорядоченного атрибута без значения. |
BasicAttribute |
Создаёт новый экземпляр неупорядоченного атрибута с единственным значением. |
BasicAttribute |
Создаёт новый экземпляр, возможно, упорядоченного атрибута с единственным значением. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
add |
Добавляет значение атрибута в упорядоченный список значений атрибута. |
boolean |
add |
Добавляет новое значение к этому атрибуту. |
void |
clear() |
Удаляет все значения из этого атрибута. |
Object |
clone() |
Создаёт копию атрибута. |
boolean |
contains |
Определяет, присутствует ли значение в этом атрибуте. |
boolean |
equals |
Определяет, равен ли объект obj этому атрибуту. |
Object |
get() |
Возвращает одно из значений этого атрибута. |
Object |
get |
Возвращает значение атрибута из упорядоченного списка значений атрибута. |
NamingEnumeration |
getAll() |
Возвращает перечисление значений этого атрибута. |
DirContext |
getAttributeDefinition() |
Возвращает определение схемы этого атрибута. |
DirContext |
getAttributeSyntaxDefinition() |
Возвращает определение синтаксиса, связанное с этим атрибутом. |
String |
getID() |
Возвращает идентификатор этого атрибута. |
int |
hashCode() |
Вычисляет хэш-код этого атрибута. |
boolean |
isOrdered() |
Определяет, упорядочены ли значения этого атрибута. |
Object |
remove |
Удаляет значение атрибута из упорядоченного списка значений атрибута. |
boolean |
remove |
Удаляет указанное значение из этого атрибута. |
Object |
set |
Устанавливает значение атрибута в упорядоченном списке значений атрибута. |
int |
size() |
Возвращает количество значений в этом атрибуте. |
String |
toString() |
Генерирует строковое представление этого атрибута. |
Подробное описание полей
attrID
protected String attrID
values
protected transient Vector<Object> values
ordered
protected boolean ordered
Подробное описание конструкторов
BasicAttribute
public BasicAttribute(String id)
- Параметры:
-
id- Идентификатор атрибута. Не может быть null.
BasicAttribute
public BasicAttribute(String id, Object value)
- Параметры:
-
id- Идентификатор атрибута. Не может быть null. -
value- Значение атрибута. Если null, то null добавляется в атрибут.
BasicAttribute
public BasicAttribute(String id, boolean ordered)
- Параметры:
-
id- Идентификатор атрибута. Не может быть null. -
ordered- true означает, что значения атрибута будут упорядочены; в противном случае - false.
BasicAttribute
public BasicAttribute(String id, Object value, boolean ordered)
- Параметры:
-
id- Идентификатор атрибута. Не может быть null. -
value- Значение атрибута. Если null, то null добавляется в атрибут. -
ordered- true означает, что значения атрибута будут упорядочены; в противном случае - false.
Подробное описание методов
clone
public Object clone()
Attributeequals
public boolean equals(Object obj)
По умолчанию Object.equals() используется при сравнении идентификатора атрибута и его значений, за исключением случая, когда значение является массивом. Для массива проверяется каждый элемент массива с использованием Object.equals(). Подкласс может переопределить этот метод, чтобы использовать информацию о синтаксисе схемы и правила сопоставления, которые определяют, что означает равенство двух атрибутов. Способ и то, использует ли подкласс информацию о схеме, определяется подклассом. Если подкласс переопределяет equals(), он также должен переопределить hashCode() таким образом, чтобы два равных атрибута имели одинаковый хэш-код.
hashCode
public int hashCode()
Хэш-код вычисляется путем добавления хэш-кода идентификатора атрибута и хэш-кодов всех его значений, за исключением значений, являющихся массивами. Для массива суммируется хэш-код каждого элемента массива. Если подкласс переопределяет hashCode(), он также должен переопределить equals(), чтобы два равных атрибута имели одинаковый хэш-код.
toString
public String toString()
getAll
public NamingEnumeration<?> getAll() throws NamingException
По умолчанию возвращаемые значения — те, которые были переданы в конструктор и/или изменены с помощью методов добавления/замены/удаления. Подкласс может переопределить этот метод для динамического получения значений из каталога.
- Определено в:
-
getAllв интерфейсеAttribute - Возвращает:
- Непустое перечисление значений атрибута. Каждый элемент перечисления — это возможно null объект. Тип объекта — тип значения атрибута. Элемент равен null, если значение атрибута null. Если атрибут имеет ноль значений, возвращается пустое перечисление.
- Исключения:
-
NamingException- Если при получении значений возникло исключение по имени. - См. также:
get
public Object get() throws NamingException
По умолчанию возвращаемое значение — одно из тех, которые были переданы в конструктор и/или изменены с помощью методов добавления/замены/удаления. Подкласс может переопределить этот метод, чтобы динамически извлекать значение из каталога.
- Определено в:
-
getв интерфейсеAttribute - Возвращает:
- Возможно null объект, представляющий одно из значений атрибута. Равно null, если значение атрибута null.
- Исключения:
-
NamingException- Если при извлечении значения возникло исключение по имени.
size
getID
contains
public boolean contains(Object attrVal)
По умолчанию Object.equals() используется при сравнении attrVal со значениями этого атрибута, за исключением случаев, когда attrVal является массивом. Для массива проверяется каждый элемент массива с использованием Object.equals(). Подкласс может использовать информацию схемы для определения равенства.
добавить
public boolean add(Object attrVal)
По умолчанию, Object.equals() используется при сравнении attrVal со значениями этого атрибута, за исключением случаев, когда attrVal является массивом. Для массива каждый элемент массива проверяется с помощью Object.equals(). Подкласс может использовать информацию схемы для определения равенства.
удалить
public boolean remove(Object attrval)
По умолчанию, Object.equals() используется при сравнении attrVal со значениями этого атрибута, за исключением случаев, когда attrVal является массивом. Для массива каждый элемент массива проверяется с помощью Object.equals(). Подкласс может использовать информацию схемы для определения равенства.
очистить
упорядочен
public boolean isOrdered()
Attributeполучить
public Object get(int ix) throws NamingException
Attributeix индексу списка значений атрибутов. Если значения атрибута неупорядочены, этот метод возвращает значение, которое случайно находится на этом индексе.- Указано в:
-
getв интерфейсеAttribute - Параметры:
-
ix- Индекс значения в упорядоченном списке значений атрибутов.0 <= ix < size(). - Возвращает:
- Возможно, null значение атрибута по индексу
ix; null, если значение атрибута равно null. - Исключения:
-
NamingException- Если при извлечении значения произошла ошибка именования.
удалить
public Object remove(int ix)
Attributeix индексу списка значений атрибутов. Если значения атрибута неупорядочены, этот метод удаляет значение, которое случайно находится на этом индексе. Значения, расположенные по индексам, большим чем ix, смещаются вверх к началу списка (и их индексы уменьшаются на единицу).добавить
public void add(int ix, Object attrVal)
AttributeattrVal в список значений атрибутов по индексу ix. Значения, расположенные по индексам, равным или большим чем ix, смещаются вниз к концу списка (и их индексы увеличиваются на единицу). Если значения атрибута неупорядочены и уже содержат attrVal, то генерируется IllegalStateException.установить
public Object set(int ix, Object attrVal)
Attributeix индексу списка значений атрибутов в attrVal. Старое значение удаляется. Если значения атрибута неупорядочены, этот метод устанавливает значение, которое случайно находится на этом индексе, в attrVal, если attrVal уже не является одним из значений. В этом случае генерируется IllegalStateException.- Указано в:
-
setв интерфейсеAttribute - Параметры:
-
ix- Индекс значения в упорядоченном списке значений атрибутов.0 <= ix < size(). -
attrVal- Возможно, null значение атрибута для использования. Если null, 'null' заменяет старое значение. - Возвращает:
- Возможно, null значение атрибута по индексу ix, которое было заменено. Null, если значение атрибута было null.
определениеСинтаксисаАтрибута
public DirContext getAttributeSyntaxDefinition() throws NamingException
Этот метод по умолчанию выбрасывает OperationNotSupportedException. Подкласс должен переопределить этот метод, если он поддерживает схемы.
- Указано в:
-
getAttributeSyntaxDefinitionв интерфейсеAttribute - Возвращает:
- Определение синтаксиса атрибута. Null, если реализация поддерживает схемы, но у данного атрибута нет информации о схеме.
- Исключения:
-
OperationNotSupportedException- Если получение схемы не поддерживается. -
NamingException- Если при получении схемы произошла ошибка именования.
определениеАтрибута
public DirContext getAttributeDefinition() throws NamingException
Этот метод по умолчанию выбрасывает OperationNotSupportedException. Подкласс должен переопределить этот метод, если он поддерживает схемы.
- Указано в:
-
getAttributeDefinitionв интерфейсеAttribute - Возвращает:
- Определение схемы этого атрибута. Null, если реализация поддерживает схемы, но у данного атрибута нет информации о схеме.
- Исключения:
-
OperationNotSupportedException- Если получение схемы не поддерживается. -
NamingException- Если при получении схемы произошла ошибка именования.
© 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/BasicAttribute.html