Класс LinkRef
- Все реализуемые интерфейсы:
Serializable, Cloneable
public class LinkRef extends Reference
Имя является URL, именем, которое нужно разрешить относительно начального контекста, либо, если первый символ имени — «.», именем относительно контекста, в котором связана ссылка.
Обычное разрешение имен в операциях с контекстом всегда следует по ссылкам. Разрешение самого имени ссылки может проходить через другие ссылки. Это создает возможность появления цикла ссылок, разрешение которого не сможет завершиться обычным образом. Чтобы избежать такого незавершающегося разрешения, поставщики служб могут установить ограничения на количество ссылок, которые могут участвовать в одной операции, вызванной вызывающей стороной.
LinkRef содержит единственный StringRefAddr с типом "LinkAddress" и содержимым, представляющим имя ссылки. Поле имени класса в Reference содержит имя этого класса (LinkRef).
LinkRef связывается с именем с помощью обычных методов Context.bind()/rebind() и DirContext.bind()/rebind(). Метод Context.lookupLink() используется для получения самой ссылки, если конечное атомарное имя связано со ссылкой.
Многие системы именования поддерживают собственное понятие ссылки, которое может использоваться в самой системе именования. JNDI не определяет, существует ли какая-либо связь между такими встроенными ссылками и ссылками JNDI.
Экземпляр LinkRef не защищен от одновременного доступа нескольких потоков. Потоки, которым необходимо одновременно обращаться к экземпляру LinkRef, должны синхронизироваться между собой и обеспечивать необходимую блокировку.
- Начиная с:
- 1.3
- См. также:
Краткое описание полей
Поля, объявленные в классе Reference
addrs, classFactory, classFactoryLocation, className | Модификатор и тип | Поле | Описание |
|---|---|---|
protected Vector |
addrs |
Содержит адреса, содержащиеся в этой ссылке. |
protected String |
classFactory |
Содержит имя класса фабрики для создания экземпляра объекта, на который ссылается эта ссылка. |
protected String |
classFactoryLocation |
Содержит расположение класса фабрики. |
protected String |
className |
Содержит полное имя класса объекта, на который ссылается эта ссылка. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
LinkRef |
Создает LinkRef для строкового имени. |
LinkRef |
Создает LinkRef для имени. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
String |
getLinkName() |
Возвращает имя этой ссылки. |
Методы, объявленные в классе Reference
add, add, clear, clone, equals, get, get, getAll, getClassName, getFactoryClassLocation, getFactoryClassName, hashCode, remove, size, toString | Модификатор и тип | Метод | Описание |
|---|---|---|
void |
add |
Добавляет адрес в список адресов по индексу posn. |
void |
add |
Добавляет адрес в конец списка адресов. |
void |
clear() |
Удаляет все адреса из этой ссылки. |
Object |
clone() |
Создает копию этой ссылки, используя ее имя класса, список адресов, имя фабрики классов и расположение фабрики классов. |
boolean |
equals |
Определяет, является ли obj ссылкой с теми же адресами (в том же порядке), что и эта ссылка. |
RefAddr |
get |
Возвращает адрес по индексу posn. |
RefAddr |
get |
Возвращает первый адрес с типом адреса 'addrType'. |
Enumeration |
getAll() |
Возвращает перечисление адресов этой ссылки. |
String |
getClassName() |
Возвращает имя класса объекта, на который ссылается эта ссылка. |
String |
getFactoryClassLocation() |
Возвращает расположение фабрики объекта, на который ссылается эта ссылка. |
String |
getFactoryClassName() |
Возвращает имя класса фабрики объекта, на который ссылается эта ссылка. |
int |
hashCode() |
Вычисляет хеш-код этой ссылки. |
Object |
remove |
Удаляет адрес по индексу posn из списка адресов. |
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() |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения заданного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения заданного промежутка реального времени. |
Подробное описание конструкторов
LinkRef
public LinkRef(Name linkName)
- Параметры:
-
linkName— имя, не равное null, для которого создается эта ссылка.
LinkRef
public LinkRef(String linkName)
- Параметры:
-
linkName— имя, не равное null, для которого создается эта ссылка.
Подробное описание методов
getLinkName
public String getLinkName() throws NamingException
- Возвращает:
- Имя этой ссылки, не равное null.
- Вызывает исключения:
-
MalformedLinkException— если не удалось извлечь имя ссылки -
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.