Класс Request
- java.lang.Object
-
- org.omg.CORBA.Request
public abstract class Request extends Object
Объект, содержащий информацию, необходимую для вызова метода. Этот класс является основой динамического интерфейса вызова ORB (DII), который позволяет динамически создавать и вызывать запросы. Сервер не может отличить вызов клиента с помощью клиентского заглушки от запроса с использованием DII.
Объект Request состоит из:
- имени операции, которая должна быть вызвана
- списка
NVList, содержащего аргументы для операции.
Каждый элемент в списке — это объектNamedValue, который имеет три части:- имя аргумента
- значение аргумента (как объект
Any) - флаг режима аргумента, указывающий, является ли аргумент входным, выходным или двунаправленным
Объекты Request также могут содержать дополнительную информацию, в зависимости от того, как операция была определена в исходном интерфейсе IDL. Например, там, где это уместно, они могут содержать объект NamedValue для хранения возвращаемого значения или исключения, контекст, список возможных исключений и список строк контекста, которые необходимо разрешить.
Новые объекты Request создаются с помощью одного из методов create_request в классе Object. Другими словами, на объекте, который должен быть вызван, выполняется метод create_request.
- См. также:
NamedValue
Конструкторы
| Конструктор и описание |
|---|
Request() |
Методы
| Модификатор и тип | Метод и описание |
|---|---|
abstract Any |
add_in_arg() Создает входной аргумент и добавляет его в этот объект |
abstract Any |
add_inout_arg() Добавляет аргумент ввода/вывода в этот объект |
abstract Any |
add_named_in_arg(String name) Создает входной аргумент с заданным именем и добавляет его в этот объект |
abstract Any |
add_named_inout_arg(String name) Добавляет аргумент ввода/вывода с заданным именем в этот объект |
abstract Any |
add_named_out_arg(String name) Добавляет выходной аргумент с заданным именем в этот объект |
abstract Any |
add_out_arg() Добавляет выходной аргумент в этот объект |
abstract NVList |
arguments() Возвращает объект |
abstract ContextList |
contexts() Возвращает объект |
abstract Context |
ctx() Возвращает объект |
abstract void |
ctx(Context c) Устанавливает объект |
abstract Environment |
env() Возвращает объект |
abstract ExceptionList |
exceptions() Возвращает объект |
abstract void |
get_response() Позволяет пользователю получить доступ к ответу для вызова, инициированного ранее методом |
abstract void |
invoke() Выполняет синхронный вызов, используя информацию в объекте |
abstract String |
operation() Возвращает имя вызываемого метода. |
abstract boolean |
poll_response() Позволяет пользователю определить, получен ли ответ для вызова, инициированного ранее методом |
abstract NamedValue |
result() Возвращает объект |
abstract Any |
return_value() Возвращает объект |
abstract void |
send_deferred() Выполняет асинхронный вызов запроса. |
abstract void |
send_oneway() Выполняет односторонний вызов запроса. |
abstract void |
set_return_type(TypeCode tc) Устанавливает тип данных для возвращаемого значения метода. |
abstract Object |
target() Возвращает ссылку на целевой объект. |
Методы, унаследованные от класса java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait Конструкторы
Request
public Request()
Методы
target
public abstract Object target()
Получает ссылку на целевой объект.
- Возвращает:
- ссылку на объект, реализующий метод, который должен быть вызван
operation
public abstract String operation()
Получает имя вызываемого метода.
- Возвращает:
- имя вызываемого метода
arguments
public abstract NVList arguments()
Получает объект, содержащий аргументы вызываемого метода. Элементы списка — это объекты, описывающие каждый аргумент метода.
- Возвращает:
- объект, содержащий аргументы метода
result
public abstract NamedValue result()
Получает объект, содержащий возвращаемое значение метода.
- Возвращает:
- объект, содержащий результат метода
env
public abstract Environment env()
Получает объект среды для данного запроса. Он содержит исключение, которое выбросил вызываемый метод (после возврата от вызова).
- Возвращает:
- объект среды для данного запроса
exceptions
public abstract ExceptionList exceptions()
Получает объект, содержащий список возможных исключений для данного запроса. В списке содержатся объекты, описывающие исключения, которые может выбросить вызываемый метод.
- Возвращает:
- объект, описывающий исключения, которые может выбросить вызываемый метод
contexts
public abstract ContextList contexts()
Получает объект, содержащий список строк контекста, которые необходимо разрешить и отправить вместе с вызовом.
- Возвращает:
- список строк контекста, значения которых необходимо разрешить и отправить вместе с вызовом.
ctx
public abstract Context ctx()
Получает объект контекста для данного запроса. Это список свойств, предоставляющих информацию о клиенте, среде или обстоятельствах этого запроса.
- Возвращает:
- объект, используемый для разрешения строк контекста, значения которых необходимо отправить с вызовом
ctx
public abstract void ctx(Context c)
Устанавливает объект контекста для этого запроса на предоставленный.
- Параметры:
-
c- новый объект контекста, используемый для разрешения строк контекста
add_in_arg
public abstract Any add_in_arg()
Создаёт входной аргумент и добавляет его в этот объект.
- Возвращает:
- объект, содержащий значение и тип кода для добавленного входного аргумента
add_named_in_arg
public abstract Any add_named_in_arg(String name)
Создаёт входной аргумент с заданным именем и добавляет его в этот объект.
- Параметры:
-
name- имя добавляемого аргумента - Возвращает:
- объект, содержащий значение и тип кода для добавленного входного аргумента
add_inout_arg
public abstract Any add_inout_arg()
Добавляет аргумент типа вход/выход в этот объект.
- Возвращает:
- объект, содержащий значение и тип кода для добавленного аргумента типа вход/выход
add_named_inout_arg
public abstract Any add_named_inout_arg(String name)
Добавляет аргумент типа вход/выход с заданным именем в этот объект.
- Параметры:
-
name- имя добавляемого аргумента - Возвращает:
- объект, содержащий значение и тип кода для добавленного аргумента типа вход/выход
add_out_arg
public abstract Any add_out_arg()
Добавляет выходной аргумент в этот объект.
- Возвращает:
- объект, содержащий значение и тип кода для добавленного выходного аргумента
add_named_out_arg
public abstract Any add_named_out_arg(String name)
Добавляет выходной аргумент с заданным именем в этот объект.
- Параметры:
-
name- имя добавляемого аргумента - Возвращает:
- объект, содержащий значение и тип кода для добавленного выходного аргумента
set_return_type
public abstract void set_return_type(TypeCode tc)
Устанавливает тип кода для возвращаемого значения метода.
- Параметры:
-
tc- объект, содержащий информацию о типе возвращаемого значения
return_value
public abstract Any return_value()
Возвращает объект, содержащий значение результата метода.
- Возвращает:
- объект, содержащий значение и тип кода для возвращаемого значения
invoke
public abstract void invoke()
Выполняет синхронный вызов, используя информацию в объекте. Информация об исключениях размещается в объекте среды объекта.
send_oneway
public abstract void send_oneway()
Выполняет односторонний вызов запроса. Другими словами, он не ожидает и не ждёт ответа. Обратите внимание, что это может быть использовано даже если операция не была объявлена как односторонняя в объявлении IDL. Информация об ответе или исключениях не возвращается.
send_deferred
public abstract void send_deferred()
Выполняет асинхронный вызов запроса. Другими словами, он не ждёт ответа, прежде чем вернуть управление пользователю. Затем пользователь может использовать методы poll_response и get_response для получения информации о результате или исключениях вызова.
poll_response
public abstract boolean poll_response()
Позволяет пользователю определить, получен ли ответ на вызов, ранее вызванный методом send_deferred.
- Возвращает:
-
trueесли ответ на метод получен;falseв противном случае
get_response
public abstract void get_response()
throws WrongTransaction Позволяет пользователю получить доступ к ответу на вызов, ранее вызванный методом send_deferred.
- Выбрасывает:
-
WrongTransaction- если методget_responseбыл вызван из области другой транзакции, чем та, из которой был первоначально отправлен запрос. См. спецификацию OMG Transaction Service для получения подробной информации.
© 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.