Класс 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() |
Создаёт строковое представление этого атрибута. |
Методы, объявленные в классе Object
finalize, getClass, notify, notifyAll, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии. Финализация устарела и будет удалена в одном из следующих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно вследствие уведомления или прерывания. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно вследствие уведомления или прерывания, либо до истечения определённого промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно вследствие уведомления или прерывания, либо до истечения определённого промежутка реального времени. |
Подробное описание полей
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 - Возвращает:
- Ненулевое перечисление значений атрибута. Каждый элемент перечисления — объект Object, который может быть равен 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(). Подкласс может использовать информацию о схеме для определения равенства.
- Определено в:
-
containsв интерфейсеAttribute - Параметры:
-
attrVal— возможно, равное null значение для проверки. Если оно равно null, проверяется, есть ли у атрибута значение атрибута, равное null. - Возвращает:
- true, если attrVal является одним из значений этого атрибута; в противном случае — false.
- См. также:
add
public boolean add(Object attrVal)
По умолчанию при сравнении Object.equals() со значениями этого атрибута используется attrVal, кроме случаев, когда attrVal является массивом. Для массива каждый его элемент проверяется с помощью Object.equals(). Подкласс может использовать информацию о схеме для определения равенства.
remove
public boolean remove(Object attrval)
По умолчанию при сравнении Object.equals() со значениями этого атрибута используется attrVal, кроме случаев, когда attrVal является массивом. Для массива каждый его элемент проверяется с помощью Object.equals(). Подкласс может использовать информацию о схеме для определения равенства.
clear
isOrdered
public boolean isOrdered()
Attributeget
public Object get(int ix) throws NamingException
Attributeix в списке значений атрибута. Если значения атрибута не упорядочены, метод возвращает значение, которое оказалось на этом индексе.- Определено в:
-
getв интерфейсеAttribute - Параметры:
-
ix— индекс значения в упорядоченном списке значений атрибута.0 <= ix < size(). - Возвращает:
- Возможно, равное null значение атрибута с индексом
ix; null, если значение атрибута равно null. - Выбрасывает:
-
NamingException— если при получении значения возникло исключение именования.
remove
public Object remove(int ix)
Attributeix в списке значений атрибута. Если значения атрибута не упорядочены, метод удаляет значение, которое оказалось на этом индексе. Значения с индексами больше ix сдвигаются к началу списка (а их индексы уменьшаются на единицу).add
public void add(int ix, Object attrVal)
AttributeattrVal в список значений атрибута по индексу ix. Значения с индексами, равными ix или больше него, сдвигаются к концу списка (а их индексы увеличиваются на единицу). Если значения атрибута не упорядочены и уже содержат attrVal, выбрасывается IllegalStateException.set
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.
getAttributeSyntaxDefinition
public DirContext getAttributeSyntaxDefinition() throws NamingException
По умолчанию этот метод выбрасывает OperationNotSupportedException. Подклассу следует переопределить этот метод, если он поддерживает схемы.
- Определено в:
-
getAttributeSyntaxDefinitionв интерфейсеAttribute - Возвращает:
- Определение синтаксиса атрибута. Null, если реализация поддерживает схемы, но для данного атрибута нет информации о схеме.
- Выбрасывает:
-
OperationNotSupportedException— если получение схемы не поддерживается. -
NamingException— если при получении схемы возникло исключение именования.
getAttributeDefinition
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.