Spec-Zone.ru › OpenJDK 8

Класс BasicAttribute

  • java.lang.Object
    • javax.naming.directory.BasicAttribute
Все реализованные интерфейсы:
Serializable, Cloneable, Attribute

public class BasicAttribute
extends Object
implements Attribute

Этот класс предоставляет базовую реализацию интерфейса Attribute.

Эта реализация не поддерживает методы схемы getAttributeDefinition() и getAttributeSyntaxDefinition(). Они просто выбрасывают OperationNotSupportedException. Подклассы BasicAttribute должны переопределять эти методы, если они их поддерживают.

Класс BasicAttribute по умолчанию использует Object.equals() для определения равенства значений атрибута при проверке на равенство или при поиске значений, за исключением случая, когда значение является массивом. Для массива каждый элемент массива проверяется с помощью Object.equals(). Подклассы BasicAttribute могут использовать информацию из схемы при выполнении аналогичных проверок на равенство, переопределяя методы, в которых такое использование схемы имеет смысл. Аналогично, класс BasicAttribute по умолчанию возвращает значения, переданные в конструктор и/или измененные с помощью методов add/remove. Подклассы BasicAttribute могут переопределять get() и getAll(), чтобы динамически получать значения из каталога (или реализовать интерфейс Attribute напрямую вместо наследования от BasicAttribute).

Обратите внимание, что обновления BasicAttribute (например, добавление или удаление значения) не влияют на соответствующее представление атрибута в каталоге. Обновления каталога могут быть произведены только с помощью операций в интерфейсе DirContext.

Экземпляр класса BasicAttribute не синхронизирован против одновременного доступа из нескольких потоков. Несколько потоков, пытающихся получить доступ и изменить BasicAttribute, должны заблокировать объект.

C момента:
1.3
См. также:
Сериализованная форма

Краткое описание полей

Модификатор и тип Поле и описание
protected String attrID

Хранит идентификатор атрибута.

protected boolean ordered

Флаг для записи, упорядочены ли значения этого атрибута.

protected Vector<Object> values

Хранит значения атрибута.

Краткое описание конструкторов

Конструктор и описание
BasicAttribute(String id)

Создает новый экземпляр неупорядоченного атрибута без значений.

BasicAttribute(String id, boolean ordered)

Создает новый экземпляр, возможно, упорядоченного атрибута без значений.

BasicAttribute(String id, Object value)

Создает новый экземпляр неупорядоченного атрибута с одним значением.

BasicAttribute(String id, Object value, boolean ordered)

Создает новый экземпляр, возможно, упорядоченного атрибута с одним значением.

Краткое описание методов

Модификатор и тип Метод и описание
void add(int ix, Object attrVal)

Добавляет значение атрибута в упорядоченный список значений атрибута.

boolean add(Object attrVal)

Добавляет новое значение к этому атрибуту.

void clear()

Удаляет все значения из этого атрибута.

Object clone()

Создает и возвращает копию этого объекта.

boolean contains(Object attrVal)

Определяет, содержится ли значение в этом атрибуте.

boolean equals(Object obj)

Определяет, равен ли obj этому атрибуту.

Object get()

Возвращает одно из значений этого атрибута.

Object get(int ix)

Возвращает значение атрибута из упорядоченного списка значений атрибута.

NamingEnumeration<?> getAll()

Возвращает перечисление значений этого атрибута.

DirContext getAttributeDefinition()

Возвращает определение схемы этого атрибута.

DirContext getAttributeSyntaxDefinition()

Возвращает определение синтаксиса, связанное с этим атрибутом.

String getID()

Возвращает идентификатор этого атрибута.

int hashCode()

Вычисляет хэш-код этого атрибута.

boolean isOrdered()

Определяет, упорядочены ли значения этого атрибута.

Object remove(int ix)

Удаляет значение атрибута из упорядоченного списка значений атрибута.

boolean remove(Object attrval)

Удаляет указанное значение из этого атрибута.

Object set(int ix, Object attrVal)

Устанавливает значение атрибута в упорядоченном списке значений атрибута.

int size()

Возвращает количество значений в этом атрибуте.

String toString()

Генерирует строковое представление этого атрибута.

Методы, унаследованные от класса java.lang.Object

finalize, getClass, notify, notifyAll, wait, wait, wait

Поля

attrID

protected String attrID

Содержит идентификатор атрибута. Инициализируется публичным конструктором и не может быть null, если методы в BasicAttribute, использующие attrID, не переопределены.

values

protected transient Vector<Object> values

Содержит значения атрибута. Инициализируется публичными конструкторами. Не может быть null, если методы в BasicAttribute, использующие 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()

Описание скопировано из класса: Object

Создаёт и возвращает копию этого объекта. Точное значение "копии" может зависеть от класса объекта. Общий смысл заключается в том, что для любого объекта x, выражение:

x.clone() != x
будет истинным, и что выражение:
x.clone().getClass() == x.getClass()
будет true, но это не абсолютные требования. Хотя обычно
x.clone().equals(x)
будет true, это не абсолютное требование.

По соглашению, возвращаемый объект должен быть получен путём вызова super.clone. Если класс и все его суперклассы (кроме Object) следуют этому соглашению, то x.clone().getClass() == x.getClass().

По соглашению, объект, возвращаемый этим методом, должен быть независимым от этого объекта (который клонируется). Для достижения этой независимости может потребоваться изменить одно или несколько полей объекта, возвращаемого super.clone перед его возвращением. Обычно это означает копирование любых изменяемых объектов, составляющих внутреннюю "глубокую структуру" клонируемого объекта, и замену ссылок на эти объекты ссылками на копии. Если класс содержит только примитивные поля или ссылки на неизменяемые объекты, то обычно поля в объекте, возвращаемом super.clone, изменять не нужно.

Метод clone для класса Object выполняет определённую операцию клонирования. Во-первых, если класс этого объекта не реализует интерфейс Cloneable, то генерируется CloneNotSupportedException. Обратите внимание, что все массивы считаются реализующими интерфейс Cloneable и что тип возвращаемого значения метода clone для типа массива T[] является T[], где T — любой ссылочный или примитивный тип. В противном случае этот метод создаёт новый экземпляр класса этого объекта и инициализирует все его поля точно таким же содержимым, что и соответствующие поля этого объекта, как будто присваиванием; содержимое полей не клонируется само по себе. Таким образом, этот метод выполняет "поверхностную копию" этого объекта, а не операцию "глубокой копии".

Класс Object сам не реализует интерфейс Cloneable, поэтому вызов метода clone для объекта, класс которого Object, приведёт к генерации исключения во время выполнения.

Указано в:
clone в интерфейсе Attribute
Переопределяет:
clone в классе Object
Возвращает:
клонированный экземпляр.
См. также:
Cloneable

equals

public boolean equals(Object obj)

Определяет, равен ли obj этому атрибуту. Два атрибута равны, если их идентификаторы, синтаксисы и значения равны. Если значения атрибута неупорядочены, порядок добавления значений не имеет значения. Если значения атрибута упорядочены, порядок значений должен совпадать. Если obj равен null или не является атрибутом, возвращается false.

По умолчанию Object.equals() используется при сравнении идентификатора атрибута и его значений, за исключением случая, когда значение является массивом. Для массива каждый элемент массива проверяется с помощью Object.equals(). Подкласс может переопределить это, чтобы использовать информацию о синтаксисе схемы и правила сопоставления, которые определяют, что означает равенство двух атрибутов. Как и использует ли подкласс информацию о схеме, определяется подклассом. Если подкласс переопределяет equals(), он также должен переопределить hashCode() таким образом, чтобы два равных атрибута имели одинаковый хэш-код.

Переопределяет:
equals в классе Object
Параметры:
obj - Возможный null-объект для проверки.
Возвращает:
true, если obj равен этому атрибуту; в противном случае — false.
См. также:
hashCode(), contains(java.lang.Object)

hashCode

public int hashCode()

Вычисляет хэш-код этого атрибута.

Хэш-код вычисляется путём добавления хэш-кода идентификатора атрибута и хэш-кодов всех его значений, кроме значений, являющихся массивами. Для массива суммируется хэш-код каждого элемента массива. Если подкласс переопределяет hashCode(), он также должен переопределить equals() так, чтобы два равных атрибута имели одинаковый хэш-код.

Переопределяет:
hashCode в классе Object
Возвращает:
целое число, представляющее хэш-код этого атрибута.
См. также:
equals(java.lang.Object)

toString

public String toString()

Генерирует строковое представление этого атрибута. Строка состоит из идентификатора атрибута и его значений. Эта строка предназначена для отладки и не предназначена для программной интерпретации.

Переопределяет:
toString в классе Object
Возвращает:
непустое строковое представление этого атрибута.

getAll

public NamingEnumeration<?> getAll()
                            throws NamingException

Возвращает перечисление значений этого атрибута.

По умолчанию, возвращаемые значения — это те, которые были переданы в конструктор и/или изменены с помощью методов add/replace/remove. Подкласс может переопределить этот метод для динамического получения значений из каталога.

Указано в:
getAll в интерфейсе Attribute
Возвращает:
непустое перечисление значений атрибута. Каждый элемент перечисления — это, возможно, null, Object. Класс объекта — это класс значения атрибута. Элемент равен null, если значение атрибута равно null. Если у атрибута нет значений, возвращается пустое перечисление.
Исключения:
NamingException - Если при получении значений возникло исключение именования.
См. также:
Attribute.isOrdered()

get

public Object get()
           throws NamingException

Возвращает одно из значений этого атрибута.

По умолчанию возвращаемое значение — это одно из тех, что было передано в конструктор и/или изменено с помощью методов add/replace/remove. Подкласс может переопределить этот метод для динамического получения значения из каталога.

Указано в:
get в интерфейсе Attribute
Возвращает:
возможно null объект, представляющий одно из значений атрибута. Он равен null, если значение атрибута равно null.
Исключения:
NamingException - Если при получении значения возникло исключение именования.

size

public int size()

Описание скопировано из интерфейса: Attribute

Возвращает количество значений в этом атрибуте.

Указано в:
size в интерфейсе Attribute
Возвращает:
неотрицательное количество значений в этом атрибуте.

getID

public String getID()

Описание скопировано из интерфейса: Attribute

Возвращает идентификатор этого атрибута.

Указано в:
getID в интерфейсе Attribute
Возвращает:
Идентификатор этого атрибута. Не может быть null.

contains

public boolean contains(Object attrVal)

Определяет, содержится ли значение в этом атрибуте.

По умолчанию Object.equals() используется при сравнении attrVal со значениями этого атрибута, за исключением случаев, когда attrVal является массивом. Для массива каждый элемент массива проверяется с помощью Object.equals(). Подкласс может использовать информацию схемы для определения равенства.

Указано в:
contains в интерфейсе Attribute
Параметры:
attrVal - Возможное null-значение для проверки. Если null, проверяется, есть ли в атрибуте значение, равное null.
Возвращает:
true, если attrVal — одно из значений этого атрибута; в противном случае — false.
См. также:
Object.equals(java.lang.Object), equals(java.lang.Object)

add

public boolean add(Object attrVal)

Добавляет новое значение к этому атрибуту.

По умолчанию, Object.equals() используется для сравнения attrVal со значениями этого атрибута, за исключением случаев, когда attrVal является массивом. Для массива каждый элемент массива проверяется с помощью Object.equals(). Подкласс может использовать информацию схемы для определения равенства.

Определено в:
add в интерфейсе Attribute
Параметры:
attrVal - Новое, возможно, null значение для добавления. Если null, null добавляется как значение атрибута.
Возвращает:
true, если значение было добавлено; иначе false.

remove

public boolean remove(Object attrval)

Удаляет указанное значение из этого атрибута.

По умолчанию, Object.equals() используется для сравнения attrVal со значениями этого атрибута, за исключением случаев, когда attrVal является массивом. Для массива каждый элемент массива проверяется с помощью Object.equals(). Подкласс может использовать информацию схемы для определения равенства.

Определено в:
remove в интерфейсе Attribute
Параметры:
attrval - Возможно, null значение для удаления из этого атрибута. Если null, удаляется значение атрибута, равное null.
Возвращает:
true, если значение было удалено; иначе false.

clear

public void clear()

Описание скопировано из интерфейса: Attribute

Удаляет все значения из этого атрибута.

Определено в:
clear в интерфейсе Attribute

isOrdered

public boolean isOrdered()

Описание скопировано из интерфейса: Attribute

Определяет, упорядочены ли значения этого атрибута. Если значения атрибута упорядочены, допускаются дубликаты значений. Если значения атрибута неупорядочены, они представлены в любом порядке, и дубликаты значений отсутствуют.

Определено в:
isOrdered в интерфейсе Attribute
Возвращает:
true, если значения этого атрибута упорядочены; иначе false.
См. также:
Attribute.get(int), Attribute.remove(int), Attribute.add(int, java.lang.Object), Attribute.set(int, java.lang.Object)

get

public Object get(int ix)
           throws NamingException

Описание скопировано из интерфейса: Attribute

Возвращает значение атрибута из упорядоченного списка значений атрибута. Этот метод возвращает значение по ix индексу списка значений атрибута. Если значения атрибута неупорядочены, этот метод возвращает значение, которое случайно находится на этом индексе.

Определено в:
get в интерфейсе Attribute
Параметры:
ix - Индекс значения в упорядоченном списке значений атрибута. 0 <= ix < size().
Возвращает:
Возможно, null значение атрибута по индексу ix; null, если значение атрибута равно null.
Исключения:
NamingException - Если при получении значения возникло исключение имени.

remove

public Object remove(int ix)

Описание скопировано из интерфейса: Attribute

Удаляет значение атрибута из упорядоченного списка значений атрибута. Этот метод удаляет значение по ix индексу списка значений атрибута. Если значения атрибута неупорядочены, этот метод удаляет значение, которое случайно находится на этом индексе. Значения, расположенные по индексам, большим, чем ix, сдвигаются вверх к началу списка (и их индексы уменьшаются на единицу).

Определено в:
remove в интерфейсе Attribute
Параметры:
ix - Индекс удаляемого значения. 0 <= ix < size().
Возвращает:
Возможно, null значение атрибута по индексу ix , которое было удалено; null, если значение атрибута равно null.

add

public void add(int ix,
                Object attrVal)

Описание скопировано из интерфейса: Attribute

Добавляет значение атрибута в упорядоченный список значений атрибута. Этот метод добавляет attrVal в список значений атрибута по индексу ix. Значения, расположенные по индексам, равным или большим, чем ix, сдвигаются вниз к концу списка (и их индексы увеличиваются на единицу). Если значения атрибута неупорядочены и уже имеют attrVal, выбрасывается IllegalStateException.

Определено в:
add в интерфейсе Attribute
Параметры:
ix - Индекс в упорядоченном списке значений атрибута для добавления нового значения. 0 <= ix <= size().
attrVal - Возможно, null значение атрибута для добавления; если null, добавляется null.

set

public Object set(int ix,
                  Object attrVal)

Описание скопировано из интерфейса: Attribute

Устанавливает значение атрибута в упорядоченном списке значений атрибута. Этот метод устанавливает значение по ix индексу списка значений атрибута в 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, 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.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API