org.omg.CosNotifyComm
Interface StructuredPushConsumerOperations

All Superinterfaces:
NotifyPublishOperations
All Known Subinterfaces:
StructuredProxyPushConsumer, StructuredProxyPushConsumerOperations, StructuredPushConsumer
All Known Implementing Classes:
_StructuredProxyPushConsumerStub, _StructuredPushConsumerStub, StructuredProxyPushConsumerImpl, StructuredProxyPushConsumerPOA, StructuredProxyPushConsumerPOATie, StructuredPushConsumerPOA, StructuredPushConsumerPOATie

public interface StructuredPushConsumerOperations
extends NotifyPublishOperations

The StructuredPushConsumer interface supports an operation which enables consumers to receive Structured Events by the push model. It also defines an operation which can be invoked to disconnect the push consumer from its associated supplier. In addition, the StructuredPushConsumer interface inherits the NotifyPublish interface described above, enabling a notification supplier to inform an instance supporting this interface whenever there is a change to the types of events it intends to produce. Note that an object supporting the StructuredPushConsumer interface can receive all events which were supplied to its associated channel, including events supplied in a form other than a Structured Event. How events supplied to the channel in other forms are internally mapped into a Structured Event for delivery to a StructuredPushConsumer is summarized in Table 2-2.


Method Summary
 void disconnect_structured_push_consumer()
          The disconnect_structured_push_consumer operation is invoked to terminate a connection between the target StructuredPushConsumer, and its associated supplier.
 void push_structured_event(StructuredEvent notification)
          The push_structured_event operation takes as input a parameter of type StructuredEvent as defined in the CosNotification module.
 
Methods inherited from interface org.omg.CosNotifyComm.NotifyPublishOperations
offer_change
 

Method Detail

push_structured_event

void push_structured_event(StructuredEvent notification)
                           throws Disconnected
The push_structured_event operation takes as input a parameter of type StructuredEvent as defined in the CosNotification module. Upon invocation, this parameter will contain an instance of a Structured Event being delivered to the consumer by the supplier to which it is connected. If this operation is invoked upon a StructuredPushConsumer instance that is not currently connected to the supplier of the event, the Disconnected exception will be raised. In reality there are two types of objects that will support the StructuredPushConsumer interface: an object representing an application which receives Structured Events, and a StructuredProxyPushConsumer (defined in the CosNotifyChannelAdmin module) associated with an event channel which receives structured events from a supplier on behalf of the channel. For the first type of object, the implementation of the push_structured_event operation is application specific, and is intended to be supplied by application developers. For the second type of object, the behavior of the operation is tightly linked to the implementation of the event channel. Basically, it is responsible for applying any filters that have been registered by with the StructuredProxyPushConsumer, then either discarding the event or forwarding it to each proxy supplier within the channel depending on whether or not the event passed the filter.

Throws:
Disconnected

disconnect_structured_push_consumer

void disconnect_structured_push_consumer()
The disconnect_structured_push_consumer operation is invoked to terminate a connection between the target StructuredPushConsumer, and its associated supplier. This operation takes no input parameters and returns no values. The result of this operation is that the target StructuredPushConsumer will release all resources it had allocated to support the connection, and dispose its own object reference.