package org.omg.PortableInterceptor;


/**
* org/omg/PortableInterceptor/ServerRequestInfo.java .
* Generated by the IDL-to-Java compiler (portable), version "3.2"
* from /var/lib/jenkins/jobs/openjdk/jobs/openjdk9/workspace/jdk9/corba/src/java.corba/share/classes/org/omg/PortableInterceptor/Interceptors.idl
* Sunday, February 14, 2021 4:59:56 PM UTC
*/


Request Information, accessible to server-side request interceptors.

Some attributes and operations on ServerRequestInfo are not valid at all interception points. The following table shows the validity of each attribute or operation. If it is not valid, attempting to access it will result in a BAD_INV_ORDER being thrown with a standard minor code of 14.

Shows the validity of each attribute or operation
  receive_request_
service_contexts
receive_request send_reply send_exception send_other
Inherited from RequestInfo:

request_id

yes yes yes yes yes

operation

yes yes yes yes yes

arguments

no yes1 yes no2 no2

exceptions

no yes yes yes yes

contexts

no yes yes yes yes

operation_context

no yes yes no no

result

no no yes no no

response_expected

yes yes yes yes yes

sync_scope

yes yes yes yes yes
request_id yes yes yes yes yes
operation yes yes yes yes yes
arguments no yes1 yes no2 no2
exceptions no yes yes yes yes
contexts no yes yes yes yes
operation_context no yes yes no no
result no no yes no no
response_expected yes yes yes yes yes
sync_scope yes yes yes yes yes
reply_status no no yes yes yes
forward_reference no no no no yes2
get_slot yes yes yes yes yes
get_request_service_context yes no yes yes yes
get_reply_service_context no no yes yes yes
ServerRequestInfo-specific:
sending_exception no no no yes no
object_id no yes yes yes3 yes3
adapter_id no yes yes yes3 yes3
server_id no yes yes yes yes
orb_id no yes yes yes yes
adapter_name no yes yes yes yes
target_most_derived_interface no yes no4 no4 no4
get_server_policy yes yes yes yes yes
set_slot yes yes yes yes yes
target_is_a no yes no4 no4 no4
add_reply_service_context yes yes yes yes yes
  1. When ServerRequestInfo is passed to receive_request, there is an entry in the list for every argument, whether in, inout, or out. But only the in and inout arguments will be available.
  2. If the reply_status attribute is not LOCATION_FORWARD, accessing this attribute will throw BAD_INV_ORDER with a standard minor code of 14.
  3. If the servant locator caused a location forward, or thrown an exception, this attribute/operation may not be available in this interception point. NO_RESOURCES with a standard minor code of 1 will be thrown if it is not available.
  4. The operation is not available in this interception point because the necessary information requires access to the target object's servant, which may no longer be available to the ORB. For example, if the object's adapter is a POA that uses a ServantLocator, then the ORB invokes the interception point after it calls ServantLocator.postinvoke().
See Also:
  • ServerRequestInterceptor
/** * Request Information, accessible to server-side request interceptors. * <p> * Some attributes and operations on <code>ServerRequestInfo</code> are not * valid at all interception points. The following table shows the validity * of each attribute or operation. If it is not valid, attempting to access * it will result in a <code>BAD_INV_ORDER</code> being thrown with a * standard minor code of 14. * * * <table class="plain"> * <caption style="display:none">Shows the validity of each attribute or operation</caption> * <thead> * <tr> * <th>&nbsp;</th> * <th id="rec_req_ser_con" valign="bottom">receive_request_<br>service_contexts</th> * <th id="rec_req" valign="bottom">receive_request</th> * <th id="send_rep" valign="bottom">send_reply</th> * <th id="send_exc" valign="bottom">send_exception</th> * <th id="send_oth" valign="bottom">send_other</th> * </tr> * </thead> * <tbody> * * * <tr> * <td id="ri" colspan=6><i>Inherited from RequestInfo:</i></td> * </tr> * * <tr><th id="req_id"><p style="text-align:left">request_id</p></th> * <td headers="ri req_id rec_req_ser_con">yes</td> * <td headers="ri req_id rec_req">yes</td> * <td headers="ri req_id send_rep">yes</td> * <td headers="ri req_id send_exc">yes</td> * <td headers="ri req_id send_oth">yes</td></tr> * * <tr><th id="op"><p style="text-align:left">operation</p></th> * <td headers="ri op rec_req_ser_con">yes</td> * <td headers="ri op rec_req">yes</td> * <td headers="ri op send_rep">yes</td> * <td headers="ri op send_exc">yes</td> * <td headers="ri op send_oth">yes</td></tr> * * <tr><th id="args"><p style="text-align:left">arguments</p></th> * <td headers="ri args rec_req_ser_con">no </td> * <td headers="ri args rec_req">yes<sub>1</sub></td> * <td headers="ri args send_rep">yes</td> * <td headers="ri args send_exc">no<sub>2</sub></td> * <td headers="ri args send_oth">no<sub>2</sub> * </td></tr> * * <tr><th id="exps"><p style="text-align:left">exceptions</p></th> * <td headers="ri exps rec_req_ser_con">no </td> * <td headers="ri exps rec_req">yes</td> * <td headers="ri exps send_rep">yes</td> * <td headers="ri exps send_exc">yes</td> * <td headers="ri exps send_oth">yes</td></tr> * * <tr><th id="contexts"><p style="text-align:left">contexts</p></th> * <td headers="ri contexts rec_req_ser_con">no </td> * <td headers="ri contexts rec_req">yes</td> * <td headers="ri contexts send_rep">yes</td> * <td headers="ri contexts send_exc">yes</td> * <td headers="ri contexts send_oth">yes</td></tr> * * <tr><th id="op_con"><p style="text-align:left">operation_context</p></th> * <td headers="ri op_con rec_req_ser_con">no </td> * <td headers="ri op_con rec_req">yes</td> * <td headers="ri op_con send_rep">yes</td> * <td headers="ri op_con send_exc">no </td> * <td headers="ri op_con send_oth">no </td> * </tr> * * <tr><th id="result"><p style="text-align:left">result</p></th> * <td headers="ri result rec_req_ser_con">no </td> * <td headers="ri result rec_req">no </td> * <td headers="ri result send_rep">yes</td> * <td headers="ri result send_exc">no </td> * <td headers="ri result send_oth">no </td> * </tr> * * <tr><th id="res_ex"><p style="text-align:left">response_expected</p></th> * <td headers="ri res_ex rec_req_ser_con">yes</td> * <td headers="ri res_ex rec_req">yes</td> * <td headers="ri res_ex send_rep">yes</td> * <td headers="ri res_ex send_exc">yes</td> * <td headers="ri res_ex send_oth">yes</td></tr> * * <tr><th id="syn_scp"><p style="text-align:left">sync_scope</p></th> * <td headers="ri syn_scp rec_req_ser_con">yes</td> * <td headers="ri syn_scp rec_req">yes</td> * <td headers="ri syn_scp send_rep">yes</td> * <td headers="ri syn_scp send_exc">yes</td> * <td headers="ri syn_scp send_oth">yes</td></tr> * * <tr><td><b>request_id</b></td> * <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr><td><b>operation</b></td> * <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr><td><b>arguments</b></td> * <td>no </td> <td>yes<sub>1</sub></td> * <td>yes</td> <td>no<sub>2</sub></td> * <td>no<sub>2</sub> * </td></tr> * * <tr><td><b>exceptions</b></td> * <td>no </td> <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr><td><b>contexts</b></td> * <td>no </td> <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr><td><b>operation_context</b></td> * <td>no </td> <td>yes</td> <td>yes</td> <td>no </td> <td>no </td></tr> * * <tr><td><b>result</b></td> * <td>no </td> <td>no </td> <td>yes</td> <td>no </td> <td>no </td></tr> * * <tr><td><b>response_expected</b></td> * <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr><td><b>sync_scope</b></td> * <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr><td><b>reply_status</b></td> * <td>no </td> <td>no </td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr><td><b>forward_reference</b></td> * <td>no </td> <td>no </td> <td>no </td> <td>no </td> <td>yes<sub>2</sub> * </td></tr> * * <tr><td><b>get_slot</b></td> * <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr><td><b>get_request_service_context</b></td> * <td>yes</td> <td>no </td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr><td><b>get_reply_service_context</b></td> * <td>no </td> <td>no </td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr> * <td colspan=6><i>ServerRequestInfo-specific:</i></td> * </tr> * * <tr><td><b>sending_exception</b></td> * <td>no </td> <td>no </td> <td>no </td> <td>yes</td> <td>no </td></tr> * * <tr><td><b>object_id</b></td> * <td>no </td> <td>yes</td> <td>yes</td> <td>yes<sub>3</sub></td> * <td>yes<sub>3</sub> * </td></tr> * * <tr><td><b>adapter_id</b></td> * <td>no </td> <td>yes</td> <td>yes</td> <td>yes<sub>3</sub></td> * <td>yes<sub>3</sub> * </td></tr> * * <tr><td><b>server_id</b></td> * <td>no </td> <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr><td><b>orb_id</b></td> * <td>no </td> <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr><td><b>adapter_name</b></td> * <td>no </td> <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr><td><b>target_most_derived_interface</b></td> * <td>no </td> <td>yes</td> <td>no<sub>4</sub></td> * <td>no<sub>4</sub></td> * <td>no<sub>4</sub> * </td></tr> * * <tr><td><b>get_server_policy</b></td> * <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr><td><b>set_slot</b></td> * <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * * <tr><td><b>target_is_a</b></td> * <td>no </td> <td>yes</td> <td>no<sub>4</sub></td> * <td>no<sub>4</sub></td> * <td>no<sub>4</sub> * </td></tr> * * <tr><td><b>add_reply_service_context</b></td> * <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td> <td>yes</td></tr> * </tbody> * </table> * * <ol> * <li>When <code>ServerRequestInfo</code> is passed to * <code>receive_request</code>, there is an entry in the list for * every argument, whether in, inout, or out. But only the in and * inout arguments will be available.</li> * <li>If the <code>reply_status</code> attribute is not * <code>LOCATION_FORWARD</code>, accessing this attribute will throw * <code>BAD_INV_ORDER</code> with a standard minor code of 14.</li> * <li>If the servant locator caused a location forward, or thrown an * exception, this attribute/operation may not be available in this * interception point. <code>NO_RESOURCES</code> with a standard minor * code of 1 will be thrown if it is not available.</li> * <li>The operation is not available in this interception point because * the necessary information requires access to the target object's * servant, which may no longer be available to the ORB. For example, * if the object's adapter is a POA that uses a * <code>ServantLocator</code>, then the ORB invokes the interception * point after it calls <code>ServantLocator.postinvoke()</code>.</li> * </ol> * * @see ServerRequestInterceptor */
public interface ServerRequestInfo extends ServerRequestInfoOperations, org.omg.PortableInterceptor.RequestInfo, org.omg.CORBA.portable.IDLEntity { } // interface ServerRequestInfo