
Fig: CORBA Architecture
The CORBA specification details the interfaces and characteristics of the object request broker (ORB). It practically specifies the middleware function which allow application objects to communicate with one another no matter where they are located, who has designed them and in which language they are implemented in.
- CORBA specifies the middleware services used by the application object
- An object can be a client, server or both
- Object interaction is through requests, the information associated with each request is
- an operation to be performed
- a target object
- zero or more parameters
- CORBA supports dynamic as well as static binding
- The interface represents the contract between client and server; an IDL has been defined for CORBA; proxies and skeletons(client and server stub) are generated as a result of IDL compilation.
- CORBA objects do not know the underlying implementation details.
Interface repository (IR)
- The Interface repository provides a representation of available object interfaces for all objects in distributed environment. It corresponds to the server IDL specification.
- The client can access the interface repository to learn about the server objects, determine the type of operations which can be invoked and corresponding parameters
Implementation Repository
- Implementation details for the objects implementing each interface are stored in Implementation Repository:
- The main information is a mapping from the server's object name to the filename which implements respective service
- There is information concerning the object methods and information needed for method selection
- The Implementation Repository is used by the object adapter in order to solve an incoming call and activate the right object method via a server skeleton
Object Request Broker (ORB)