[omniORB] Introduction..

Duncan Grisby dgrisby@uk.research.att.com
Fri, 17 Dec 1999 17:58:32 +0000


On Friday 17 December, "F. Michel" wrote:

> - Naming service. Our product provides its own naming service
> with an externalization method. It was initially developped using
> OMG specification and now that all ORBs implement this service
> we experience lots of name clashes. Well, I won't really agree with
> this initial choice, but I have to deal with, so... Could it be possible
> to
> make omniORB naming service an optional feature ? (few ifdefs...)

You don't have to use omniORB's Naming service if you don't want to.

> - Keep include paths in generated stubs. This is a "nice to have"
> feature. I've implemented a "-K" options which allows to keep
> include paths and to remove given prefixes from the absolute paths.

This is a potentially useful feature, but becomes less important if
you use a sensible makefile set-up. If you send us your patches, we'll
consider including them.

> - Skeleton generation. The purpose is to generate a dispatch method
> inside the interface class rather than generating a skeleton class
> for servers. This is a quite personal approach of the BOA but it allows
> diamond inheritance between interfaces.

I don't understand this. Can you explain more?  There's nothing
preventing you using diamond inheritance with the current IDL compiler
is there?

> - CORBA::Environment. Orbix provides an additional parameter to
> all distributed methods. We never use this parameter but it's in the
> code. I've added an option to generate this parameter with default
> values for operations and attribute access methods.

The C++ mapping makes Environment an option if you don't have genuine
C++ exceptions. Its use isn't necessary with omniORB, and I think it
would be a backward step to provide an option to include it.

> Something different: I've noticed a problem with name lookup. An
> identifier is now searched only in the first inherited level.
> ( An interface A defines an exception ex. B inherits from A and C
> inherits from B. C defines a method which raises an ex. There, ex
> is said not to be defined.)
> This worked with omniidl2 V 2.7.1.

This is a bug which was introduced in fixing a similar bug :-(. The
fix will appear in CVS and FTP snapshots overnight.

Cheers,

Duncan.

-- 
 -- Duncan Grisby  \  Research Engineer  --
  -- AT&T Laboratories Cambridge          --
   -- http://www.uk.research.att.com/~dpg1 --