Spec-Zone.ru › OpenJDK 8

Интерфейс RequestInfoOperations

Все известные подинтерфейсы:
ClientRequestInfo, ClientRequestInfoOperations, RequestInfo, ServerRequestInfo, ServerRequestInfoOperations

public interface RequestInfoOperations

Информация о запросе, доступная для обработчиков.

Каждая точка перехвата получает объект, через который обработчик может получить информацию о запросе. Точки перехвата на стороне клиента и сервера связаны с разной информацией, поэтому существуют два объекта информации: ClientRequestInfo передается точкам перехвата на стороне клиента и ServerRequestInfo передается точкам перехвата на стороне сервера. Однако есть информация, общая для обоих, поэтому они оба наследуются от общего интерфейса: RequestInfo.

См. также:
ClientRequestInfo, ServerRequestInfo

Методы

Модификатор и тип Метод и описание
Parameter[] arguments()

Возвращает массив объектов Parameter, содержащих аргументы вызываемой операции.

String[] contexts()

Возвращает массив объектов String, описывающих контексты, которые могут быть переданы при вызове этой операции.

TypeCode[] exceptions()

Возвращает массив объектов TypeCode, описывающих TypeCode исключений пользователя, которые может вызвать этот вызов операции.

Object forward_reference()

Содержит объект, которому будет передан запрос, если атрибут reply_status имеет значение LOCATION_FORWARD.

ServiceContext get_reply_service_context(int id)

Возвращает копию контекста сервиса с заданным идентификатором, связанного с ответом.

ServiceContext get_request_service_context(int id)

Возвращает копию контекста сервиса с заданным идентификатором, связанного с запросом.

Any get_slot(int id)

Возвращает данные из заданного слота PortableInterceptor.Current, который находится в области видимости запроса.

String[] operation_context()

Возвращает массив объектов String, содержащих контексты, отправленные в запросе.

String operation()

Возвращает имя вызываемой операции.

short reply_status()

Описывает состояние результата вызова операции.

int request_id()

Возвращает идентификатор, уникально определяющий последовательность активного запроса/ответа.

boolean response_expected()

Указывает, ожидается ли ответ.

Any result()

Возвращает любой объект, содержащий результат вызова операции.

short sync_scope()

Определяет, насколько далеко запрос должен продвинуться, прежде чем управление вернется клиенту.

Методы

request_id

int request_id()

Возвращает идентификатор, уникально определяющий активную последовательность запрос/ответ. После завершения последовательности запрос/ответ этот идентификатор может быть повторно использован. Обратите внимание, что этот идентификатор не совпадает с идентификатором GIOP request_id. Если в качестве механизма транспорта используется GIOP, то эти идентификаторы могут совпадать, но это не гарантируется и не требуется.

operation

String operation()

Возвращает имя вызываемой операции.

arguments

Parameter[] arguments()

Возвращает массив объектов Parameter, содержащих аргументы вызываемой операции. Если аргументов нет, этот атрибут будет массивом нулевой длины.

Не все среды предоставляют доступ к аргументам. Например, в портативных Java-связях аргументы недоступны. В этих средах при обращении к этому атрибуту будет брошено исключение NO_RESOURCES со стандартным кодом ошибки 1.

Примечание: Аргументы доступны для вызовов DSI/DII.

Throws:
NO_RESOURCES - вызывается, если аргументы недоступны.
См. также:
PortableInterceptor комментарии к пакету для ограничений/нереализованных функций

exceptions

TypeCode[] exceptions()

Возвращает массив объектов TypeCode описывающих TypeCode пользовательских исключений, которые может вызвать данное обращение к операции. Если пользовательских исключений нет, возвращается массив нулевой длины.

Не все среды предоставляют доступ к списку исключений. Например, в портативных Java-связях список исключений недоступен. В этих средах при обращении к этому атрибуту будет брошено исключение NO_RESOURCES со стандартным кодом ошибки 1.

Примечание: Исключения доступны для вызовов DSI/DII.

Throws:
NO_RESOURCES - вызывается, если исключения недоступны.
См. также:
PortableInterceptor комментарии к пакету для ограничений/нереализованных функций

contexts

String[] contexts()

Возвращает массив объектов String описывающих контексты, которые могут быть переданы при вызове операции. Если контекстов нет, возвращается массив нулевой длины.

Не все среды предоставляют доступ к списку контекстов. Например, в портативных Java-связях список контекстов недоступен. В этих средах при обращении к этому атрибуту будет брошено исключение NO_RESOURCES со стандартным кодом ошибки 1.

Примечание: Контексты доступны для вызовов DSI/DII.

Throws:
NO_RESOURCES - вызывается, если контексты недоступны.
См. также:
PortableInterceptor комментарии к пакету для ограничений/нереализованных функций

operation_context

String[] operation_context()

Возвращает массив объектов String, содержащих контексты, отправленные в запросе.

Не все среды предоставляют доступ к контексту. Например, в портативных Java-связях контекст недоступен. В этих средах при обращении к этому атрибуту будет брошено исключение NO_RESOURCES со стандартным кодом ошибки 1.

Примечание: operation_context доступен для вызовов DSI/DII.

Throws:
NO_RESOURCES - вызывается, если контекст операции недоступен.
См. также:
PortableInterceptor комментарии к пакету для ограничений/нереализованных функций

result

Any result()

Возвращает значение, содержащее результат вызова операции. Если тип возвращаемого значения операции void, этот атрибут будет содержать тип any с значением TCKind и без значения tk_void.

Не все среды предоставляют доступ к результату. Например, в портативных Java-связях результат недоступен. В этих средах при обращении к этому атрибуту будет брошено исключение NO_RESOURCES со стандартным кодом ошибки 1.

Примечание: Результат доступен для вызовов DSI/DII.

Throws:
NO_RESOURCES - вызывается, если результат недоступен.
См. также:
PortableInterceptor комментарии к пакету для ограничений/нереализованных функций

response_expected

boolean response_expected()

Указывает, ожидается ли ответ.

В клиенте ответ не возвращается, когда response_expected ложно, поэтому receive_reply не может быть вызван. receive_other вызывается, если не происходит исключения, в противном случае вызывается receive_exception.

В клиенте, внутри send_poll, этот атрибут имеет значение true.

sync_scope

short sync_scope()

Определяет, насколько далеко запрос должен быть обработан перед возвращением управления клиенту. Это определяется в спецификации обмена сообщениями и актуально только тогда, когда response_expected имеет значение false. Если response_expected имеет значение true, значение sync_scope не определено. Этот атрибут может иметь следующие значения:

  • Messaging.SYNC_NONE
  • Messaging.SYNC_WITH_TRANSPORT
  • Messaging.SYNC_WITH_SERVER
  • Messaging.SYNC_WITH_TARGET
На сервере для всех областей, ответ будет создан из результата вызова целевой операции, но ответ не вернется клиенту. Хотя он и не возвращается клиенту, он выполняется, поэтому выполняются обычные точки перехвата на стороне сервера (т. е., receive_request_service_contexts, receive_request, send_reply или send_exception).

Для SYNC_WITH_SERVER и SYNC_WITH_TARGET, сервер отправляет пустой ответ клиенту до вызова целевой операции. Этот ответ не перехватывается точками перехвата на стороне сервера.

См. также:
PortableInterceptor комментарии к пакету для ограничений/нереализованных функций

reply_status

short reply_status()

Описывает состояние результата вызова операции. Возвращаемое значение может быть одним из следующих:

  • PortableInterceptor.SUCCESSFUL
  • PortableInterceptor.SYSTEM_EXCEPTION
  • PortableInterceptor.USER_EXCEPTION
  • PortableInterceptor.LOCATION_FORWARD
  • PortableInterceptor.TRANSPORT_RETRY
На стороне клиента:
  • Внутри точки перехвата receive_reply, это будет только SUCCESSFUL
  • .
  • Внутри точки перехвата receive_exception, это будет либо SYSTEM_EXCEPTION или USER_EXCEPTION.
  • Внутри точки перехвата receive_other это будет любое из: SUCCESSFUL, LOCATION_FORWARD, или TRANSPORT_RETRY. SUCCESSFUL означает, что асинхронный запрос успешно возвращен. LOCATION_FORWARD означает, что ответ вернулся со статусом LOCATION_FORWARD. TRANSPORT_RETRY означает, что механизм транспорта указал на повторную попытку — например, ответ GIOP со статусом NEEDS_ADDRESSING_MODE.
На стороне сервера:
  • Внутри точки перехвата send_reply это будет только SUCCESSFUL.
  • Внутри точки перехвата send_exception это будет либо SYSTEM_EXCEPTION или USER_EXCEPTION.
  • Внутри точки перехвата send_other этот атрибут будет любым из: SUCCESSFUL, или LOCATION_FORWARD. SUCCESSFUL означает, что асинхронный запрос успешно возвращен. LOCATION_FORWARD означает, что ответ вернулся со статусом LOCATION_FORWARD.

См. также:
SUCCESSFUL, SYSTEM_EXCEPTION, USER_EXCEPTION, LOCATION_FORWARD, TRANSPORT_RETRY

forward_reference

Object forward_reference()

Содержит объект, на который будет перенаправлен запрос, если атрибут reply_status имеет значение LOCATION_FORWARD. Не определено, произойдет ли фактическое перенаправление запроса.

get_slot

Any get_slot(int id)
      throws InvalidSlot

Возвращает данные из заданного слота PortableInterceptor.Current в рамках запроса.

Если заданный слот не установлен, возвращается any, содержащий тип кода со значением TCKind tk_null.

Параметры:
id - SlotId слота, который должен быть возвращен.
Возвращает:
Данные слота в форме any, полученные с заданным идентификатором.
Throws:
InvalidSlot - вызывается, если ID не определяет выделенный слот.
См. также:
Current

get_request_service_context

ServiceContext get_request_service_context(int id)

Возвращает копию контекста службы с заданным ID, связанного с запросом.

Параметры:
id - IOP.ServiceId контекста службы, который должен быть возвращен.
Возвращает:
Контекст службы, полученный с заданным идентификатором.
Throws:
BAD_PARAM - вызывается со стандартным кодом ошибки 26, если контекст службы запроса не содержит записи для этого ID.

get_reply_service_context

ServiceContext get_reply_service_context(int id)

Возвращает копию контекста службы с заданным ID, связанного с ответом.

Параметры:
id - IOP.ServiceId контекста службы, который должен быть возвращен.
Возвращает:
Контекст службы, полученный с заданным идентификатором.
Throws:
BAD_PARAM - вызывается со стандартным кодом ошибки 26, если контекст службы запроса не содержит записи для этого ID.

© 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.

Spec-Zone.ru

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