Spec-Zone.ru › OpenJDK 27

Класс LinkRef

java.lang.Object
javax.naming.Reference
javax.naming.LinkRef
Все реализуемые интерфейсы:
Serializable, Cloneable
public class LinkRef extends Reference
Этот класс представляет Reference, содержимое которого — имя, называемое именем ссылки и связанное с атомарным именем в контексте.

Имя является URL, именем, которое нужно разрешить относительно начального контекста, либо, если первый символ имени — «.», именем относительно контекста, в котором связана ссылка.

Обычное разрешение имен в операциях с контекстом всегда следует по ссылкам. Разрешение самого имени ссылки может проходить через другие ссылки. Это создает возможность появления цикла ссылок, разрешение которого не сможет завершиться обычным образом. Чтобы избежать такого незавершающегося разрешения, поставщики служб могут установить ограничения на количество ссылок, которые могут участвовать в одной операции, вызванной вызывающей стороной.

LinkRef содержит единственный StringRefAddr с типом "LinkAddress" и содержимым, представляющим имя ссылки. Поле имени класса в Reference содержит имя этого класса (LinkRef).

LinkRef связывается с именем с помощью обычных методов Context.bind()/rebind() и DirContext.bind()/rebind(). Метод Context.lookupLink() используется для получения самой ссылки, если конечное атомарное имя связано со ссылкой.

Многие системы именования поддерживают собственное понятие ссылки, которое может использоваться в самой системе именования. JNDI не определяет, существует ли какая-либо связь между такими встроенными ссылками и ссылками JNDI.

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

Начиная с:
1.3
См. также:
  • LinkException
  • LinkLoopException
  • MalformedLinkException
  • Context.lookupLink(Name)
  • Сериализованная форма

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

Поля, объявленные в классе Reference

addrs, classFactory, classFactoryLocation, className
Модификатор и тип Поле Описание
protected Vector<RefAddr> addrs
Содержит адреса, содержащиеся в этой ссылке.
protected String classFactory
Содержит имя класса фабрики для создания экземпляра объекта, на который ссылается эта ссылка.
protected String classFactoryLocation
Содержит расположение класса фабрики.
protected String className
Содержит полное имя класса объекта, на который ссылается эта ссылка.

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

Конструктор Описание
LinkRef(String linkName)
Создает LinkRef для строкового имени.
LinkRef(Name linkName)
Создает LinkRef для имени.

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

Модификатор и тип Метод Описание
String getLinkName()
Возвращает имя этой ссылки.

Методы, объявленные в классе Reference

add, add, clear, clone, equals, get, get, getAll, getClassName, getFactoryClassLocation, getFactoryClassName, hashCode, remove, size, toString
Модификатор и тип Метод Описание
void add(int posn, RefAddr addr)
Добавляет адрес в список адресов по индексу posn.
void add(RefAddr addr)
Добавляет адрес в конец списка адресов.
void clear()
Удаляет все адреса из этой ссылки.
Object clone()
Создает копию этой ссылки, используя ее имя класса, список адресов, имя фабрики классов и расположение фабрики классов.
boolean equals(Object obj)
Определяет, является ли obj ссылкой с теми же адресами (в том же порядке), что и эта ссылка.
RefAddr get(int posn)
Возвращает адрес по индексу posn.
RefAddr get(String addrType)
Возвращает первый адрес с типом адреса 'addrType'.
Enumeration<RefAddr> getAll()
Возвращает перечисление адресов этой ссылки.
String getClassName()
Возвращает имя класса объекта, на который ссылается эта ссылка.
String getFactoryClassLocation()
Возвращает расположение фабрики объекта, на который ссылается эта ссылка.
String getFactoryClassName()
Возвращает имя класса фабрики объекта, на который ссылается эта ссылка.
int hashCode()
Вычисляет хеш-код этой ссылки.
Object remove(int posn)
Удаляет адрес по индексу 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(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо истечения заданного промежутка реального времени.

Подробное описание конструкторов

LinkRef

public LinkRef(Name linkName)
Создает LinkRef для имени.
Параметры:
linkName — имя, не равное null, для которого создается эта ссылка.

LinkRef

public LinkRef(String linkName)
Создает LinkRef для строкового имени.
Параметры:
linkName — имя, не равное null, для которого создается эта ссылка.

Подробное описание методов

getLinkName

public String getLinkName() throws NamingException
Возвращает имя этой ссылки.
Возвращает:
Имя этой ссылки, не равное null.
Вызывает исключения:
MalformedLinkException — если не удалось извлечь имя ссылки
NamingException — если возникло исключение именования.

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторское право © 1993, 2026, Oracle и/или ее аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

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