Previous | Table of Contents | Next |
Bridging of an invocation between a client in one domain and a server object in another domain can be mediated through a standardized
mechanism, or done immediately using nonstandard ones.
The question of how this bridging is constructed is broadly independent of whether the bridging uses a standardized mechanism.
There are two possible options for where the bridge components are located:
1. Code inside the ORB may perform the necessary translation or mappings; this is termed in-line bridging.
2. Application style code outside the ORB can perform the translation or mappings; this is termed request-level bridging.
Request-level bridges that mediate through a common protocol (using networking, shared memory, or some other IPC provided
by the host operating system) between distinct execution environments will involve components, one in each ORB, known as “half
bridges.?
When that mediation is purely internal to one execution environment, using a shared programming environment’s binary interfaces
to CORBA- and OMG-IDL-defined data types, this is known as a “full bridge?1. From outside the execution environment this will
appear identical to some kinds of in-line bridging, since only that environment knows the construction techniques used. However,
full bridges more easily support portable policy mediation components, because of their use of only standard CORBA programming
interfaces.
Network protocols may be used immediately “in-line,? or to mediate between request-level half bridges. The General Inter-ORB
Protocol can be used in either manner. In addition, this specification provides for Environment Specific Inter-ORB Protocols
(ESIOP), allowing for alternative mediation mechanisms.
Note that mediated, request-level half-bridges can be built by anyone who has access to an ORB, without needing information
about the internal construction of that ORB. Immediate-mode request-level half-bridges (i.e., ones using nonstandard mediation
mechanisms) can be built similarly without needing information about ORB internals. Only in-line bridges (using either standard
or nonstandard mediation mechanisms) need potentially proprietary information about ORB internals.
1. Special initialization supporting object referencing domains (e.g., two protocols) to be exposed to application programmers
to support construction of this style bridge.