Spec-Zone.ru › OpenJDK 21

Класс DirectoryManager

java.lang.Object
javax.naming.spi.NamingManager
javax.naming.spi.DirectoryManager
public class DirectoryManager extends NamingManager
Этот класс содержит методы для поддержки DirContext реализаций.

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

DirectoryManager безопасен для одновременного доступа нескольких потоков.

За исключением случаев, оговоренных отдельно, параметр Name, Attributes, или окружения, передаваемый любому методу, принадлежит вызывающей стороне. Реализация не будет изменять объект или хранить ссылку на него, хотя она может хранить ссылку на клон или копию.

Since:
1.3
See Also:
  • DirObjectFactory
  • DirStateFactory

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

Поля, объявленные в классе javax.naming.spi.NamingManager

CPE

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

Модификатор и тип Метод Описание
static DirContext getContinuationDirContext(CannotProceedException cpe)
Создаёт контекст для продолжения DirContext операции.
static Object getObjectInstance(Object refInfo, Name name, Context nameCtx, Hashtable<?,?> environment, Attributes attrs)
Создаёт экземпляр объекта для указанного объекта, атрибутов и среды.
static DirStateFactory.Result getStateToBind(Object obj, Name name, Context nameCtx, Hashtable<?,?> environment, Attributes attrs)
Получает состояние объекта для привязки, если задан исходный объект и его атрибуты.

Методы, объявленные в классе javax.naming.spi.NamingManager

getContinuationContext, getInitialContext, getObjectInstance, getStateToBind, getURLContext, hasInitialContextFactoryBuilder, setInitialContextFactoryBuilder, setObjectFactoryBuilder

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

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

getContinuationDirContext

public static DirContext getContinuationDirContext(CannotProceedException cpe) throws NamingException
Создаёт контекст для продолжения DirContext операции. Работает так же, как NamingManager.getContinuationContext(), только контекст продолжения, возвращаемый, является DirContext.
Parameters:
cpe - Исключение, не равное null, которое вызвало это продолжение.
Returns:
Объект DirContext для продолжения операции. Не равен null.
Throws:
NamingException - Если произошла ошибка именования.
See Also:
  • NamingManager.getContinuationContext(CannotProceedException)

getObjectInstance

public static Object getObjectInstance(Object refInfo, Name name, Context nameCtx, Hashtable<?,?> environment, Attributes attrs) throws Exception
Создаёт экземпляр объекта для указанного объекта, атрибутов и среды.

Этот метод такой же, как NamingManager.getObjectInstance , за исключением следующих различий:

  • Он принимает параметр Attributes , содержащий атрибуты, связанные с объектом. DirObjectFactory может использовать эти атрибуты, чтобы не искать их в каталоге.
  • Фабрики объектов, которые нужно попробовать, должны реализовывать либо ObjectFactory , либо DirObjectFactory. Если она реализует DirObjectFactory, то используется DirObjectFactory.getObjectInstance(), в противном случае используется ObjectFactory.getObjectInstance().
Поставщики услуг, которые реализуют интерфейс DirContext , должны использовать этот метод, а не NamingManager.getObjectInstance() .
Parameters:
refInfo - Возможно, null, объект, для которого нужно создать объект.
name - Имя этого объекта относительно nameCtx. Указание имени необязательно; если оно опущено, name должен быть null.
nameCtx - Контекст, относительно которого указан параметр name . Если null, name относится к контексту по умолчанию.
environment - Возможно, null, среда, которая будет использоваться при создании фабрики объектов и объекта.
attrs - Возможно, null, атрибуты, связанные с refInfo. Это может быть не полный набор атрибутов для refInfo; вы можете прочитать больше атрибутов из каталога.
Returns:
Созданный объект, используя refInfo и attrs; или refInfo , если объект не может быть создан фабрикой.
Throws:
NamingException - Если при попытке получить контекст URL возникла ошибка именования, или если один из обращенных к фабрикам выбрасывает NamingException.
Exception - Если одна из обращенных к фабрикам выбрасывает исключение, или если произошла ошибка при загрузке и создании классов фабрики и объекта. Фабрика должна выбрасывать исключение только в том случае, если она не хочет, чтобы другие фабрики использовались в попытке создать объект. См. DirObjectFactory.getObjectInstance() .
Since:
1.3
See Also:
  • NamingManager.getURLContext(java.lang.String, java.util.Hashtable<?, ?>)
  • DirObjectFactory
  • DirObjectFactory.getObjectInstance(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable<?, ?>, javax.naming.directory.Attributes)

getStateToBind

public static DirStateFactory.Result getStateToBind(Object obj, Name name, Context nameCtx, Hashtable<?,?> environment, Attributes attrs) throws NamingException
Получает состояние объекта для привязки, если задан исходный объект и его атрибуты.

Этот метод подобен NamingManager.getStateToBind , за исключением следующих различий:

  • Он принимает параметр Attributes , содержащий атрибуты, которые были переданы методу DirContext.bind() .
  • Он возвращает экземпляр DirStateFactory.Result , содержащий объект для привязки и атрибуты для сопровождения привязки. Объект или атрибуты могут быть null.
  • Фабрики состояний, которые нужно попробовать, должны каждая реализовывать либо StateFactory , либо DirStateFactory. Если она реализует DirStateFactory, то вызывается DirStateFactory.getStateToBind(); в противном случае вызывается StateFactory.getStateToBind() .
Поставщики услуг, которые реализуют интерфейс DirContext , должны использовать этот метод, а не NamingManager.getStateToBind() .

См. NamingManager.getStateToBind() для описания того, как определяется список фабрик состояний, которые нужно попробовать.

Объект, возвращаемый этим методом, принадлежит вызывающей стороне. Реализация не будет его изменять. Он будет содержать либо новый объект Attributes , который также принадлежит вызывающей стороне, или ссылку на исходный параметр attrs .

Parameters:
obj - Объект, для которого нужно получить состояние для привязки.
name - Имя этого объекта относительно nameCtx, или null, если имя не задано.
nameCtx - Контекст, относительно которого указан параметр name , или null, если name относится к контексту по умолчанию.
environment - Возможно, null, среда, которая будет использоваться при создании фабрики состояний и состояния объекта.
attrs - Возможно, null, атрибуты, которые нужно связать с объектом.
Returns:
Объект DirStateFactory.Result, содержащий объект и атрибуты для привязки. Если ни одна фабрика состояний не возвращает ненулевое значение, результат будет содержать сам объект ( obj) с исходными атрибутами.
Throws:
NamingException - Если при использовании фабрик возникла ошибка именования. Фабрика должна выбрасывать исключение только в том случае, если она не хочет, чтобы другие фабрики использовались в попытке создать объект. См. DirStateFactory.getStateToBind() .
Since:
1.3
See Also:
  • DirStateFactory
  • DirStateFactory.getStateToBind(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable<?, ?>, javax.naming.directory.Attributes)
  • NamingManager.getStateToBind(java.lang.Object, javax.naming.Name, javax.naming.Context, java.util.Hashtable<?, ?>)

© 1993, 2023, 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://docs.oracle.com/en/java/javase/21/docs/api/java.naming/javax/naming/spi/DirectoryManager.html

Spec-Zone.ru

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