org.omg.PortableInterceptor
Interface ServerRequestInfoOperations

All Superinterfaces:
RequestInfoOperations sample code for org.omg.PortableInterceptor.RequestInfoOperations definition code for org.omg.PortableInterceptor.RequestInfoOperations
All Known Subinterfaces:
ServerRequestInfo sample code for org.omg.PortableInterceptor.ServerRequestInfo definition code for org.omg.PortableInterceptor.ServerRequestInfo

public interface ServerRequestInfoOperations
extends RequestInfoOperations sample code for org.omg.PortableInterceptor.RequestInfoOperations definition code for org.omg.PortableInterceptor.RequestInfoOperations

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.

  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()
  5. .

See Also:
ServerRequestInterceptor sample code for org.omg.PortableInterceptor.ServerRequestInterceptor definition code for org.omg.PortableInterceptor.ServerRequestInterceptor

Method Summary
 byte[] adapter_id sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.adapter_id() definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.adapter_id() ()
          Returns the opaque identifier for the object adapter.
 String sample code for java.lang.String definition code for java.lang.String [] adapter_name sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.adapter_name() definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.adapter_name() ()
          Returns the sequence of strings that identifies the object adapter instance that is handling this request.
 void add_reply_service_context sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.add_reply_service_context(org.omg.IOP.ServiceContext, boolean) definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.add_reply_service_context(org.omg.IOP.ServiceContext, boolean) (ServiceContext sample code for org.omg.IOP.ServiceContext definition code for org.omg.IOP.ServiceContext  service_context, boolean replace)
          Allows Interceptors to add service contexts to the request.
 Policy sample code for org.omg.CORBA.Policy definition code for org.omg.CORBA.Policy get_server_policy sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.get_server_policy(int) definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.get_server_policy(int) (int type)
          Returns the policy in effect for this operation for the given policy type.
 byte[] object_id sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.object_id() definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.object_id() ()
          Returns the opaque object_id describing the target of the operation invocation.
 String sample code for java.lang.String definition code for java.lang.String orb_id sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.orb_id() definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.orb_id() ()
          Returns the ID that was used to create the ORB.
 Any sample code for org.omg.CORBA.Any definition code for org.omg.CORBA.Any sending_exception sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.sending_exception() definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.sending_exception() ()
          Returns an any which contains the exception to be returned to the client.
 String sample code for java.lang.String definition code for java.lang.String server_id sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.server_id() definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.server_id() ()
          Returns the server ID that was specified on ORB::init using the -ORBServerId argument.
 void set_slot sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.set_slot(int, org.omg.CORBA.Any) definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.set_slot(int, org.omg.CORBA.Any) (int id, Any sample code for org.omg.CORBA.Any definition code for org.omg.CORBA.Any  data)
          Allows an Interceptor to set a slot in the PortableInterceptor.Current that is in the scope of the request.
 boolean target_is_a sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.target_is_a(java.lang.String) definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.target_is_a(java.lang.String) (String sample code for java.lang.String definition code for java.lang.String  id)
          Returns true if the servant is the given repository id, false if it is not.
 String sample code for java.lang.String definition code for java.lang.String target_most_derived_interface sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.target_most_derived_interface() definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.target_most_derived_interface() ()
          Returns the repository id for the most derived interface of the servant.
 
Methods inherited from interface org.omg.PortableInterceptor.RequestInfoOperations sample code for org.omg.PortableInterceptor.RequestInfoOperations definition code for org.omg.PortableInterceptor.RequestInfoOperations
arguments sample code for org.omg.PortableInterceptor.RequestInfoOperations.arguments() definition code for org.omg.PortableInterceptor.RequestInfoOperations.arguments() , contexts sample code for org.omg.PortableInterceptor.RequestInfoOperations.contexts() definition code for org.omg.PortableInterceptor.RequestInfoOperations.contexts() , exceptions sample code for org.omg.PortableInterceptor.RequestInfoOperations.exceptions() definition code for org.omg.PortableInterceptor.RequestInfoOperations.exceptions() , forward_reference sample code for org.omg.PortableInterceptor.RequestInfoOperations.forward_reference() definition code for org.omg.PortableInterceptor.RequestInfoOperations.forward_reference() , get_reply_service_context sample code for org.omg.PortableInterceptor.RequestInfoOperations.get_reply_service_context(int) definition code for org.omg.PortableInterceptor.RequestInfoOperations.get_reply_service_context(int) , get_request_service_context sample code for org.omg.PortableInterceptor.RequestInfoOperations.get_request_service_context(int) definition code for org.omg.PortableInterceptor.RequestInfoOperations.get_request_service_context(int) , get_slot sample code for org.omg.PortableInterceptor.RequestInfoOperations.get_slot(int) definition code for org.omg.PortableInterceptor.RequestInfoOperations.get_slot(int) , operation_context sample code for org.omg.PortableInterceptor.RequestInfoOperations.operation_context() definition code for org.omg.PortableInterceptor.RequestInfoOperations.operation_context() , operation sample code for org.omg.PortableInterceptor.RequestInfoOperations.operation() definition code for org.omg.PortableInterceptor.RequestInfoOperations.operation() , reply_status sample code for org.omg.PortableInterceptor.RequestInfoOperations.reply_status() definition code for org.omg.PortableInterceptor.RequestInfoOperations.reply_status() , request_id sample code for org.omg.PortableInterceptor.RequestInfoOperations.request_id() definition code for org.omg.PortableInterceptor.RequestInfoOperations.request_id() , response_expected sample code for org.omg.PortableInterceptor.RequestInfoOperations.response_expected() definition code for org.omg.PortableInterceptor.RequestInfoOperations.response_expected() , result sample code for org.omg.PortableInterceptor.RequestInfoOperations.result() definition code for org.omg.PortableInterceptor.RequestInfoOperations.result() , sync_scope sample code for org.omg.PortableInterceptor.RequestInfoOperations.sync_scope() definition code for org.omg.PortableInterceptor.RequestInfoOperations.sync_scope()
 

Method Detail

sending_exception sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.sending_exception() definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.sending_exception()

Any sample code for org.omg.CORBA.Any definition code for org.omg.CORBA.Any  sending_exception()
Returns an any which contains the exception to be returned to the client.

If the exception is a user exception which cannot be inserted into an any (e.g., it is unknown or the bindings don't provide the TypeCode), then this attribute will be an any containing the system exception UNKNOWN with a standard minor code of 1.

See Also:
PortableInterceptor package comments for limitations / unimplemented features

object_id sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.object_id() definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.object_id()

byte[] object_id()
Returns the opaque object_id describing the target of the operation invocation.


adapter_id sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.adapter_id() definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.adapter_id()

byte[] adapter_id()
Returns the opaque identifier for the object adapter.


server_id sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.server_id() definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.server_id()

String sample code for java.lang.String definition code for java.lang.String  server_id()
Returns the server ID that was specified on ORB::init using the -ORBServerId argument.


orb_id sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.orb_id() definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.orb_id()

String sample code for java.lang.String definition code for java.lang.String  orb_id()
Returns the ID that was used to create the ORB.


adapter_name sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.adapter_name() definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.adapter_name()

String sample code for java.lang.String definition code for java.lang.String [] adapter_name()
Returns the sequence of strings that identifies the object adapter instance that is handling this request.


target_most_derived_interface sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.target_most_derived_interface() definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.target_most_derived_interface()

String sample code for java.lang.String definition code for java.lang.String  target_most_derived_interface()
Returns the repository id for the most derived interface of the servant.


get_server_policy sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.get_server_policy(int) definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.get_server_policy(int)

Policy sample code for org.omg.CORBA.Policy definition code for org.omg.CORBA.Policy  get_server_policy(int type)
Returns the policy in effect for this operation for the given policy type. The returned CORBA.Policy object shall only be a policy whose type was registered via register_policy_factory.

Parameters:
type - The CORBA.PolicyType which specifies the policy to be returned.
Returns:
The CORBA.Policy obtained with the given policy type.
Throws:
INV_POLICY - thrown, with a standard minor code of 2, if a policy for the given type was not registered via register_policy_factory.
See Also:
ORBInitInfoOperations.register_policy_factory(int, org.omg.PortableInterceptor.PolicyFactory) sample code for org.omg.PortableInterceptor.ORBInitInfoOperations.register_policy_factory(int, org.omg.PortableInterceptor.PolicyFactory) definition code for org.omg.PortableInterceptor.ORBInitInfoOperations.register_policy_factory(int, org.omg.PortableInterceptor.PolicyFactory)

set_slot sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.set_slot(int, org.omg.CORBA.Any) definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.set_slot(int, org.omg.CORBA.Any)

void set_slot(int id,
              Any sample code for org.omg.CORBA.Any definition code for org.omg.CORBA.Any  data)
              throws InvalidSlot sample code for org.omg.PortableInterceptor.InvalidSlot definition code for org.omg.PortableInterceptor.InvalidSlot 
Allows an Interceptor to set a slot in the PortableInterceptor.Current that is in the scope of the request. If data already exists in that slot, it will be overwritten.

Parameters:
id - The id of the slot.
data - The data, in the form of an any, to store in that slot.
Throws:
InvalidSlot sample code for org.omg.PortableInterceptor.InvalidSlot definition code for org.omg.PortableInterceptor.InvalidSlot - thrown if the ID does not define an allocated slot.
See Also:
Current sample code for org.omg.PortableInterceptor.Current definition code for org.omg.PortableInterceptor.Current

target_is_a sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.target_is_a(java.lang.String) definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.target_is_a(java.lang.String)

boolean target_is_a(String sample code for java.lang.String definition code for java.lang.String  id)
Returns true if the servant is the given repository id, false if it is not.

Parameters:
id - The caller wants to know if the servant is this repository id.
Returns:
Is the servant the given RepositoryId?

add_reply_service_context sample code for org.omg.PortableInterceptor.ServerRequestInfoOperations.add_reply_service_context(org.omg.IOP.ServiceContext, boolean) definition code for org.omg.PortableInterceptor.ServerRequestInfoOperations.add_reply_service_context(org.omg.IOP.ServiceContext, boolean)

void add_reply_service_context(ServiceContext sample code for org.omg.IOP.ServiceContext definition code for org.omg.IOP.ServiceContext  service_context,
                               boolean replace)
Allows Interceptors to add service contexts to the request.

There is no declaration of the order of the service contexts. They may or may not appear in the order that they are added.

Parameters:
service_context - The IOP.ServiceContext to add to the reply.
replace - Indicates the behavior of this operation when a service context already exists with the given ID. If false, then BAD_INV_ORDER with a standard minor code of 15 is thrown. If true, then the existing service context is replaced by the new one.
Throws:
BAD_INV_ORDER - thrown, with a standard minor code of 15, if replace is false and a service context already exists with the given ID.