Spec-Zone.ru › OpenJDK 25

Класс InitialLdapContext

java.lang.Object
javax.naming.InitialContext
javax.naming.directory.InitialDirContext
javax.naming.ldap.InitialLdapContext
Все реализуемые интерфейсы:
Context, DirContext, LdapContext
public class InitialLdapContext extends InitialDirContext implements LdapContext
Этот класс представляет собой начальный контекст для выполнения расширенных операций и использования элементов управления в стиле LDAPv3.

Подробнее о синхронизации и правилах создания начального контекста см. в javax.naming.InitialContext и javax.naming.InitialDirContext.

Элементы управления запросами

При создании начального контекста (InitialLdapContext) можно указать список элементов управления запросами. Эти элементы управления будут использоваться в качестве элементов управления запросами для любой неявной операции привязки LDAP, выполняемой контекстом или производными от него контекстами. Они называются элементами управления запросами подключения. Чтобы получить элементы управления запросами подключения контекста, используйте getConnectControls().

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

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

 InitialLdapContext lctx = new InitialLdapContext(env, critConnCtls);
 lctx.setRequestControls(critModCtls);
 lctx.modifyAttributes(name, mods);
 Controls[] respCtls =  lctx.getResponseControls();
Сначала указываются критические элементы управления для создания начального контекста (critConnCtls), а затем задаются элементы управления запросами контекста (critModCtls) для операции с контекстом. Если по какой-либо причине lctx потребуется повторно подключиться к серверу, будут использованы critConnCtls. Дополнительные сведения об элементах управления запросами см. в интерфейсе LdapContext.

Разработчикам поставщиков служб следует прочитать раздел «Поставщик служб» в описании класса LdapContext, где приведены сведения о реализации.

С версии:
1.3
См. также:
  • LdapContext
  • InitialContext
  • InitialDirContext
  • NamingManager.setInitialContextFactoryBuilder(InitialContextFactoryBuilder)

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

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

defaultInitCtx, gotDefault, myProps

Поля, объявленные в интерфейсе Context

AUTHORITATIVE, BATCHSIZE, DNS_URL, INITIAL_CONTEXT_FACTORY, LANGUAGE, OBJECT_FACTORIES, PROVIDER_URL, REFERRAL, SECURITY_AUTHENTICATION, SECURITY_CREDENTIALS, SECURITY_PRINCIPAL, SECURITY_PROTOCOL, STATE_FACTORIES, URL_PKG_PREFIXES

Поля, объявленные в интерфейсе DirContext

ADD_ATTRIBUTE, REMOVE_ATTRIBUTE, REPLACE_ATTRIBUTE

Поля, объявленные в интерфейсе LdapContext

CONTROL_FACTORIES

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

Конструктор Описание
InitialLdapContext()
Создает начальный контекст без свойств окружения и элементов управления запросами подключения.
InitialLdapContext(Hashtable<?,?> environment, Control[] connCtls)
Создает начальный контекст со свойствами окружения и элементами управления запросами подключения.

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

Модификатор и тип Метод Описание
ExtendedResponse extendedOperation(ExtendedRequest request)
Выполняет расширенную операцию.
Control[] getConnectControls()
Возвращает действующие для этого контекста элементы управления запросами подключения.
Control[] getRequestControls()
Возвращает действующие для этого контекста элементы управления запросами.
Control[] getResponseControls()
Возвращает элементы управления ответом, сформированные в результате последнего вызова метода для этого контекста.
LdapContext newInstance(Control[] reqCtls)
Создает новый экземпляр этого контекста, инициализированный с использованием элементов управления запросами.
void reconnect(Control[] connCtls)
Повторно подключается к серверу LDAP с использованием переданных элементов управления и окружения этого контекста.
void setRequestControls(Control[] requestControls)
Задает элементы управления запросами для последующих вызовов методов этого контекста.

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

bind, bind, createSubcontext, createSubcontext, getAttributes, getAttributes, getAttributes, getAttributes, getSchema, getSchema, getSchemaClassDefinition, getSchemaClassDefinition, modifyAttributes, modifyAttributes, modifyAttributes, modifyAttributes, rebind, rebind, search, search, search, search, search, search, search, search

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

addToEnvironment, bind, bind, close, composeName, composeName, createSubcontext, createSubcontext, destroySubcontext, destroySubcontext, doLookup, doLookup, getDefaultInitCtx, getEnvironment, getNameInNamespace, getNameParser, getNameParser, getURLOrDefaultInitCtx, getURLOrDefaultInitCtx, init, list, list, listBindings, listBindings, lookup, lookup, lookupLink, lookupLink, rebind, rebind, removeFromEnvironment, rename, rename, unbind, unbind

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

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

Методы, объявленные в интерфейсе Context

addToEnvironment, bind, bind, close, composeName, composeName, createSubcontext, createSubcontext, destroySubcontext, destroySubcontext, getEnvironment, getNameInNamespace, getNameParser, getNameParser, list, list, listBindings, listBindings, lookup, lookup, lookupLink, lookupLink, rebind, rebind, removeFromEnvironment, rename, rename, unbind, unbind

Методы, объявленные в интерфейсе DirContext

bind, bind, createSubcontext, createSubcontext, getAttributes, getAttributes, getAttributes, getAttributes, getSchema, getSchema, getSchemaClassDefinition, getSchemaClassDefinition, modifyAttributes, modifyAttributes, modifyAttributes, modifyAttributes, rebind, rebind, search, search, search, search, search, search, search, search

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

InitialLdapContext

public InitialLdapContext() throws NamingException
Создает начальный контекст без свойств окружения и элементов управления запросами подключения. Эквивалентно new InitialLdapContext(null, null).
Выбрасывает:
NamingException — если возникло исключение именования

InitialLdapContext

public InitialLdapContext(Hashtable<?,?> environment, Control[] connCtls) throws NamingException
Создает начальный контекст со свойствами окружения и элементами управления запросами подключения. Обсуждение свойств окружения см. в javax.naming.InitialContext.

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

connCtls используется в качестве элементов управления запросами подключения для базового экземпляра контекста. Подробности см. в описании класса.

Параметры:
environment — окружение, используемое для создания начального DirContext. Значение null указывает на пустое окружение.
connCtls — элементы управления запросами подключения для начального контекста. Если значение null, элементы управления запросами подключения не используются.
Выбрасывает:
NamingException — если возникло исключение именования
См. также:
  • reconnect(Control[])
  • LdapContext.reconnect(Control[])

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

extendedOperation

public ExtendedResponse extendedOperation(ExtendedRequest request) throws NamingException
Описание скопировано из интерфейса: LdapContext
Выполняет расширенную операцию. Этот метод предназначен для поддержки расширенных операций LDAPv3.
Определено в:
extendedOperation в интерфейсе LdapContext
Параметры:
request — запрос, который необходимо выполнить; не должен иметь значение null.
Возвращает:
Возможно, значение null — ответ на операцию. Значение null означает, что операция не сформировала ответ.
Выбрасывает:
NamingException — если при выполнении расширенной операции произошла ошибка.

newInstance

public LdapContext newInstance(Control[] reqCtls) throws NamingException
Описание скопировано из интерфейса: LdapContext
Создает новый экземпляр этого контекста, инициализированный с использованием элементов управления запросами. Этот метод служит удобным способом создания нового экземпляра контекста для многопоточного доступа. Например, если нескольким потокам требуется использовать разные элементы управления запросами контекста, каждый поток может вызвать этот метод, чтобы получить собственную копию контекста и задавать или получать элементы управления запросами контекста без синхронизации с другими потоками.

Новый контекст имеет те же свойства окружения и элементы управления запросами подключения, что и этот контекст. Подробности см. в описании класса. Реализации также могут разрешать этому контексту и новому контексту совместно использовать одно сетевое подключение или другие ресурсы, если это не нарушает независимость каждого из контекстов.

Определено в:
newInstance в интерфейсе LdapContext
Параметры:
reqCtls — возможно, значение null; элементы управления запросами, используемые для нового контекста. Если значение null, контекст инициализируется без элементов управления запросами.
Возвращает:
Ненулевой экземпляр LdapContext.
Выбрасывает:
NamingException — если при создании нового экземпляра произошла ошибка.
См. также:
  • InitialLdapContext

reconnect

public void reconnect(Control[] connCtls) throws NamingException
Описание скопировано из интерфейса: LdapContext
Повторно подключается к серверу LDAP с использованием переданных элементов управления и окружения этого контекста.

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

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

Разработчикам поставщиков служб следует прочитать раздел «Поставщик служб» в описании класса, где приведены сведения о реализации.

Определено в:
reconnect в интерфейсе LdapContext
Параметры:
connCtls — возможно, значение null; используемые элементы управления. Если значение null, элементы управления не используются.
Выбрасывает:
NamingException — если при повторном подключении произошла ошибка.
См. также:
  • LdapContext.getConnectControls()
  • LdapContext.newInstance(Control[])

getConnectControls

public Control[] getConnectControls() throws NamingException
Описание скопировано из интерфейса: LdapContext
Возвращает действующие для этого контекста элементы управления запросами подключения. Элементы управления принадлежат реализации JNDI и являются неизменяемыми. Вызывающий код не должен изменять ни массив, ни элементы управления.
Определено в:
getConnectControls в интерфейсе LdapContext
Возвращает:
Возможно, значение null — массив элементов управления. Значение null означает, что для этого контекста не заданы элементы управления подключением.
Выбрасывает:
NamingException — если при получении элементов управления запросами произошла ошибка.

setRequestControls

public void setRequestControls(Control[] requestControls) throws NamingException
Описание скопировано из интерфейса: LdapContext
Задает элементы управления запросами для последующих вызовов методов этого контекста. Элементы управления запросами принадлежат реализации JNDI и являются неизменяемыми. Вызывающий код не должен изменять ни массив, ни элементы управления.

Этот метод удаляет все ранее заданные элементы управления запросами и добавляет requestControls для последующих вызовов методов этого контекста. Метод не влияет на элементы управления запросами подключения этого контекста.

Обратите внимание, что requestControls будут действовать до следующего вызова setRequestControls(). Чтобы элементы управления больше не влияли на методы контекста, необходимо явно вызвать setRequestControls() с аргументом null или пустым массивом. Чтобы проверить, какие элементы управления запросами действуют для этого контекста, используйте getRequestControls().

Определено в:
setRequestControls в интерфейсе LdapContext
Параметры:
requestControls — возможно, значение null; используемые элементы управления. Если значение null, элементы управления не используются.
Выбрасывает:
NamingException — если при задании элементов управления запросами произошла ошибка.
См. также:
  • LdapContext.getRequestControls()

getRequestControls

public Control[] getRequestControls() throws NamingException
Описание скопировано из интерфейса: LdapContext
Возвращает действующие для этого контекста элементы управления запросами. Элементы управления запросами принадлежат реализации JNDI и являются неизменяемыми. Вызывающий код не должен изменять ни массив, ни элементы управления.
Определено в:
getRequestControls в интерфейсе LdapContext
Возвращает:
Возможно, значение null — массив элементов управления. Значение null означает, что для этого контекста не заданы элементы управления запросами.
Выбрасывает:
NamingException — если при получении элементов управления запросами произошла ошибка.
См. также:
  • LdapContext.setRequestControls(Control[])

getResponseControls

public Control[] getResponseControls() throws NamingException
Описание скопировано из интерфейса: LdapContext
Возвращает элементы управления ответом, сформированные в результате последнего вызова метода для этого контекста. Элементы управления ответом принадлежат реализации JNDI и являются неизменяемыми. Вызывающий код не должен изменять ни массив, ни элементы управления.

Эти элементы управления ответом могли быть сформированы в результате успешной или неуспешной операции.

При вызове метода контекста, который может возвращать элементы управления ответом, элементы управления ответом, полученные при предыдущем вызове метода, очищаются. getResponseControls() возвращает все элементы управления ответом, сформированные операциями LDAP, использованными методом контекста, в том порядке, в котором они были получены от сервера LDAP. Вызов getResponseControls() не очищает элементы управления ответом. Его можно вызывать многократно (и получать те же элементы управления), пока не будет вызван следующий метод контекста, который может возвращать элементы управления.

Определено в:
getResponseControls в интерфейсе LdapContext
Возвращает:
Возможно, значение null — массив элементов управления. Если возвращено значение null, последний вызов метода для этого контекста не сформировал элементы управления.
Выбрасывает:
NamingException — если при получении элементов управления ответом произошла ошибка.

Сообщить об ошибке или предложить улучшение
Дополнительные справочные материалы по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, концептуальные обзоры, определения терминов, обходные решения и рабочие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или ее аффилированных лиц в США и других странах.
Авторские права © 1993, 2025, 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.naming/javax/naming/ldap/InitialLdapContext.html

Spec-Zone.ru

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