Spec-Zone.ru › OpenJDK 24

Класс 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-операции "bind", выполняемой контекстом или контекстами, полученными из этого контекста. Они называются управляющими командами запроса подключения. Используйте getConnectControls() для получения управляющих команд запроса подключения контекста.

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

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

 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(javax.naming.spi.InitialContextFactoryBuilder)

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

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

defaultInitCtx, gotDefault, myProps

Поля, объявленные в интерфейсе javax.naming.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

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

ADD_ATTRIBUTE, REMOVE_ATTRIBUTE, REPLACE_ATTRIBUTE

Поля, объявленные в интерфейсе javax.naming.ldap.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)
Устанавливает управляющие команды запроса для методов, которые будут вызваны для этого контекста впоследствии.

Методы, объявленные в классе javax.naming.directory.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

Методы, объявленные в классе javax.naming.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

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

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

Методы, объявленные в интерфейсе javax.naming.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

Методы, объявленные в интерфейсе javax.naming.directory.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(javax.naming.ldap.Control[])
  • LdapContext.reconnect(javax.naming.ldap.Control[])

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

extendedOperation

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

newInstance

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

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

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

reconnect

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

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

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

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

Определено в:
reconnect в интерфейсе LdapContext
Параметры:
connCtls - Возможные управляющие элементы (null, если не использовать управляющие элементы).
Исключения:
NamingException - Если при повторном подключении произошла ошибка.
См. также:
  • LdapContext.getConnectControls()
  • LdapContext.newInstance(javax.naming.ldap.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, если не использовать управляющие элементы).
Исключения:
NamingException - Если при установке управляющих элементов запроса произошла ошибка.
См. также:
  • LdapContext.getRequestControls()

getRequestControls

public Control[] getRequestControls() throws NamingException
Описание скопировано из интерфейса: LdapContext
Возвращает управляющие элементы запроса, действующие для этого контекста. Управляющие элементы запроса принадлежат реализации JNDI и являются неизменяемыми. Массив и управляющие элементы не могут быть изменены вызывающей стороной.
Определено в:
getRequestControls в интерфейсе LdapContext
Возвращает:
Возможный массив управляющих элементов (null, если не установлено). Null означает, что для этого контекста не установлено никаких управляющих элементов запроса.
Исключения:
NamingException - Если при получении управляющих элементов запроса произошла ошибка.
См. также:
  • LdapContext.setRequestControls(javax.naming.ldap.Control[])

getResponseControls

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

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

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

Определено в:
getResponseControls в интерфейсе LdapContext
Возвращает:
Возможный массив управляющих элементов (null). Если null, предыдущий метод, вызванный для этого контекста, не сгенерировал никаких управляющих элементов.
Исключения:
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.
https://download.java.net/java/early_access/jdk24/docs/api/java.naming/javax/naming/ldap/InitialLdapContext.html

Spec-Zone.ru

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