Previous | Table of Contents | Next |
The general principle of request-level bridging is as follows:
1. The original request is passed to a proxy object in the client ORB.
2. The proxy object translates the request contents (including the target object reference) to a form that will be understood by the server ORB.
3. The proxy invokes the required operation on the apparent server object.
4. Any operation result is passed back to the client via a complementary route.
Figure 14-2 Request-Level bridges are built using public ORB APIs.
The request translation involves performing object reference mapping for all object references involved in the request (the
target, explicit parameters, and perhaps implicit ones such as transaction context). As elaborated later, this translation
may also involve mappings for other domains: the security domain of CORBA::Principal parameters, type identifiers, and so
on.
It is a language mapping requirement of the CORBA Core specification that all dynamic typing APIs (e.g., Any, NamedValue)
support such manipulation of parameters even when the bridge was not created with compile-time knowledge of the data types
involved.