org.omg.CosNotifyChannelAdmin

Class _ConsumerAdminStub

public class _ConsumerAdminStub extends ObjectImpl implements ConsumerAdmin

The ConsumerAdmin interface defines the behavior supported by objects which create and manage lists of proxy supplier objects within a Notification Service event channel. Recall that a Notification Service event channel can have any number of ConsumerAdmin instances associated with it. Each such instance is responsible for creating and managing a list of proxy supplier objects that share a common set of QoS property settings, and a common set of filter objects. This feature enables clients to conveniently group proxy supplier objects within a channel into groupings that each support a set of consumers with a common set of QoS requirements and event subscriptions. The ConsumerAdmin interface inherits the QoSAdmin interface defined within the CosNotification module, enabling each ConsumerAdmin instance to manage a set of QoS property settings. These QoS property settings are assigned as the default QoS property settings for any proxy supplier object created by a ConsumerAdmin instance. In addition, the ConsumerAdmin interface inherits from the FilterAdmin interface defined within the CosNotifyFilter module, enabling each ConsumerAdmin instance to maintain a list of filter objects. These filter objects encapsulate subscriptions that will apply to all proxy supplier objects that have been created by a given ConsumerAdmin instance. In order to enable optimizing the notification of a group of proxy supplier objects that have been created by the same ConsumerAdmin instance of changes to these shared filter objects, the ConsumerAdmin interface also inherits from the NotifySubscribe interface defined in the CosNotifyComm module. This inheritance enables a ConsumerAdmin instance to be registered as the callback object for notification of subscription changes made upon filter objects. The ConsumerAdmin interface defined in the CosNotifyChannelAdmin module also inherits from the ConsumerAdmin interface defined in the CosEventChannelAdmin module. This inheritance enables clients to use the ConsumerAdmin interface defined in the CosNotifyChannelAdmin module to create pure OMG Event Service style proxy supplier objects. Proxy supplier objects created in this manner may not support configuration of QoS properties, and may not have associated filter objects. In addition, proxy supplier objects created through the inherited ConsumerAdmin interface will not have unique identifiers associated with them, whereas proxy supplier objects created by invoking the operations supported by the ConsumerAdmin interface defined in the CosNotifyChannelAdmin module will. Locally, the ConsumerAdmin interface supports a readonly attribute which maintains a reference to the EventChannel instance that created a given ConsumerAdmin instance. The ConsumerAdmin interface also supports a readonly attribute which contains a numeric identifier which will be assigned to an instance supporting this interface by its associated Notification Service event channel upon creation of the ConsumerAdmin instance. This identifier will be unique among all ConsumerAdmin instances created by a given channel. As described above, due to inheritance from the FilterAdmin interface, a ConsumerAdmin can maintain a list of filter objects that will be applied to all proxy suppliers it creates. Also recall that each proxy supplier may itself support a list of filter objects that apply only it. When combining multiple filter objects within each of these two lists of filter objects that may be associated with a given proxy supplier, OR semantics are applied. However when combining these two lists during the evaluation of a given event, either AND or OR semantics may be applied. The choice is determined by an input flag upon creation of the ConsumerAdmin, and the operator that will be used for this purpose by a given ConsumerAdmin is maintained in a readonly attribute. The ConsumerAdmin interface also supports attributes which maintain references to priority and lifetime mapping filter objects. These mapping filter objects will be applied to all proxy supplier objects created by a given ConsumerAdmin instance. Each ConsumerAdmin instance assigns a unique numeric identifier to each proxy supplier object it maintains. The ConsumerAdmin interface supports attributes which maintain the list of these unique identifiers associated with the proxy pull and the proxy push suppliers created by a given ConsumerAdmin instance. The ConsumerAdmin interface also supports an operation which, given the unique identifier of a proxy supplier a given ConsumerAdmin instance has created as input, will return the object reference of that proxy supplier object. Additionally, the ConsumerAdmin interface supports operations which can create the various styles of proxy supplier objects supported by the Notification Service event channel. Finally, because clients of a given Notification Service event channel can create any number of ConsumerAdmin instances, a destroy operation is provided by this interface so that clients can clean up instances that are no longer needed.
Method Summary
intadd_filter(Filter new_filter)
Operation add_filter
voiddestroy()
Operation destroy
int[]get_all_filters()
Operation get_all_filters
Filterget_filter(int filter)
Operation get_filter
ProxySupplierget_proxy_supplier(int proxy_id)
Operation get_proxy_supplier
Property[]get_qos()
Operation get_qos
MappingFilterlifetime_filter()
Read accessor for lifetime_filter attribute
voidlifetime_filter(MappingFilter value)
Write accessor for lifetime_filter attribute
EventChannelMyChannel()
Read accessor for MyChannel attribute
intMyID()
Read accessor for MyID attribute
InterFilterGroupOperatorMyOperator()
Read accessor for MyOperator attribute
ProxySupplierobtain_notification_pull_supplier(ClientType ctype, IntHolder proxy_id)
Operation obtain_notification_pull_supplier
ProxySupplierobtain_notification_push_supplier(ClientType ctype, IntHolder proxy_id)
Operation obtain_notification_push_supplier
ProxyPullSupplierobtain_pull_supplier()
Operation obtain_pull_supplier
ProxyPushSupplierobtain_push_supplier()
Operation obtain_push_supplier
MappingFilterpriority_filter()
Read accessor for priority_filter attribute
voidpriority_filter(MappingFilter value)
Write accessor for priority_filter attribute
int[]pull_suppliers()
Read accessor for pull_suppliers attribute
int[]push_suppliers()
Read accessor for push_suppliers attribute
voidremove_all_filters()
Operation remove_all_filters
voidremove_filter(int filter)
Operation remove_filter
voidset_qos(Property[] qos)
Operation set_qos
voidsubscription_change(EventType[] added, EventType[] removed)
Operation subscription_change
voidvalidate_qos(Property[] required_qos, NamedPropertyRangeSeqHolder available_qos)
Operation validate_qos
String[]_ids()

Method Detail

add_filter

public int add_filter(Filter new_filter)
Operation add_filter

destroy

public void destroy()
Operation destroy

get_all_filters

public int[] get_all_filters()
Operation get_all_filters

get_filter

public Filter get_filter(int filter)
Operation get_filter

get_proxy_supplier

public ProxySupplier get_proxy_supplier(int proxy_id)
Operation get_proxy_supplier

get_qos

public Property[] get_qos()
Operation get_qos

lifetime_filter

public MappingFilter lifetime_filter()
Read accessor for lifetime_filter attribute

Returns: the attribute value

lifetime_filter

public void lifetime_filter(MappingFilter value)
Write accessor for lifetime_filter attribute

Parameters: value the attribute value

MyChannel

public EventChannel MyChannel()
Read accessor for MyChannel attribute

Returns: the attribute value

MyID

public int MyID()
Read accessor for MyID attribute

Returns: the attribute value

MyOperator

public InterFilterGroupOperator MyOperator()
Read accessor for MyOperator attribute

Returns: the attribute value

obtain_notification_pull_supplier

public ProxySupplier obtain_notification_pull_supplier(ClientType ctype, IntHolder proxy_id)
Operation obtain_notification_pull_supplier

obtain_notification_push_supplier

public ProxySupplier obtain_notification_push_supplier(ClientType ctype, IntHolder proxy_id)
Operation obtain_notification_push_supplier

obtain_pull_supplier

public ProxyPullSupplier obtain_pull_supplier()
Operation obtain_pull_supplier

obtain_push_supplier

public ProxyPushSupplier obtain_push_supplier()
Operation obtain_push_supplier

priority_filter

public MappingFilter priority_filter()
Read accessor for priority_filter attribute

Returns: the attribute value

priority_filter

public void priority_filter(MappingFilter value)
Write accessor for priority_filter attribute

Parameters: value the attribute value

pull_suppliers

public int[] pull_suppliers()
Read accessor for pull_suppliers attribute

Returns: the attribute value

push_suppliers

public int[] push_suppliers()
Read accessor for push_suppliers attribute

Returns: the attribute value

remove_all_filters

public void remove_all_filters()
Operation remove_all_filters

remove_filter

public void remove_filter(int filter)
Operation remove_filter

set_qos

public void set_qos(Property[] qos)
Operation set_qos

subscription_change

public void subscription_change(EventType[] added, EventType[] removed)
Operation subscription_change

validate_qos

public void validate_qos(Property[] required_qos, NamedPropertyRangeSeqHolder available_qos)
Operation validate_qos

_ids

public String[] _ids()