public abstract class ServerRequest extends Object
Request
объект в DII. ШАР ответственен за то, что создал это воплощение запроса, и предоставил его Динамической Подпрограмме Реализации (DIR). Динамический слуга (DIR) создается, реализовывая DynamicImplementation
class, у которого есть сингл invoke
метод. Этот метод принимает a ServerRequest
объект. Абстрактный class ServerRequest
определяет методы для того, чтобы получить доступ к имени метода, параметрам и контексту запроса, так же как методам для того, чтобы установить результат запроса или как возвращаемое значение или как исключение.
Тонкость с доступом к параметрам запроса - то, что DIR должен предоставить информацию о типе об ожидаемых параметрах, так как нет никакой скомпилированной информации о них. Эта информация предоставляется через NVList
, который является списком NamedValue
объекты. Каждый NamedValue
объект содержит Any
объект, у которого поочередно есть a TypeCode
объект, представляющий тип параметра.
Точно так же введите информацию, должен быть обеспечен для ответа, или для ожидаемого результата или для исключения, таким образом, методы result
и except
возьмите Any
объект в качестве параметра.
DynamicImplementation
, NVList
, NamedValue
Конструктор и Описание |
---|
ServerRequest() |
Модификатор и Тип | Метод и Описание |
---|---|
void |
arguments(NVList args)
Определяет, что параметр метода вводит и получает "в" и "inout" значения аргументов.
|
abstract Context |
ctx()
Возвращает контекстную информацию, определенную в IDL для работы, когда работа не является доступом атрибута, и определение IDL работы содержит выражение контекста; иначе это возвращает ноль
Context ссылка. |
void |
except(Any any)
Осуждаемый.
используйте set_exception ()
|
Строка |
op_name()
Осуждаемый.
используйте работу ()
|
Строка |
operation()
Броски
org.omg.CORBA.NO_IMPLEMENT исключение. |
void |
params(NVList params)
Осуждаемый.
используйте метод
arguments |
void |
result(Any any)
Осуждаемый.
используйте метод
set_result |
void |
set_exception(Any any)
Броски
org.omg.CORBA.NO_IMPLEMENT исключение. |
void |
set_result(Any any)
Броски
org.omg.CORBA.NO_IMPLEMENT исключение. |
@Deprecated public String op_name()
_get_<attribute_name>
и _set_<attribute_name>
, соответственно.public String operation()
org.omg.CORBA.NO_IMPLEMENT
исключение. Получает имя вызываемой работы. Согласно правилам IDL OMG, эти имена должны быть уникальными среди всех операций, поддерживаемых "наиболее полученным" интерфейсом этого объекта. Отметьте, что имена работы для получения и установки атрибутов _get_<attribute_name>
и _set_<attribute_name>
, соответственно.
CORBA
пакет комментирует для нереализованных функций@Deprecated public void params(NVList params)
arguments
Отметьте, что этот метод осуждается; используйте метод arguments
в его месте.
Если это не вызывает метод set_exception
, DIR должен вызвать этот метод точно однажды, даже если сигнатура метода не содержит параметров. Однажды метод arguments
или set_exception
был вызван, вызывая arguments
на том же самом ServerRequest
объект приведет к a BAD_INV_ORDER
системное исключение. DIR должен передать в к методу arguments
NVList, инициализированный с TypeCodes и Флагами, описывающими параметр, вводит для работы в порядке, в котором они появляются в спецификации IDL (слева направо). Потенциально различный NVList будет возвращен из arguments
, с "в" и "inout" значения аргументов предоставляется. Если это не вызывает метод set_exception
, DIR должен предоставить возвращенный NVList возвращаемые значения для любого параметры перед возвратом, и может также изменить возвращаемые значения для любых "inout" параметров.
params
- параметры метода, в форме NVList
объектpublic void arguments(NVList args)
set_exception
, DIR должен вызвать этот метод точно однажды, даже если сигнатура метода не содержит параметров. Однажды метод arguments
или set_exception
был вызван, вызывая arguments
на том же самом ServerRequest
объект приведет к a BAD_INV_ORDER
системное исключение. DIR должен передать в к методу arguments
NVList, инициализированный с TypeCodes и Флагами, описывающими параметр, вводит для работы в порядке, в котором они появляются в спецификации IDL (слева направо). Потенциально различный NVList будет возвращен из arguments
, с "в" и "inout" значения аргументов предоставляется. Если это не вызывает метод set_exception
, DIR должен предоставить возвращенный NVList возвращаемые значения для любого параметры перед возвратом, и это может также изменить возвращаемые значения для любых "inout" параметров.args
- параметры метода, в форме NVListCORBA
пакет комментирует для нереализованных функций@Deprecated public void result(Any any)
set_result
Отметьте, что этот метод осуждается; используйте метод set_result
в его месте.
Если метод set_exception
вызывается, если у вызванного метода есть непустой тип результата, метод set_result
должен быть вызван точно однажды возвратами DIR. Если у работы есть пустой тип результата, метод set_result
май дополнительно быть вызванным однажды с Any
возразите, чей тип tk_void
. Вызов метода set_result
перед методом arguments
был вызван или после метода set_result
или set_exception
был вызван приведет к исключению BAD_INV_ORDER. Вызов метода set_result
не ранее вызвав метод ctx
то, когда работа IDL содержит выражение контекста, или когда NVList, который передают к параметрам, не описывал все параметры, которые передает клиент, может привести к УПОРЯДОЧИВАТЬ системному исключению.
any
- Any
объект, содержащий возвращаемое значение, которое будет установленоpublic void set_result(Any any)
org.omg.CORBA.NO_IMPLEMENT
исключение. Определяет любое возвращаемое значение для вызова. Если метод set_exception
вызывается, если у вызванного метода есть непустой тип результата, метод set_result
должен быть вызван точно однажды возвратами DIR. Если у работы есть пустой тип результата, метод set_result
май дополнительно быть вызванным однажды с Any
возразите, чей тип tk_void
. Вызов метода set_result
перед методом arguments
был вызван или после метода set_result
или set_exception
был вызван приведет к исключению BAD_INV_ORDER. Вызов метода set_result
не ранее вызвав метод ctx
то, когда работа IDL содержит выражение контекста, или когда NVList, который передают к параметрам, не описывал все параметры, которые передает клиент, может привести к УПОРЯДОЧИВАТЬ системному исключению.
any
- Any
объект, содержащий возвращаемое значение, которое будет установленоCORBA
пакет комментирует для нереализованных функций@Deprecated public void except(Any any)
any
- Any
объект, содержащий исключениеpublic void set_exception(Any any)
org.omg.CORBA.NO_IMPLEMENT
исключение. Возвращает данное исключение клиенту. Этот метод вызывается DIR, который может вызвать его в любое время. Any
объект, который передают к этому методу, должен содержать или системное исключение или одно из пользовательских исключений, определенных в определении IDL вызванной работы. Передача в Any
объект, который не содержит исключение, заставит системное исключение BAD_PARAM быть брошенным. Передача в не включенном в список пользовательском исключении приведет или к DIR, получающему системное исключение BAD_PARAM или к клиенту, получающему системное исключение UNKNOWN_EXCEPTION.
any
- Any
объект, содержащий исключениеBAD_PARAM
- если данный Any
объект не содержит исключение, или исключение является не включенным в список пользовательским исключениемUNKNOWN_EXCEPTION
- если данное исключение является не включенным в список пользовательским исключением, и DIR не получал исключение BAD_PARAMCORBA
пакет комментирует для нереализованных функцийpublic abstract Context ctx()
Context
ссылка. Вызов метода ctx
перед методом arguments
был вызван или после метода ctx
, set_result
, или set_exception
был вызван приведет к системному исключению BAD_INV_ORDER.BAD_INV_ORDER
- если (1) метод ctx
вызывается перед методом arguments
или (2) метод ctx
вызывается после вызова set_result
или set_exception
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92