Класс Delegate
- java.lang.Object
-
- org.omg.CORBA.portable.Delegate
- Прямые известные подклассы:
- Delegate
public abstract class Delegate extends Object
Определяет портативный API для реализации поставщиком ORB методов org.omg.CORBA.Object. Каждый заглушка (прокси) содержит объект делегата, которому пересылаются все методы org.omg.CORBA.Object. Это позволяет заглушке, сгенерированной ORB одного поставщика, работать с делегатом из ORB другого поставщика.
- См. также:
Object
Конструкторы
| Конструктор и описание |
|---|
Delegate()
|
Методы
| Модификатор и тип | Метод и описание |
|---|---|
abstract Request |
create_request(Object obj,
Context ctx,
String operation,
NVList arg_list,
NamedValue result) Создает экземпляр Request для использования в интерфейсе динамического вызова. |
abstract Request |
create_request(Object obj,
Context ctx,
String operation,
NVList arg_list,
NamedValue result,
ExceptionList exclist,
ContextList ctxlist) Создает экземпляр Request для использования в интерфейсе динамического вызова. |
abstract Object |
duplicate(Object obj) Возвращает дубликат предоставленной ссылки на объект. |
boolean |
equals(Object self,
Object obj) Предоставляет реализацию для переопределения метода equals(java.lang.Object obj) делегируемого объекта CORBA. |
DomainManager[] |
get_domain_managers(Object self) Получает |
abstract Object |
get_interface_def(Object self) Возвращает InterfaceDef для предоставленной ссылки на объект. |
Policy |
get_policy(Object self,
int policy_type) Возвращает объект |
abstract int |
hash(Object obj,
int max) Возвращает внутренний идентификатор ORB (хеш-код) для этой ссылки на объект. |
int |
hashCode(Object self) Предоставляет реализацию для переопределения метода hashCode() делегируемого объекта CORBA. |
InputStream |
invoke(Object self,
OutputStream output) invoke вызывается заглушкой для вызова операции. |
abstract boolean |
is_a(Object obj,
String repository_id) Проверяет, является ли ссылка на объект экземпляром заданного интерфейса. |
abstract boolean |
is_equivalent(Object obj,
Object other) Определяет, эквивалентны ли две ссылки на объект. |
boolean |
is_local(Object self) Возвращает true, если этот объект реализуется локальным слугой. |
abstract boolean |
non_existent(Object obj) Определяет, был ли уничтожен серверный объект для ссылки на объект. |
ORB |
orb(Object obj) Предоставляет ссылку на orb, связанный с его параметром. |
abstract void |
release(Object obj) Освобождает ресурсы, связанные с предоставленной ссылкой на объект. |
void |
releaseReply(Object self,
InputStream input) releaseReply может по желанию быть вызван заглушкой для освобождения потока ответа обратно в ORB после завершения разархивирования. |
abstract Request |
request(Object obj,
String operation) Создает экземпляр Request для использования в интерфейсе динамического вызова. |
OutputStream |
request(Object self,
String operation,
boolean responseExpected) request вызывается заглушкой для получения OutputStream для маршализации аргументов. |
void |
servant_postinvoke(Object self,
ServantObject servant) servant_postinvoke() вызывается локальной заглушкой после вызова операции на локальном слуге. |
ServantObject |
servant_preinvoke(Object self,
String operation,
Class expectedType) Возвращает Java-ссылку на слугу, которую следует использовать для этого запроса. |
Object |
set_policy_override(Object self,
Policy[] policies,
SetOverrideType set_add) Связывает переданные политики с только что созданной возвращаемой ссылкой на объект. |
String |
toString(Object self) Предоставляет реализацию для переопределения метода toString() делегируемого объекта CORBA. |
Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Краткое описание конструкторов
Delegate
public Delegate()
Краткое описание методов
get_interface_def
public abstract Object get_interface_def(Object self)
Возвращает InterfaceDef для предоставленной объектной ссылки.
- Параметры:
-
self- Объектная ссылка, для которой необходимо вернуть InterfaceDef - Возвращает:
- InterfaceDef
duplicate
public abstract Object duplicate(Object obj)
Возвращает дубликат предоставленной объектной ссылки.
- Параметры:
-
obj- Объектная ссылка, дубликат которой необходимо вернуть - Возвращает:
- дублирующая объектная ссылка
release
public abstract void release(Object obj)
Освобождает ресурсы, связанные с предоставленной объектной ссылкой.
- Параметры:
-
obj- Объектная ссылка, ресурсы которой необходимо освободить
is_a
public abstract boolean is_a(Object obj,
String repository_id) Проверяет, является ли объектная ссылка экземпляром данного интерфейса.
- Параметры:
-
obj- Проверяемая объектная ссылка. -
repository_id- Идентификатор репозитория интерфейса для проверки. - Возвращает:
- true, если объектная ссылка поддерживает интерфейс
non_existent
public abstract boolean non_existent(Object obj)
Определяет, был ли уничтожен серверный объект для объектной ссылки.
- Параметры:
-
obj- Объектная ссылка, делегированная этому делегату. - Возвращает:
- true, если ORB достоверно знает, что серверный объект не существует, false в противном случае
is_equivalent
public abstract boolean is_equivalent(Object obj,
Object other) Определяет, эквивалентны ли две объектные ссылки.
- Параметры:
-
obj- Объектная ссылка, делегированная этому делегату. -
other- Объектная ссылка для проверки эквивалентности. - Возвращает:
- true, если объекты являются CORBA-эквивалентными.
hash
public abstract int hash(Object obj,
int max) Возвращает внутренний идентификатор ORB (хэш-код) для этой объектной ссылки.
- Параметры:
-
obj- Объектная ссылка, делегированная этому делегату. -
max- указывает верхнюю границу значения хэш-кода, возвращаемого ORB. - Возвращает:
- Внутренний хэш-идентификатор ORB для объектной ссылки
request
public abstract Request request(Object obj,
String operation) Создает экземпляр Request для использования в Dynamic Invocation Interface.
- Параметры:
-
obj- Объектная ссылка, делегированная этому делегату. -
operation- Имя операции, которая должна быть вызвана с помощью экземпляра Request. - Возвращает:
- созданный экземпляр Request
create_request
public abstract Request create_request(Object obj,
Context ctx,
String operation,
NVList arg_list,
NamedValue result) Создает экземпляр Request для использования в Dynamic Invocation Interface.
- Параметры:
-
obj- Объектная ссылка, делегированная этому делегату. -
ctx- Контекст, который будет использоваться. -
operation- Имя вызываемой операции. -
arg_list- Аргументы операции в виде NVList. -
result- Контейнер для результата в виде NamedValue. - Возвращает:
- Созданный объект Request.
create_request
public abstract Request create_request(Object obj,
Context ctx,
String operation,
NVList arg_list,
NamedValue result,
ExceptionList exclist,
ContextList ctxlist) Создает экземпляр Request для использования в Dynamic Invocation Interface.
- Параметры:
-
obj- Объектная ссылка, делегированная этому делегату. -
ctx- Контекст, который будет использоваться. -
operation- Имя вызываемой операции. -
arg_list- Аргументы операции в виде NVList. -
result- Контейнер для результата в виде NamedValue. -
exclist- Список возможных исключений, которые может вызвать операция. -
ctxlist- Список строковых контекстов, которые необходимо разрешить и отправить с Request. - Возвращает:
- Созданный объект Request.
orb
public ORB orb(Object obj)
Предоставляет ссылку на orb, связанный с его параметром.
- Параметры:
-
obj- объектная ссылка, делегированная этому делегату. - Возвращает:
- связанный orb.
- См. также:
portableкомментарии к пакету для нереализованных функций
get_policy
public Policy get_policy(Object self,
int policy_type) Возвращает Policy объект указанного типа, который применяется к этому объекту.
- Параметры:
-
self- Объектная ссылка, делегированная этому делегату. -
policy_type- Тип политики, которая должна быть получена. - Возвращает:
- Объект
Policyтипа, указанного параметром policy_type. - Исключения:
-
BAD_PARAM- возникает, когда значение типа политики недействительно, либо потому что указанный тип не поддерживается этим ORB, либо потому что объект политики этого типа не связан с этим объектом. - См. также:
portableкомментарии к пакету для нереализованных функций
get_domain_managers
public DomainManager[] get_domain_managers(Object self)
Извлекает DomainManagers этого объекта. Это позволяет службам администрирования (и приложениям) извлекать доменные менеджеры, а следовательно, политики безопасности и другие политики, применимые к отдельным объектам, являющимся членами домена.
- Параметры:
-
self- Объектная ссылка, делегированная этому делегату. - Возвращает:
- Список непосредственно включающих доменных менеджеров этого объекта. В списке всегда возвращается как минимум один доменный менеджер, поскольку по умолчанию каждый объект связан как минимум с одним доменным менеджером при создании.
- См. также:
portableкомментарии к пакету для нереализованных функций
set_policy_override
public Object set_policy_override(Object self,
Policy[] policies,
SetOverrideType set_add) Связывает переданные политики с вновь созданной объектной ссылкой, которую она возвращает. Только определенные политики, относящиеся к вызову операции на стороне клиента, могут быть переопределены с помощью этой операции. Попытки переопределить любую другую политику приведут к возникновению исключения CORBA::NO_PERMISSION.
- Параметры:
-
self- Объектная ссылка, делегированная этому делегату. -
policies- Последовательность ссылок на объекты Policy. -
set_add- Указывает, следует ли добавлять эти политики к любым другим переопределениям, которые уже существуют (ADD_OVERRIDE) в объектной ссылке, или их следует добавить к чистой объектной ссылке без переопределений (SET_OVERRIDE). - Возвращает:
- Новая объектная ссылка с новыми политиками, связанными с ней.
- См. также:
portableкомментарии к пакету для нереализованных функций
is_local
public boolean is_local(Object self)
Возвращает true, если этот объект реализован локальным сервлетом.
- Параметры:
-
self- Объектная ссылка, делегированная этому делегату. - Возвращает:
- true только если сервлет, воплощающий этот объект, расположен в этой Java VM. Возвращает false, если сервлет не является локальным или ORB не поддерживает локальные заглушки для этого конкретного сервлета. Поведение is_local() по умолчанию — возвращать false.
servant_preinvoke
public ServantObject servant_preinvoke(Object self,
String operation,
Class expectedType) Возвращает Java-ссылку на сервлет, который должен использоваться для этого запроса. servant_preinvoke() вызывается локальной заглушкой. Если возвращается объект ServantObject, то его поле servant установлено в объект ожидаемого типа (Примечание: объект может быть или не быть фактическим экземпляром сервлета). Локальная заглушка может привести поле servant к ожидаемому типу, а затем напрямую вызвать операцию. Объект ServantRequest действителен только для одного вызова и не может использоваться более чем для одного вызова.
- Параметры:
-
self- Объектная ссылка, делегированная этому делегату. -
operation- строка, содержащая имя операции. Имя операции соответствует имени операции, как оно было бы закодировано в запросе GIOP. -
expectedType- Объект Class, представляющий ожидаемый тип сервлета. Ожидаемый тип — это объект Class, связанный с классом операций заглушки интерфейса (например, заглушка для интерфейса Foo передаст объект Class для интерфейса FooOperations). - Возвращает:
- объект ServantObject. Метод может возвращать значение null, если он не хочет поддерживать эту оптимизацию (например, из-за безопасности, транзакций и т. д.). Метод должен возвращать null, если сервлет не имеет ожидаемого типа.
servant_postinvoke
public void servant_postinvoke(Object self,
ServantObject servant) servant_postinvoke() вызывается локальной заглушкой после того, как операция была вызвана на локальном сервлете. Этот метод должен быть вызван, если servant_preinvoke() вернул ненулевое значение, даже если метод сервлета вызвал исключение. По этой причине вызов servant_postinvoke() должен быть помещен в предложение Java finally.
- Параметры:
-
self- Объектная ссылка, делегированная этому делегату. -
servant- экземпляр ServantObject, возвращаемый методом servant_preinvoke().
request
public OutputStream request(Object self,
String operation,
boolean responseExpected) request вызывается заглушкой для получения OutputStream для маршалинга аргументов. Заглушка должна указать имя операции и указать, ожидается ли ответ (т. е. является ли это односторонним вызовом).
- Параметры:
-
self- ссылка на объект, делегировавший этому делегату. -
operation- строка, содержащая имя операции. Имя операции соответствует имени операции, которое кодируется в запросе GIOP. -
responseExpected- false, если операция является односторонней, и true в противном случае. - Возвращает:
- OutputStream — OutputStream, в который можно маршаллировать аргументы запроса.
- См. также:
portableкомментарии к пакету для нереализованных функций
invoke
public InputStream invoke(Object self,
OutputStream output)
throws ApplicationException,
RemarshalException invoke вызывается stub для вызова операции. Stub предоставляет OutputStream, который был ранее возвращён вызовом request(). invoke возвращает InputStream, содержащий маршаллированный ответ. Если произошла ошибка, invoke может выбросить объект ApplicationException, который содержит InputStream, из которого пользовательское состояние исключения может быть размаршаллировано.
- Параметры:
-
self- ссылка на объект, делегировавший этому делегату. -
output- OutputStream, содержащий маршаллированные аргументы - Возвращает:
- input — InputStream, из которого можно размаршаллировать параметры ответа.
- Исключение:
-
ApplicationException- выбрасывается, когда реализация выбрасывает (при вызове) исключение, определённое как часть её удалённого определения метода. -
RemarshalException- выбрасывается, когда перемаршаллирование завершается с ошибкой. - См. также:
portableкомментарии к пакету для нереализованных функций
releaseReply
public void releaseReply(Object self,
InputStream input) releaseReply может быть необязательно вызван stub для возвращения потока ответа в ORB, когда размаршаллирование завершено. Stub передаёт InputStream, возвращённый invoke() или ApplicationException.getInputStream(). Также может быть передано значение null, в этом случае метод ничего не делает.
- Параметры:
-
self- ссылка на объект, делегировавший этому делегату. -
input- InputStream, возвращённый из invoke(). - См. также:
portableкомментарии к пакету для нереализованных функций
toString
public String toString(Object self)
Предоставляет реализацию для переопределения метода toString() делегирующего объекта CORBA.
- Параметры:
-
self- ссылка на объект, делегировавший этому делегату - Возвращает:
- объект, представляющий ссылку на объект, делегировавший этому объекту
hashCode
public int hashCode(Object self)
Предоставляет реализацию для переопределения метода hashCode() делегирующего объекта CORBA.
- Параметры:
-
self- ссылка на объект, делегировавший этому делегату - Возвращает:
- значение, представляющее хэш-код для ссылки на объект, делегировавший этому объекту
equals
public boolean equals(Object self,
Object obj) Предоставляет реализацию для переопределения метода equals(java.lang.Object obj) делегирующего объекта CORBA.
- Параметры:
-
self- ссылка на объект, делегировавший этому делегату -
obj- объект для сравнения - Возвращает:
-
trueеслиobjравенself;falseв противном случае
© 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.