|
VisiBroker for Java |
||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
public interface TypedProxyPushSupplierOperations
The TypedProxyPushSupplier interface supports connections to the channel by consumers who will receive OMG Event Service style events from the channel.
Through inheritance of the ProxySupplier interface, the TypedProxyPushSupplier 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 ConsumerAdmin4 instance, which created a given TypedProxyPushSupplier instance. In addition, this inheritance implies that a TypedProxyPushSupplier instance supports an operation, which will return the list of event types that the proxy supplier will potentially by supplying, and an operation that can return information about the instance?s ability to accept a perevent QoS request.
The TypedProxyPushSupplier interface also inherits from the PushSupplier interface defined within the CosNotifyComm module. This interface supports the operation required to disconnect the TypedProxyPushSupplier from its associated consumer. In addition, since the inherited PushSupplier interface inherits the CosNotifyComm::NotifySubscribe interface, an instance supporting the TypedProxyPushSupplier interface can be informed whenever the list of event types that the consumer connected to it is interested in receiving changes.
Lastly, the TypedProxyPushSupplier interface defines the operation, which can be invoked by a typed push consumer to establish the connection over which the typed push consumer will receive events from the channel. Note that this can be either a pure event service style, or a notification service style typed push consumer. The TypedProxyPushSupplier interface also defines a pair of operations that can suspend and resume the connection between a TypedProxyPushSupplier instance and its associated TypedPushConsumer. During the time such a connection is suspended, the TypedProxyPushSupplier will accumulate events destined for the consumer but not transmit them until the connection is resumed.
Method Summary | |
---|---|
void |
connect_typed_push_consumer(org.omg.CosTypedEventComm.TypedPushConsumer push_consumer)
This operation is thus invoked in order to establish a connection between a push-style consumer of typed events, and the notification channel. |
void |
resume_connection()
The resume_connection operation causes the target object supporting the TypedProxyPushSupplier interface to resume sending events to the TypedPushConsumer instance connected to it. |
void |
suspend_connection()
The suspend_connection operation causes the target object supporting the TypedProxyPushSupplier interface to stop sending events to the TypedPushConsumer instance connected to it. |
Methods inherited from interface org.omg.CosNotifyChannelAdmin.ProxySupplierOperations |
---|
lifetime_filter, lifetime_filter, MyAdmin, MyType, obtain_offered_types, priority_filter, priority_filter, 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.NotifySubscribeOperations |
---|
subscription_change |
Methods inherited from interface org.omg.CosEventComm.PushSupplierOperations |
---|
disconnect_push_supplier |
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
TypedPushConsumer has been connected to the target object when this
operation is invoked.void suspend_connection() throws ConnectionAlreadyInactive, NotConnected
After this method is called, this TypedProxyPushSupplier does not forward events to the TypedPushConsumer connected to it until resume_connection is subsequently invoked. During this time, this TypedProxyPushSupplier will continue to queue events destined for the TypedPushConsumer, although events that time out prior to resumption of the connection will be discarded. Upon resumption of the connection, all queued events will be forwarded to the TypedPushConsumer.
ConnectionAlreadyInactive
- If the
connection has been previously suspended using this operation and not
resumed by invoking resume_connection (described below), the
ConnectionAlreadyInactive exception defined in the
CosNotifyChannelAdmin module is raised.
NotConnected
- If no
TypedPushConsumer has been connected to the target object when this
operation is invoked.void connect_typed_push_consumer(org.omg.CosTypedEventComm.TypedPushConsumer push_consumer) throws AlreadyConnected, TypeError
Note that because the TypedPushConsumer interface defined in the CosTypedNotifyComm module inherits from the TypedPushConsumer interface defined in the CosTypedEventComm module, the input parameter to this operation could be either a pure event service style, or a notification service style typed push 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 TypedProxyPushSupplier interface should attempt to narrow the input parameter to CosTypedNotifyComm::TypedPushConsumer in order to determine which style of typed push consumer is connecting to it.
push_consumer
- The reference to an object supporting the
TypedPushConsumer interface defined within the CosTypedEventComm
module.
This reference is that of a consumer, which will receive OMG Event
Service style typed events from the channel with which the target
object is associated.
AlreadyConnected
- If the target
object of this operation is already connected to a typed push
consumer object.
TypeError
- If the typed
push consumer being connected does not meet additional requirements,
which this TypedProxyPushSupplier interface imposes on the interface
supported by a typed push consumer (e.g., it may be designed to
invoke some specific operation in order to transmit events).
|
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |