org.omg.CosTypedNotifyChannelAdmin
Interface TypedProxyPullSupplierOperations
- All Superinterfaces:
- FilterAdminOperations, NotifySubscribeOperations, ProxySupplierOperations, PullSupplierOperations, QoSAdminOperations, org.omg.CosTypedEventComm.TypedPullSupplierOperations
- All Known Subinterfaces:
- TypedProxyPullSupplier
public interface TypedProxyPullSupplierOperations
- extends ProxySupplierOperations, TypedPullSupplierOperations
The TypedProxyPullSupplier interface supports connections to the
channel by consumers who will pull OMG Event Service style typed
events from the channel.
Through inheritance of the ProxySupplier interface, the
TypedProxyPullSupplier interface supports administration of various QoS
properties, administration of a list of associated filter objects,
mapping filters for event priority and lifetime, and a readonly
attribute containing the object reference of the ConsumerAdmin2
instance, which created a given TypedProxyPullSupplier instance.
In addition, this inheritance implies that a TypedProxyPullSupplier
instance supports an operation that will return the list of event types,
which the proxy supplier will potentially be supplying, and an operation
that can return information about the instance?s ability to accept a
per-event QoS request.
The TypedProxyPullSupplier interface also inherits from the
TypedPullSupplier interface defined within the CosTypedNotifyComm module.
This interface supports the event type specific operation(s),
which the consumer connected to a TypedProxyPullSupplier instance will
invoke to receive events from the channel in the form of typed events.
And, since the TypedPullSupplier interface inherits from the PullSupplier
interface defined in the CosEventComm module, an instance supporting the
TypedProxyPullSupplier interface supports the standard pull and try_pull
operations with which it can supply untyped events, and the operation
required to disconnect the TypedProxyPullSupplier from its associated
consumer.
In addition, since the inherited TypedPullSupplier interface inherits
the CosNotifyComm::NotifySubscribe interface, an instance supporting the
TypedProxyPullSupplier interface can be informed whenever the list of
event types that the consumer connected to it is interested in receiving
changes.
Finally, the TypedProxyPullSupplier interface defines the operation,
which can be invoked by a pull consumer to establish the connection over
which the pull consumer will receive events from the channel.
Note that this can be either a pure event service style, or
a notification service style pull consumer.
Method Summary |
void |
connect_typed_pull_consumer(PullConsumer pull_consumer)
This operation is invoked in order to establish a connection between
a pull-style consumer of typed events, and the notification channel. |
Methods inherited from interface org.omg.CosTypedEventComm.TypedPullSupplierOperations |
get_typed_supplier |
connect_typed_pull_consumer
void connect_typed_pull_consumer(PullConsumer pull_consumer)
throws AlreadyConnected
- This operation is invoked in order to establish a connection between
a pull-style consumer of typed events, and the notification channel.
Once established, the consumer can proceed to receive events from the
channel by invoking the event type specific operation(s) supported by
the target TypedProxyPullSupplier instance.
Note that since there is no difference between the interfaces of
consumers ofuntyped and typed events, it would have sufficed to have
the TypedProxyPullSupplier interface to inherit from the
ProxyPullSupplier interface defined in the CosNotifyChannelAdmin module,
and to not define a separate connect method for pull-style consumers of
typed events.
It was felt, however, that explicitly defining this operation makes
the usage model of the TypedProxyPullSupplier interface more intuitive.
Note also that because the PullConsumer interface defined in the
CosNotifyComm module inherits from the PullConsumer interface defined
in the CosEventComm module, the input parameter to this operation
could be either a pure event service style, or a notification service
style pull consumer.
The only difference between the two are that the latter also supports
the NotifyPublish interface, and thus can be the target of offer_change
invocations.
The implementation of the TypedProxyPullSupplier interface should
attempt to narrow the input parameter to CosNotifyComm::PullConsumer
in order to determine which style of pull consumer is connecting to it.
- Parameters:
pull_consumer
- The reference to an object supporting the
PullConsumer interface defined within the CosEventComm module.
This reference is that of a consumer, which plans to pull typed
events from the channel with which the target object is associated.
- Throws:
AlreadyConnected
- If the target
object of this operation is already connected to a pull consumer
object, the AlreadyConnected exception will be raised.
Read the latest documentation online