|
VisiBroker for Java |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface ProxyPullConsumerOperations
The ProxyPullConsumer interface supports connections to the channel by suppliers, who will make events available for pulling to the channel as untyped Anys. Through inheritance of the ProxyConsumer interface, the ProxyPullConsumer interface supports administration of various QoS properties, administration of a list of associated filter objects, and a readonly attribute containing the reference of the SupplierAdmin object that created it. In addition, this inheritance implies that a ProxyPullConsumer instance supports an operation that will return the list of event types that consumers connected to the same channel are interested in receiving, and an operation that can return information about the instance?s ability to accept a per-event QoS request.
The ProxyPullConsumer interface also inherits from the PullConsumer interface defined within the CosEventComm module of the OMG Event Service. This interface supports the operation required to disconnect the ProxyPullConsumer from its associated supplier. In addition, since the inherited PullConsumer interface inherits the CosNotifyComm::NotifyPublish interface, a supplier connected to an instance supporting the ProxyPullConsumer interface can inform it whenever the list of event types the supplier plans to supply changes.
Finally, the ProxyPullConsumer interface defines the operation which can be invoked by a pull supplier to establish the connection over which the pull supplier will send events to the channel. Note that this can be either a pure event service style, or a notification service style pull supplier. The ProxyPullConsumer interface also defines a pair of operations that can suspend and resume the connection between a ProxyPullConsumer instance and its associated PullSupplier. During the time such a connection is suspended, the ProxyPullConsumer will not attempt to pull events from its associated PullSupplier.
Method Summary | |
---|---|
void |
connect_any_pull_supplier(PullSupplier pull_supplier)
This operation is invoked in order to establish a connection between a pull-style supplier of events in the form of Anys, and the notification channel. |
void |
resume_connection()
The resume_connection operation causes the target object supporting the ProxyPullConsumer interface to resume attempting to pull events (using pull or try_pull) from the PullSupplier instance connected to it. |
void |
suspend_connection()
The suspend_connection operation causes the target object supporting the ProxyPullConsumer interface to stop attempting to pull events (using pull or try_pull) from the PullSupplier instance connected to it. |
Methods inherited from interface org.omg.CosNotifyChannelAdmin.ProxyConsumerOperations |
---|
MyAdmin, MyType, obtain_subscription_types, validate_event_qos |
Methods inherited from interface org.omg.CosNotification.QoSAdminOperations |
---|
get_qos, set_qos, validate_qos |
Methods inherited from interface org.omg.CosNotifyFilter.FilterAdminOperations |
---|
add_filter, get_all_filters, get_filter, remove_all_filters, remove_filter |
Methods inherited from interface org.omg.CosNotifyComm.NotifyPublishOperations |
---|
offer_change |
Methods inherited from interface org.omg.CosEventComm.PullConsumerOperations |
---|
disconnect_pull_consumer |
Method Detail |
---|
void resume_connection() throws ConnectionAlreadyActive, NotConnected
ConnectionAlreadyActive
- If the
connection has not been previously suspended using this operation
by invoking suspend_connection.
NotConnected
- If no PullSupplier
has been connected to the target object when this operation is
invoked.void suspend_connection() throws ConnectionAlreadyInactive, NotConnected
ConnectionAlreadyInactive
- If the
connection has been previously suspended using this operation and
not resumed by invoking resume_connection.
NotConnected
- If no PullSupplier
has been connected to the target object when this operation is
invoked.void connect_any_pull_supplier(PullSupplier pull_supplier) throws AlreadyConnected, TypeError
Note that because the PullSupplier interface defined in the CosNotifyComm module inherits from the PullSupplier 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 supplier. The only difference between the two is that the latter also supports the NotifySubscribe interface, and thus can be the target of subscription_change invocations. The implementation of the ProxyPullConsumer interface should attempt to narrow the input parameter to CosNotifyComm::PullSupplier in order to determine which style of pull supplier is connecting to it.
pull_supplier
- The reference to an object supporting the
PullSupplier interface defined within the CosEventComm module.
This reference is that of a supplier which plans to make events
available for pulling to the channel with which the target object
is associated in the form of untyped Anys.
AlreadyConnected
- If the target
object of this operation is already connected to a pull supplier
object, the AlreadyConnected exception will be raised.
TypeError
- If the pull supplier
being connected does not meet additional requirements, which may be
imposed by this implementation on the interface supported by a pull
supplier (e.g., it may be designed to invoke some operation other
than pull or try_pull in order to receive events).
|
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |