Erlang -- CosNotifyChannelAdmin_ProxyConsumer

User's Guide
Reference Manual
Release Notes
PDF
Top

cosNotification
Reference Manual
Version 1.1.18

Expand All
Contract All

Table of Contents

- cosNotificationApp
  - Top of manual page
  - install/0
  - install/1
  - install_event/0
  - install_event/1
  - uninstall/0
  - uninstall/1
  - uninstall_event/0
  - uninstall_event/1
  - start/0
  - stop/0
  - start_global_factory/0
  - start_global_factory/1
  - start_factory/0
  - start_factory/1
  - stop_factory/1
  - start_filter_factory/0
  - stop_filter_factory/1
  - create_structured_event/6
  - type_check/0
- CosNotifyChannelAdmin_EventChannelFactory
  - Top of manual page
  - create_channel/3
  - get_all_channels/1
  - get_event_channel/2
- CosNotifyChannelAdmin_EventChannel
  - Top of manual page
  - _get_MyFactory/1
  - _get_default_consumer_admin/1
  - _get_default_supplier_admin/1
  - _get_default_filter_factory/1
  - new_for_consumers/2
  - for_consumers/1
  - new_for_suppliers/2
  - for_suppliers/1
  - get_consumeradmin/2
  - get_supplieradmin/2
  - get_all_consumeradmins/1
  - get_all_supplieradmins/1
  - destroy/1
- CosNotification
  - Top of manual page
  - 'EventReliability'/0
  - 'BestEffort'/0
  - 'Persistent'/0
  - 'ConnectionReliability'/0
  - 'Priority'/0
  - 'LowestPriority'/0
  - 'HighestPriority'/0
  - 'DefaultPriority'/0
  - 'StartTime'/0
  - 'StopTime'/0
  - 'Timeout'/0
  - 'OrderPolicy'/0
  - 'AnyOrder'/0
  - 'FifoOrder'/0
  - 'PriorityOrder'/0
  - 'DeadlineOrder'/0
  - 'DiscardPolicy'/0
  - 'LifoOrder'/0
  - 'RejectNewEvents'/0
  - 'MaximumBatchSize'/0
  - 'PacingInterval'/0
  - 'StartTimeSupported'/0
  - 'StopTimeSupported'/0
  - 'MaxEventsPerConsumer'/0
  - 'MaxQueueLength'/0
  - 'MaxConsumers'/0
  - 'MaxSuppliers'/0
- CosNotification_QoSAdmin
  - Top of manual page
  - get_qos/1
  - set_qos/2
  - validate_qos/2
- CosNotification_AdminPropertiesAdmin
  - Top of manual page
  - get_admin/1
  - set_admin/2
- CosNotifyChannelAdmin_ConsumerAdmin
  - Top of manual page
  - _get_MyID/1
  - _get_MyChannel/1
  - _get_MyOperator/1
  - _get_priority_filter/1
  - _set_priority_filter/2
  - _get_lifetime_filter/1
  - _set_lifetime_filter/2
  - _get_pull_suppliers/1
  - _get_push_suppliers/1
  - get_proxy_supplier/2
  - obtain_notification_pull_supplier/2
  - obtain_pull_supplier/1
  - obtain_notification_push_supplier/2
  - obtain_push_supplier/1
  - destroy/1
- CosNotifyChannelAdmin_SupplierAdmin
  - Top of manual page
  - _get_MyID/1
  - _get_MyChannel/1
  - _get_MyOperator/1
  - _get_pull_consumers/1
  - _get_push_consumers/1
  - get_proxy_consumer/2
  - obtain_notification_pull_consumer/2
  - obtain_pull_consumer/1
  - obtain_notification_push_consumer/2
  - obtain_push_consumer/1
  - destroy/1
- CosNotifyComm_NotifyPublish
  - Top of manual page
  - offer_change/3
- CosNotifyComm_NotifySubscribe
  - Top of manual page
  - subscription_change/3
- CosNotifyFilter_FilterAdmin
  - Top of manual page
  - add_filter/2
  - remove_filter/2
  - get_filter/2
  - get_all_filters/1
  - remove_all_filters/1
- CosNotifyFilter_FilterFactory
  - Top of manual page
  - create_filter/2
  - create_mapping_filter/2
- CosNotifyFilter_Filter
  - Top of manual page
  - _get_constraint_grammar/1
  - add_constraints/2
  - modify_constraints/3
  - get_constraints/2
  - get_all_constraints/1
  - remove_all_constraints/1
  - destroy/1
  - match/2
  - match_structured/2
  - attach_callback/2
  - detach_callback/2
  - get_callbacks/1
- CosNotifyFilter_MappingFilter
  - Top of manual page
  - _get_constraint_grammar/1
  - _get_value_type/1
  - _get_default_value/1
  - add_mapping_constraints/2
  - modify_constraints/3
  - get_mapping_constraints/2
  - get_all_mapping_constraints/1
  - remove_all_mapping_constraints/1
  - destroy/1
  - match/2
  - match_structured/2
- CosNotifyChannelAdmin_ProxyConsumer
  - Top of manual page
  - _get_MyType/1
  - _get_MyAdmin/1
  - obtain_subscription_types/2
  - validate_event_qos/2
- CosNotifyChannelAdmin_ProxySupplier
  - Top of manual page
  - _get_MyType/1
  - _get_MyAdmin/1
  - _get_priority_filter/1
  - _set_priority_filter/2
  - _get_lifetime_filter/1
  - _set_lifetime_filter/2
  - obtain_offered_types/2
  - validate_event_qos/2
- CosNotifyChannelAdmin_ProxyPullConsumer
  - Top of manual page
  - connect_any_pull_supplier/2
  - suspend_connection/1
  - resume_connection/1
  - disconnect_pull_consumer/1
- CosNotifyChannelAdmin_ProxyPullSupplier
  - Top of manual page
  - connect_any_pull_consumer/2
  - pull/1
  - try_pull/1
  - disconnect_pull_supplier/1
- CosNotifyChannelAdmin_ProxyPushConsumer
  - Top of manual page
  - connect_any_push_supplier/2
  - push/2
  - disconnect_push_consumer/1
- CosNotifyChannelAdmin_ProxyPushSupplier
  - Top of manual page
  - connect_any_push_consumer/2
  - suspend_connection/1
  - resume_connection/1
  - disconnect_push_supplier/1
- CosNotifyChannelAdmin_SequenceProxyPullConsumer
  - Top of manual page
  - connect_sequence_pull_supplier/2
  - suspend_connection/1
  - resume_connection/1
  - disconnect_sequence_pull_consumer/1
- CosNotifyChannelAdmin_SequenceProxyPullSupplier
  - Top of manual page
  - connect_sequence_pull_consumer/2
  - pull_structured_events/2
  - try_pull_structured_events/2
  - disconnect_sequence_pull_supplier/1
- CosNotifyChannelAdmin_SequenceProxyPushConsumer
  - Top of manual page
  - connect_sequence_push_supplier/2
  - push_structured_events/2
  - disconnect_sequence_push_consumer/1
- CosNotifyChannelAdmin_SequenceProxyPushSupplier
  - Top of manual page
  - connect_sequence_push_consumer/2
  - suspend_connection/1
  - resume_connection/1
  - disconnect_sequence_push_supplier/1
- CosNotifyChannelAdmin_StructuredProxyPullConsumer
  - Top of manual page
  - connect_structured_pull_supplier/2
  - suspend_connection/1
  - resume_connection/1
  - disconnect_structured_pull_consumer/1
- CosNotifyChannelAdmin_StructuredProxyPullSupplier
  - Top of manual page
  - connect_structured_pull_consumer/2
  - pull_structured_event/1
  - try_pull_structured_event/1
  - disconnect_structured_pull_supplier/1
- CosNotifyChannelAdmin_StructuredProxyPushConsumer
  - Top of manual page
  - connect_structured_push_supplier/2
  - push_structured_event/2
  - disconnect_structured_push_consumer/1
- CosNotifyChannelAdmin_StructuredProxyPushSupplier
  - Top of manual page
  - connect_structured_push_consumer/2
  - suspend_connection/1
  - resume_connection/1
  - disconnect_structured_push_supplier/1

# CosNotifyChannelAdmin_ProxyConsumer

### MODULE

CosNotifyChannelAdmin_ProxyConsumer

### MODULE SUMMARY

This module implements the OMG CosNotifyChannelAdmin::ProxyConsumer interface.

### DESCRIPTION

To get access to the record definitions for the structures use:
-include_lib("cosNotification/include/*.hrl").

This module also exports the functions described in:

- CosNotification_QoSAdmin

- CosNotifyFilter_FilterAdmin

### EXPORTS

_get_MyType(ProxyConsumer) -> ProxyType

Types:

ProxyConsumer = #objref
ProxyType = 'PUSH_ANY' | 'PULL_ANY' | 'PUSH_STRUCTURED' | 'PULL_STRUCTURED' | 'PUSH_SEQUENCE' | 'PULL_SEQUENCE'

This readonly attribute maintains the enumerant describing the which type the target object is.

_get_MyAdmin(ProxyConsumer) -> AdminObject

Types:

ProxyConsumer = AdminObject = #objref

This readonly attribute maintains the admin's reference which created the target object.

obtain_subscription_types(ProxyConsumer, ObtainInfoMode) -> EventTypeSeq

Types:

ProxyConsumer = #objref
ObtainInfoMode = 'ALL_NOW_UPDATES_OFF' | 'ALL_NOW_UPDATES_ON' | 'NONE_NOW_UPDATES_OFF' | 'NONE_NOW_UPDATES_ON'
EventTypeSeq = [EventType]
EventType = #'CosNotification_EventType'{domain_name, type_name}
domain_name = type_name = string()

Depending on the input parameter ObtainInfoMode, this operation may return a sequence of the EventTypes the target object is interested in receiving. If 'ALL_NOW_UPDATES_OFF' or 'ALL_NOW_UPDATES_ON' is given a sequence will be returned, otherwise not. If 'ALL_NOW_UPDATES_OFF' or 'NONE_NOW_UPDATES_OFF' are issued the target object will not inform the associated NotifySubscribe object when an update occurs. 'ALL_NOW_UPDATES_ON' or 'NONE_NOW_UPDATES_ON' will result in that update information will be sent.

validate_event_qos(ProxyConsumer, QoSProperties) -> Reply

Types:

ProxyConsumer = #objref
QoSProperties = [QoSProperty]
QoSProperty = #'CosNotification_Property'{name, value}
name = string()
value = #any
Reply = {ok, NamedPropertyRangeSeq} | {'EXCEPTION', CosNotification_UnsupportedQoS{qos_err}}
NamedPropertyRangeSeq = [NamedPropertyRange]
NamedPropertyRange = #CosNotification_NamedPropertyRange{name, range}
name = string()
range = #CosNotification_PropertyRange{low_val, high_val}
low_val = #any
high_val = #any
qos_err = PropertyErrorSeq
PropertyErrorSeq = [PropertyError]
PropertyError = #'CosNotification_PropertyError'{code, name, available_range}
code = 'UNSUPPORTED_PROPERTY' | 'UNAVAILABLE_PROPERTY' | 'UNSUPPORTED_VALUE' | 'UNAVAILABLE_VALUE' | 'BAD_PROPERTY' | 'BAD_TYPE' | 'BAD_VALUE'
name = string()
available_range = PropertyRange
PropertyRange = #CosNotification_PropertyRange{low_val, high_val}
low_val = high_val = #any

To check if certain Quality of Service properties can be added to events in the current context of the target object this operation should be used. If we cannot support the required settings an exception describing why will be raised.