-
- All Superinterfaces:
RequestInfoOperations
- All Known Subinterfaces:
ClientRequestInfo
public interface ClientRequestInfoOperations extends RequestInfoOperations
Request Information, accessible to client-side request interceptors.Some attributes and operations on
ClientRequestInfo
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 aBAD_INV_ORDER
being thrown with a standard minor code of 14.send_request send_poll receive_reply receive_exception receive_other Inherited from RequestInfo: request_id
yes yes yes yes yes operation
yes yes yes yes yes arguments
yes1 no yes no no exceptions
yes no yes yes yes contexts
yes no yes yes yes operation_context
yes no yes yes yes result
no no yes no no response_expected
yes yes yes yes yes sync_scope
yes no 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 ClientRequestInfo-specific: target
yes yes yes yes yes effective_target
yes yes yes yes yes effective_profile
yes yes yes yes yes received_exception
no no no yes no received_exception_id
no no no yes no get_effective_component
yes no yes yes yes get_effective_components
yes no yes yes yes get_request_policy
yes no yes yes yes add_request_service_context
yes no no no no - When
ClientRequestInfo
is passed tosend_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. - If the
reply_status
atribute is notLOCATION_FORWARD
, accessing this attribute will throwBAD_INV_ORDER
with a standard minor code of 14.
- See Also:
ClientRequestInterceptor
-
-
Method Summary
All Methods Instance Methods Abstract Methods Modifier and Type Method Description void
add_request_service_context(ServiceContext service_context, boolean replace)
Allows Interceptors to add service contexts to the request.TaggedProfile
effective_profile()
Returns the profile that will be used to send the request.Object
effective_target()
Returns the actual object on which the operation will be invoked.TaggedComponent
get_effective_component(int id)
Returns theIOP.TaggedComponent
with the given ID from the profile selected for this request.TaggedComponent[]
get_effective_components(int id)
Returns an array of all tagged components with the given ID from the profile selected for this request.Policy
get_request_policy(int type)
Returns the given policy in effect for this operation.Any
received_exception()
Returns an any which contains the exception to be returned to the client.String
received_exception_id()
Returns the repository id of the exception to be returned to the client.Object
target()
Returns the object which the client called to perform the operation.-
Methods inherited from interface org.omg.PortableInterceptor.RequestInfoOperations
arguments, contexts, exceptions, forward_reference, get_reply_service_context, get_request_service_context, get_slot, operation, operation_context, reply_status, request_id, response_expected, result, sync_scope
-
-
-
-
Method Detail
-
target
Object target()
Returns the object which the client called to perform the operation.- See Also:
effective_target()
-
effective_target
Object effective_target()
Returns the actual object on which the operation will be invoked. If thereply_status
isLOCATION_FORWARD
, then on subsequent requests,effective_target
will contain the forwarded IOR while target will remain unchanged.- See Also:
target()
-
effective_profile
TaggedProfile effective_profile()
Returns the profile that will be used to send the request. If a location forward has occurred for this operation's object and that object's profile changed accordingly, then this profile will be that located profile.
-
received_exception
Any received_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 exceptionUNKNOWN
with a standard minor code of 1. However, the repository id of the exception is available in thereceived_exception_id
attribute.- See Also:
received_exception_id()
-
received_exception_id
String received_exception_id()
Returns the repository id of the exception to be returned to the client.
-
get_effective_component
TaggedComponent get_effective_component(int id)
Returns theIOP.TaggedComponent
with the given ID from the profile selected for this request.If there is more than one component for a given component ID, it is undefined which component this operation returns. If there is more than one component for a given component ID,
get_effective_components
should be called instead.- Parameters:
id
- The component id of the component which is to be returned.- Returns:
- The
IOP.TaggedComponent
obtained with the given identifier. - Throws:
BAD_PARAM
- thrown, with a standard minor code of 28, if no component exists for the given component ID.- See Also:
get_effective_components(int)
-
get_effective_components
TaggedComponent[] get_effective_components(int id)
Returns an array of all tagged components with the given ID from the profile selected for this request.- Parameters:
id
- The component id of the components which are to be returned.- Returns:
- An array of
TaggedComponent
objects, each of which contains the given identifier. - Throws:
BAD_PARAM
- thrown, with a standard minor code of 28, if no component exists for the given component ID.- See Also:
get_effective_component(int)
-
get_request_policy
Policy get_request_policy(int type)
Returns the given policy in effect for this operation.- Parameters:
type
- The policy type which specifies the policy to be returned.- Returns:
- The
CORBA.Policy
obtained with the given type. - Throws:
INV_POLICY
- thrown, with a standard minor code of 1, if the policy type is not valid either because the specified type is not supported by this ORB or because a policy object of that type is not associated with this Object- See Also:
-
PortableInterceptor
package comments for limitations / unimplemented features
-
add_request_service_context
void add_request_service_context(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
- TheIOP.ServiceContext
to be added to the request.replace
- Indicates the behavior of this operation when a service context already exists with the given ID. If false, thenBAD_INV_ORDER
with a standard minor code of 15 is thrown. If true, then the existing service context is replaced by the new one.
-
-