Интерфейс NamingContextOperations
- Все известные подинтерфейсы:
- NamingContext, NamingContextExt, NamingContextExtOperations
- Все известные реализующие классы:
- _NamingContextExtStub, _NamingContextImplBase, _NamingContextStub, NamingContextExtPOA, NamingContextPOA
public interface NamingContextOperations
Контекст именования — это объект, содержащий набор связываний имён, в котором каждое имя уникально. Разные имена могут быть связаны с объектом в одном и том же или разных контекстах одновременно.
Методы
| Модификатор и тип | Метод и описание |
|---|---|
void |
bind_context(NameComponent[] n,
NamingContext nc) Именует объект, являющийся контекстом именования. |
NamingContext |
bind_new_context(NameComponent[] n) Этот оператор создаёт новый контекст и связывает его с именем, переданным в качестве аргумента. |
void |
bind(NameComponent[] n,
Object obj) Создаёт связывание имени и объекта в контексте именования. |
void |
destroy() Оператор destroy удаляет контекст именования. |
void |
list(int how_many,
BindingListHolder bl,
BindingIteratorHolder bi) Оператор list позволяет клиенту перебирать набор связываний в контексте именования. |
NamingContext |
new_context() Этот оператор возвращает контекст именования, реализованный тем же сервером именования, что и контекст, на котором был вызван оператор. |
void |
rebind_context(NameComponent[] n,
NamingContext nc) Создаёт связывание имени и контекста именования в контексте именования, даже если имя уже связано в контексте. |
void |
rebind(NameComponent[] n,
Object obj) Создаёт связывание имени и объекта в контексте именования, даже если имя уже связано в контексте. |
Object |
resolve(NameComponent[] n) Операция resolve — это процесс получения объекта, связанного с именем в данном контексте. |
void |
unbind(NameComponent[] n) Операция unbind удаляет связывание имени из контекста. |
Методы
bind
void bind(NameComponent[] n,
Object obj)
throws NotFound,
CannotProceed,
InvalidName,
AlreadyBound Создаёт связывание имени и объекта в контексте именования. Контексты именования, которые связываются с помощью bind, не участвуют в разрешении имён, когда составные имена передаются для разрешения.
- Параметры:
-
n- Имя объекта -
obj- Объект для связывания с данным именем - Исключения:
-
NotFound- Указывает, что имя не определяет связывание. -
CannotProceed- Указывает, что реализация отказалась по какой-либо причине. Однако клиент может продолжить операцию в возвращенном контексте именования. -
InvalidName- Указывает, что имя некорректно. -
AlreadyBound- Указывает, что объект уже связан с указанным именем.
bind_context
void bind_context(NameComponent[] n,
NamingContext nc)
throws NotFound,
CannotProceed,
InvalidName,
AlreadyBound Именует объект, являющийся контекстом именования. Контексты именования, которые связываются с помощью bind_context(), участвуют в разрешении имён, когда составные имена передаются для разрешения.
- Параметры:
-
n- Имя объекта -
nc- Объект NamingContect для связывания с данным именем - Исключения:
-
NotFound- Указывает, что имя не определяет связывание. -
CannotProceed- Указывает, что реализация отказалась по какой-либо причине. Однако клиент может продолжить операцию в возвращенном контексте именования. -
InvalidName- Указывает, что имя некорректно. -
AlreadyBound- Указывает, что объект уже связан с указанным именем.
rebind
void rebind(NameComponent[] n,
Object obj)
throws NotFound,
CannotProceed,
InvalidName Создаёт связывание имени и объекта в контексте именования, даже если имя уже связано в контексте. Контексты именования, которые связываются с помощью rebind, не участвуют в разрешении имён, когда составные имена передаются для разрешения.
- Параметры:
-
n- Имя объекта -
obj- Объект для повторной привязки с данным именем - Исключения:
-
NotFound- Указывает, что имя не определяет связывание. -
CannotProceed- Указывает, что реализация отказалась по какой-либо причине. Однако клиент может продолжить операцию в возвращенном контексте именования. -
InvalidName- Указывает, что имя некорректно.
rebind_context
void rebind_context(NameComponent[] n,
NamingContext nc)
throws NotFound,
CannotProceed,
InvalidName Создаёт связывание имени и контекста именования в контексте именования, даже если имя уже связано в контексте. Контексты именования, которые связываются с помощью rebind_context(), участвуют в разрешении имён, когда составные имена передаются для разрешения.
- Параметры:
-
n- Имя объекта -
nc- Объект NamingContect для повторной привязки с данным именем - Исключения:
-
NotFound- Указывает, что имя не определяет связывание. -
CannotProceed- Указывает, что реализация отказалась по какой-либо причине. Однако клиент может продолжить операцию в возвращенном контексте именования. -
InvalidName- Указывает, что имя некорректно.
resolve
Object resolve(NameComponent[] n)
throws NotFound,
CannotProceed,
InvalidName Операция resolve — это процесс получения объекта, связанного с именем в заданном контексте. Заданное имя должно точно совпадать со связанным именем. Сервис именования не возвращает тип объекта. Клиенты ответственны за "сужение" объекта до соответствующего интерфейса. То есть, клиенты обычно преобразуют возвращаемый объект из Object в более специализированный интерфейс.
- Параметры:
-
n- Имя объекта - Исключения:
-
NotFound- Указывает, что имя не определяет связывание. -
CannotProceed- Указывает, что реализация отказалась по какой-либо причине. Однако клиент может продолжить операцию в возвращенном контексте именования. -
InvalidName- Указывает, что имя некорректно.
unbind
void unbind(NameComponent[] n)
throws NotFound,
CannotProceed,
InvalidName Операция unbind удаляет связывание имени из контекста.
- Параметры:
-
n- Имя объекта - Исключения:
-
NotFound- Указывает, что имя не определяет связывание. -
CannotProceed- Указывает, что реализация отказалась по какой-либо причине. Однако клиент может продолжить операцию в возвращенном контексте именования. -
InvalidName- Указывает, что имя некорректно.
list
void list(int how_many,
BindingListHolder bl,
BindingIteratorHolder bi) Оператор list позволяет клиенту перебирать набор связываний в контексте именования.
Операция list возвращает не более запрошенного количества связываний в BindingList bl.
- Если контекст именования содержит дополнительные связывания, операция list возвращает BindingIterator с дополнительными связываниями.
- Если контекст именования не содержит дополнительных связываний, итератор связываний является ссылкой на нулевой объект.
- Параметры:
-
how_many- максимальное количество связываний для возврата -
bl- возвращённый список связываний -
bi- возвращённый итератор связываний
new_context
NamingContext new_context()
Этот оператор возвращает контекст именования, реализованный тем же сервером именования, что и контекст, на котором была вызвана операция. Новый контекст не связан ни с каким именем.
bind_new_context
NamingContext bind_new_context(NameComponent[] n)
throws NotFound,
AlreadyBound,
CannotProceed,
InvalidName Этот оператор создаёт новый контекст и связывает его с именем, переданным в качестве аргумента. Созданный контекст реализуется тем же сервером именования, что и контекст, в котором он был связан (то есть, сервером именования, который реализует контекст, обозначаемый именем аргумента, за исключением последнего компонента).
- Параметры:
-
n- Имя объекта - Исключения:
-
NotFound- Указывает, что имя не определяет связывание. -
AlreadyBound- Указывает, что объект уже связан с указанным именем. -
CannotProceed- Указывает, что реализация отказалась по какой-либо причине. Однако клиент может продолжить операцию в возвращенном контексте именования. -
InvalidName- Указывает, что имя некорректно.
destroy
void destroy()
throws NotEmpty Операция destroy удаляет контекст именования. Если контекст именования содержит связывания, генерируется исключение NotEmpty.
- Исключения:
-
NotEmpty- Указывает, что контекст именования содержит связывания.
© 1993, 2020, 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.