CORBA standards

The following are the CORBA standards published by the OMG group version-wise (as advised in CORBA's official website at http://www.corba.org/):

From 2001 onward, CORBA has given us standards that are related to security as well:

CORBA standards help with the integration of versatile systems, from mainframes to mini computers and from Unix systems to handhelds and embedded systems. CORBA is useful when there are huge connecting systems with good hit rate and when you expect high stability and a reliable system.

Except legacy applications, most of the applications follow common standards when it comes to object modeling, for example. All applications related to, say, "HR&Benefits" maintain an object model with details of the organization, employees with demographic information, benefits, payroll, and deductions. They are only different in the way they handle the details, based on the country and region they are operating for.

For each object type, similar to the HR&Benefits systems we discussed in the preceding section, we can define an interface using the Interface Definition Language (OMG IDL). The contract between these applications is defined in terms of an interface for the server objects that the clients can call. This IDL interface is used by each client to indicate when they should call any particular method to marshal (read and send the arguments). The target object is going to use the same interface definition when it receives the request from the client to unmarshal (read the arguments) in order to execute the method that was requested by the client operation. Again, during response handling, the interface definition is helpful to marshal (send from the server) and unmarshal (receive and read the response) arguments on the client side once received.

The IDL interface is a design concept that works with multiple programming languages that use OMG standards, including C, C++, Java, Ruby, Python, and IDLscript. This is close to writing a program to an interface, a concept we have been discussing that most recent programming languages and frameworks, such as Spring, adopt. This clear separation between the interface and implementation offered by CORBA standards is well empowered by OMG IDL and helps in easy integration of enterprise systems. However, the interface has to be defined clearly for each object. The systems encapsulate the actual implementation along with their respective data handling and processing, and only the methods are available to the rest of the world through the interface. Hence, the clients are forced to develop their invocation logic for the IDL interface exposed by the application they want to connect to with the method parameters (input and output) advised by the interface operation.

The following diagram shows a single-process ORB CORBA architecture with the IDL configured as client stubs with object skeletons, We have written our object (on the right) and a client for it (on the left), as represented in the diagram. The client and server use stubs and skeletons as proxies, respectively. As discussed earlier, the IDL interface follows a strict definition, and even though the client and server are implemented in different technologies, they should integrate smoothly with the interface definition strictly implemented.

In CORBA, each object instance acquires an object reference for itself with the electronic token identifier. Client invocations are going to use these object references that have the ability to figure out which ORB instance they are supposed to interact with. The stub and skeleton represent the client and server, respectively, to their counterparts. They help establish this communication through ORB and pass the arguments to the right method and its instance during the invocation.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset