VisiBroker for Java

org.omg.CosTypedNotifyChannelAdmin
Interface TypedProxyPushSupplierOperations

All Superinterfaces:
FilterAdminOperations, NotifySubscribeOperations, ProxySupplierOperations, PushSupplierOperations, QoSAdminOperations
All Known Subinterfaces:
TypedProxyPushSupplier

public interface TypedProxyPushSupplierOperations
extends ProxySupplierOperations, PushSupplierOperations

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

resume_connection

void resume_connection()
                       throws ConnectionAlreadyActive,
                              NotConnected
The resume_connection operation causes the target object supporting the TypedProxyPushSupplier interface to resume sending events to the TypedPushConsumer instance connected to it. After this method is called, this TypedProxyPushSupplier will resume forwarding events to the TypedPushConsumer connected to it, including those, which have been queued during the time the connection was suspended, and have not yet timed out. This operation takes no input parameters and returns no values.

Throws:
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.

suspend_connection

void suspend_connection()
                        throws ConnectionAlreadyInactive,
                               NotConnected
The suspend_connection operation causes the target object supporting the TypedProxyPushSupplier interface to stop sending events to the TypedPushConsumer instance connected to it. This operation takes no input parameters and returns no values.

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.

Throws:
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.

connect_typed_push_consumer

void connect_typed_push_consumer(org.omg.CosTypedEventComm.TypedPushConsumer push_consumer)
                                 throws AlreadyConnected,
                                        TypeError
This operation is thus invoked in order to establish a connection between a push-style consumer of typed events, and the notification channel. Once established, the TypedProxyPushSupplier will proceed to send events destined for the consumer to it by invoking its event type specific push-style operation(s).

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.

Parameters:
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.
Throws:
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).

Borland Software Corporation
http://www.borland.com
100 Enterprise Way
Scotts Valley, CA 95066
Voice: (831) 431-1000
pubsweb@borland.com

Read the latest documentation online