- 
                            Key: CORBA26-43
- 
                            Legacy Issue Number: 3955
- 
                            Status: closed
- 
                            Source: Anonymous
- 
                            Summary:See the CORBA Components Model specification, orbos/99-07-01, section 
 5.6, pages 5-84 through 5-89, approximately.
 Could someone clarify the push() and push_event() operations, their
 purposes, and their interaction, if any. There is no description
 whatsoever of the relationship between the push() and push_event()
 operations, even though push_event() is declared in the
 inherited Components::EventConsumerBase. The producing component
 invokes its push() operation, which then performs any peculiar
 formatting to the event before transmission to the underlying channel
 through its container. It is unclear when, if ever, the push_event()
 operation will be invoked. A text search of the document reveals the
 operation appears only in the interface definition and its immediate
 descriptive paragraphs.Would a better model be to use push_event() as the interface to and from 
 the container? (Perhaps this should be independent operations,
 produce_event() and consume_event()?) On the producer side, let push()
 perform any component specific formatting of the event before passing
 the [now modified] event on to push_event(). This latter interacts with
 the container to send the event to the event channel, as
 described. (Most push() implementations will do nothing to the event.
 This could be provided as a default generated implementation.) On the
 consumer side, push_event() will be invoked by the container as part of
 event delivery. The push_event() operation performs type checks, as
 described, before it invokes the consumer agent’s push() operation. This
 process correctly handles the semantics and permits suitable places to
 intercept or override event processing.
- 
                            Reported: CORBA 2.4 — Mon, 16 Oct 2000 04:00 GMT
- 
                            Disposition: Resolved — CORBA 2.6.1
- 
                            Disposition Summary:rejected 
- 
                            Updated: Fri, 6 Mar 2015 20:58 GMT