This package provides the support of OMG CORBA; see overview of the implemented functionality. CORBA is an open, vendor independent system that applications use to work together over networks. Thie purpose of this package is to provide CORBA APIs to java programming language, including the fully functional Object Request Broker ({@link org.omg.CORBA.ORB}).

Overview of the currently implemented CORBA functionality

The CORBA implementation in the Classpath project is now a working prototype. This prototype is interoperable with Sun's implementation v 1.4, transferring object references, primitive types, narrow and wide strings, arrays, structures and trees between these two platforms. The thrown exceptions are also transferred and handled. The support for stringified object references (IORs) is implemented. The redirection commands works, LOCATION_FORWARD_PERM changing the target address until the application is restarted and LOCATION_FORWARD redirecting for the current session only. Both Little and Big Endian encoded messages are accepted. The encoding of the sent messages is the same as used in the stringified IOR reference of that object or Big Endian, if no such data available.

The current release supports the Value types that appeared since v 1.3 and are something between CORBA structures (no methods, data local) and CORBA objects (both methods and data remote). Value type has local data, can have local methods and is transferred by value, not by IOR reference.

You can use both request-oriented (based on {@link org.omg.CORBA.Request}) and stream-oriented (based on {@link org.omg.CORBA.portable.ObjectImpl}) invocation models. The current release includes the working examples, demonstrating the client-server communication using both methods. These examples also show, how to use the Classpath naming service. The IDL compiler is not yet written, but as a side effect of the required compatibility, the implementation seems accepting the output of the Sun's 1.3 idlj.

@author Audrius Meskauskas, Lithuania (AudriusA@Bioinformatics.org)