Chapter 20 corba fm



Download 234.39 Kb.
View original pdf
Page14/28
Date06.12.2022
Size234.39 Kb.
#60082
1   ...   10   11   12   13   14   15   16   17   ...   28
Chapter 20 CORBA
Soft computing Lab Mannual, Distributed systems
Dynamic skeletons
◊ Again, as explained in Section 5.5, it maybe necessary to add to a server a CORBA object whose interface was unknown when the server was compiled.
If a server uses dynamic skeletons, then it can accept invocations on the interface of a
CORBA object for which it has no skeleton. When a dynamic skeleton receives an invocation, it inspects the contents of the request to discover its target object, the method to be invoked and the arguments. It then invokes the target.
Legacy code
◊ The term legacy code refers to existing code that was not designed with distributed objects in mind. Apiece of legacy code maybe made into a CORBA object by defining an IDL interface for it and providing an implementation of an appropriate object adapter and the necessary skeletons CORBA Interface Definition Language
The CORBA Interface Definition Language, IDL, provides facilities for defining modules, interfaces, types, attributes and method signatures. We have shown examples of all of the above, apart from modules, in Figures 5.2 and 20.1. IDL has the same lexical rules as C+ but has additional keywords to support distribution, for example interface,
any, attribute, in, out, inout, readonly, raises. It also allows standard C+ pre- processing facilities. See, for example, the typedef for All in Figure 20.7. The grammar of IDL is a subset of ANSI C+ with additional constructs to support method signatures.
We give here only a brief overview of IDL. A useful overview and many examples are given in Baker [1997] and Henning and Vinoski [1999]. The full specification is available in on the OMG website [
OMG ab IDL modules

◊ The module construct allows interfaces and other IDL type definitions to be grouped in logical units. A module defines a naming scope, which prevents names defined within a module clashing with names defined outside it. For example, the definitions of the interfaces Shape and ShapeList could belong to a module called
Whiteboard, as shown in Figure 20.7

Download 234.39 Kb.

Share with your friends:
1   ...   10   11   12   13   14   15   16   17   ...   28




The database is protected by copyright ©ininet.org 2024
send message

    Main page