CORBA IDL Flashcards
What does CORBA & IDL stand for?
Common Object Request Broker Architecture & Interface definition language
What is CORBA?
It is an architecture which focuses on the commmuniation between systems. So systems can be on different computers in written in. different languages and still communicate.
What is an ORB?
Object request broker
It is an object each system designed with CORBA needs .
The orb handles all communication between the client. For example the client and the server. So each of these entities will have an orb which translates from the entity into the common language.
How does the ORBs communicate?
They send and receive requests in an ORB “bus”.
the client translates the request to the orb -> the orb sends it to the orb attached at the server and that orb translates the request to the server, and then the other way around to send back the response.
What is CORBA IDL?
CORBA IDL is a file which contains code with mappings. This is how languages like Java, C++ or Python is mapped to the CORBA IDL language.
How does CORBA IDL process and translate the code?
It has an IDL compiler, which generates files that it needs to interface with the other object at for example the serverside.
It generates stubs, skeletons and helper classes for communicaiton between the client program and orb.
What is Java IDL?
It is part of Java SE (standard edition) and its a full implementation of CORBA.
It includes:
an ORB
idlj.exe(idl-to-java compiler)
and other services such as a naming server.
What is OMG IDL?
the language used to describe the interfaces that client objects call and object implementations provide.
What is the interface definition in IDL?
An interface definition that completely defines the interface and fully specifies each operation’s parameters that the client object can call.
So…
an interface that provides the information needed to develop clients that use the interface’s operations.
As a programmer this is what you code your program up against.
Imagine that you need to write a program that uses CORBA to communicate with an existing system. How do you know which methods to call and which parameters to give?
You look at the interface definition which contains all the information for the operations. module name, operation name, parameters.
What is COS?
within CORBA Common Object Services.
Naming service that make the objects operations available to clients.
What are the steps needed to create a simple client server application which uses corba?
- Write the interface definition ( info about methods to call etc)
- Create the server. Create a helloServer which works with COS (naming of methods available for clients - will contain sayHello) and extend it off HelloPOA and implement the methods in the interface.
- Create the client. create a HelloClient.java that asks ORB to locate HelloSever and invoke sayHello() on the local object.
- Run CORBA broker, start server and client