public interface ServerRequestInfo
服务器端请求 interceptor 可访问的请求信息。
某些 ServerRequestInfo
上的属性和操作并不是对所有的截取点都有效。下表展示了每个属性或操作的有效性。如果无效,则试图访问它将导致抛出 BAD_INV_ORDER
,并带有标准次要代码 14。
receive_request_ service_contexts |
receive_request | send_reply | send_exception | send_other | |
---|---|---|---|---|---|
继承自 RequestInfo: | |||||
request_id |
是 | 是 | 是 | 是 | 是 |
operation |
是 | 是 | 是 | 是 | 是 |
arguments |
否 | 是1 | 是 | 否2 | 否2 |
exceptions |
否 | 是 | 是 | 是 | 是 |
contexts |
否 | 是 | 是 | 是 | 是 |
operation_context |
否 | 是 | 是 | 否 | 否 |
result |
否 | 否 | 是 | 否 | 否 |
response_expected |
是 | 是 | 是 | 是 | 是 |
sync_scope |
是 | 是 | 是 | 是 | 是 |
request_id | 是 | 是 | 是 | 是 | 是 |
operation | 是 | 是 | 是 | 是 | 是 |
arguments | 否 | 是1 | 是 | 否2 | 否2 |
exceptions | 否 | 是 | 是 | 是 | 是 |
contexts | 否 | 是 | 是 | 是 | 是 |
operation_context | 否 | 是 | 是 | 否 | 否 |
result | 否 | 否 | 是 | 否 | 否 |
response_expected | 是 | 是 | 是 | 是 | 是 |
sync_scope | 是 | 是 | 是 | 是 | 是 |
reply_status | 否 | 否 | 是 | 是 | 是 |
forward_reference | 否 | 否 | 否 | 否 | 是2 |
get_slot | 是 | 是 | 是 | 是 | 是 |
get_request_service_context | 是 | 否 | 是 | 是 | 是 |
get_reply_service_context | 否 | 否 | 是 | 是 | 是 |
特定于 ServerRequestInfo: | |||||
sending_exception | 否 | 否 | 否 | 是 | 否 |
object_id | 否 | 是 | 是 | 是3 | 是3 |
adapter_id | 否 | 是 | 是 | 是3 | 是3 |
server_id | 否 | 是 | 是 | 是 | 是 |
orb_id | 否 | 是 | 是 | 是 | 是 |
adapter_name | 否 | 是 | 是 | 是 | 是 |
target_most_derived_interface | 否 | 是 | 否4 | 否4 | 否4 |
get_server_policy | 是 | 是 | 是 | 是 | 是 |
set_slot | 是 | 是 | 是 | 是 | 是 |
target_is_a | 否 | 是 | 否4 | 否4 | 否4 |
add_reply_service_context | 是 | 是 | 是 | 是 | 是 |
ServerRequestInfo
传递给 receive_request
时,对于每个参数(无论它是 in、inout 还是 out),列表中都有一个对应的条目。但只有 in 和 inout 参数可用。reply_status
属性不是 LOCATION_FORWARD
,则访问此属性将抛出 BAD_INV_ORDER
,并带有标准次要代码 14。NO_RESOURCES
,并带有标准次要代码 1。ServantLocator
的 POA,则 ORB 将在调用 ServantLocator.postinvoke()
后调用该截取点。
ServerRequestInterceptor
方法摘要 |
---|
从接口 org.omg.PortableInterceptor.ServerRequestInfoOperations 继承的方法 |
---|
adapter_id, adapter_name, add_reply_service_context, get_server_policy, object_id, orb_id, sending_exception, server_id, set_slot, target_is_a, target_most_derived_interface |
从接口 org.omg.PortableInterceptor.RequestInfoOperations 继承的方法 |
---|
arguments, contexts, exceptions, forward_reference, get_reply_service_context, get_request_service_context, get_slot, operation_context, operation, reply_status, request_id, response_expected, result, sync_scope |
从接口 org.omg.CORBA.Object 继承的方法 |
---|
_create_request, _create_request, _duplicate, _get_domain_managers, _get_interface_def, _get_policy, _hash, _is_a, _is_equivalent, _non_existent, _release, _request, _set_policy_override |