omniEvent (was Re: [omniORB] omniidl bug?)

Paul Nader Paul.Nader@aals27.alcatel.com.au
Thu, 17 Aug 2000 11:11:11 +1000


Adriaan,

I am currently working on two (2) ports of omniEvents to omniORB3.

There will be a new version omniEvents 2.0.2 containing patches and
minimal changes to get it to run under omniORB3 (ie it will still use the BOA).
To run this version you'll need to apply a patch to omniORB3 because the
IDL compiler generates incomplete skeletons for IDL interfaces (specifically the

construtors taking a key argument were left out).This will probably be the last
version
for omniEvents 2.x.x.

There is also a new version omniEvents 3.0.0 in the pipeline containing the
patches
which will use the POA.

omniEvents 2.0.2 will be out in about 2 weeks (workload permitting).

omniEvents 3.0.1 will be out in about 4-6 weeks.

Thanks for your patience.

Paul.

Adriaan Joubert wrote:

> So, has anybody got a version of omniEvent that works with omniORB3, or do I
> need to modify the LifeCycle idl?
>
> Cheers,
>
> Adriaan
>
> Duncan Grisby wrote:
>
> > On Thursday 20 July, Bruce Visscher wrote:
> >
> > > $ cat CosLifeCycle.idl
> > > //...
> > > module CosLifeCycle {
> > >   //...
> > >   typedef Object Factory;
> > >   //...
> > > };
> > > $ omniidl -d CosLifeCycle.idl
> > > coslifecycle.idl:4: Identifier `Factory' clashes with keyword `factory'
> > > omniidl: 1 error.
> >
> > That's the second time this has cropped up today :-)
> >
> > > I can work-around this by adding a leading underscore to the name, but
> > > now I'm curious who is right, omniidl or the CosLifeCycle maintainers?
> > >
> > > I'm thinking that omniidl should allow identifiers to differ only by
> > > case from keywords, but I could be wrong.  I realize that identifiers
> > > must not differ only by case from each other.
> >
> > omniidl is right. Section 3.2.4 of the CORBA 2.3 spec says:
> >
> >   `Keywords must be written exactly as shown in the above list.
> >    Identifiers which collide with keywords (see Section 3.2.3,
> >    "Identifiers") are illegal. For example, "boolean" is a valid
> >    keyword; "Boolean" and "BOOLEAN" are illegal identifiers.'
> >
> > Strangely, the CosLifeCycle IDL (formal/98-10-15) has been updated to
> > use the identifier "_supports" to avoid the "supports" keyword, but
> > does not have "Factory" escaped.
> >
> > I'm sure I remember seeing an issue raised about it, but I can't find
> > it. I did find formal/00-06-18, which claims to be the Life Cycle
> > service updated for CORBA 2.3, but it's full of obvious mistakes, like
> > using "_supports" in both the #ifdef cases in the IDL, and using
> > "_supports" in section 2.1.3.1 when it means "create_object"!  It too
> > fails to escape "Factory". Oh well.