CosNotifyChannelAdmin_ProxyConsumer

This module implements the OMG CosNotifyChannelAdmin::ProxyConsumer interface.

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

Functions


_get_MyType(ProxyConsumer) -> ProxyType

  • 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

  • ProxyConsumer = AdminObject = #objref

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

obtain_subscription_types(ProxyConsumer, ObtainInfoMode) -> EventTypeSeq

  • 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

  • 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.