org.omg.PortableInterceptor.ClientRequestInfoOperations Maven / Gradle / Ivy
Show all versions of openjdk-orb Show documentation
package org.omg.PortableInterceptor;
/**
* org/omg/PortableInterceptor/ClientRequestInfoOperations.java .
* Generated by the IDL-to-Java compiler (portable), version "3.2"
* from /home/tomek/workspace/openjdk-orb/src/share/classes/org/omg/PortableInterceptor/Interceptors.idl
* Wednesday, February 1, 2023 4:15:31 PM CET
*/
/**
* 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 a BAD_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 to
* send_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 not
* LOCATION_FORWARD
, accessing this attribute will
* throw BAD_INV_ORDER
with a standard minor code of
* 14.
*
*
* @see ClientRequestInterceptor
*/
public interface ClientRequestInfoOperations extends org.omg.PortableInterceptor.RequestInfoOperations
{
/**
* Returns the object which the client called to perform the
* operation.
*
* @see #effective_target
*/
org.omg.CORBA.Object target ();
/**
* Returns the actual object on which the operation will be invoked.
* If the reply_status
is LOCATION_FORWARD
,
* then on subsequent requests, effective_target
will
* contain the forwarded IOR while target will remain unchanged.
*
* @see #target
*/
org.omg.CORBA.Object effective_target ();
/**
* 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.
*/
org.omg.IOP.TaggedProfile effective_profile ();
/**
* 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. However, the repository id of
* the exception is available in the received_exception_id
* attribute.
*
* @see #received_exception_id
*/
org.omg.CORBA.Any received_exception ();
/**
* Returns the repository id of the exception to be returned to
* the client.
*
* @see #received_exception
* @see
* PortableInterceptor
package comments for
* limitations / unimplemented features
*/
String received_exception_id ();
/**
* Returns the IOP.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.
*
* @param id The component id of the component which
* is to be returned.
* @return The IOP.TaggedComponent
obtained with the
* given identifier.
* @exception BAD_PARAM thrown, with a standard minor code of 28, if
* no component exists for the given component ID.
* @see #get_effective_components
*/
org.omg.IOP.TaggedComponent get_effective_component (int id);
/**
* Returns an array of all tagged components with the given ID from the
* profile selected for this request.
*
* @param id The component id of the components which are to be returned.
* @return An array of TaggedComponent
objects, each of
* which contains the given identifier.
* @exception BAD_PARAM thrown, with a standard minor code of 28, if
* no component exists for the given component ID.
* @see #get_effective_component
*/
org.omg.IOP.TaggedComponent[] get_effective_components (int id);
/**
* Returns the given policy in effect for this operation.
*
* @exception 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
* @param type The policy type which specifies the policy to be
* returned.
* @return The CORBA.Policy
obtained with the given type.
* @see
* PortableInterceptor
package comments for
* limitations / unimplemented features
*/
org.omg.CORBA.Policy get_request_policy (int type);
/**
* 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.
*
* @param service_context The IOP.ServiceContext
to be
* added to the request.
* @param 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.
*/
void add_request_service_context (org.omg.IOP.ServiceContext service_context, boolean replace);
} // interface ClientRequestInfoOperations