- 
                            Key: CORBA26-31
- 
                            Legacy Issue Number: 3746
- 
                            Status: closed
- 
                            Source: Laboratoire d`Informatique Fondamentale de Lille ( Raphael Marvie)
- 
                            Summary:Dealing with the following IDL3 definition, a problem arises when 
 generating the IDL2 definitions (complete IDL2 mapping is enclosed at
 the end of this mail).module example { { public string value; }
 valuetype AnEvent : Components::EventBase; component Producer { publishes AnEvent output; }; component Consumer { consumes AnEvent input; }; 
 };According to the chapter 5 of the CCM specification, the publishes 
 definition of the Producer component is mapped to the following
 definition (excerpt).interface Producer : Components::CCMObject { Components::Cookie subscribe_output(in ::example::ProducerEventConsumers::AnEventConsumer consumer) raises (Components::ExceededConnectionLimit); }; In the mean time, the consumes definition of the Consumer component is 
 mapped to the following definition.interface Consumer : Components::CCMObject { ::example::ConsumerEventConsumers::AnEventConsumer 
 get_consumer_input();}; We can see that two versions of the "AnEventConsumer" interface have 
 been defined in two distincts modules. Thus the following Java
 lines are not correct:example.Producer p = ...; 
 example.Consumer c = ...;p.subscribe_output(c.get_consumer_input()); The Java compiler will refuse to compile the last one, producing an 
 error like "BadTypeCoerce". However, in the IDL3 definitions, both
 components have been defined in order to be used together. (sic!)Thus, we think that the mapping for a Consumer should not be based on 
 the component definitions, but on the event definition itself. It
 would then avoid multiple (incompatible) definitions of the consumers.
 This mapping could be defined in two distinct ways.
- 
                            Reported: CPP 1.1 — Tue, 18 Jul 2000 04:00 GMT
- 
                            Disposition: Resolved — CORBA 2.6.1
- 
                            Disposition Summary:see below 
- 
                            Updated: Fri, 6 Mar 2015 20:58 GMT
CORBA26 — Pbl: Improper mapping rule from IDL3 to IDL2 when dealing with events.
- Key: CORBA26-31
- OMG Task Force: Core RTF