CosNotifyChannelAdmin_StructuredProxyPushConsumer

This module implements the OMG CosNotifyChannelAdmin::StructuredProxyPushConsumer 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:

CosNotifyComm_NotifyPublish

CosNotification_QoSAdmin

CosNotifyFilter_FilterAdmin

CosNotifyChannelAdmin_ProxyConsumer

Functions


connect_structured_push_supplier(StructuredProxyPushConsumer, PushSupplier) -> Reply

  • StructuredProxyPushConsumer = #objref
  • PushSupplier = #objref
  • Reply = ok | {'EXCEPTION', #'CosEventChannelAdmin_AlreadyConnected'{}}

This operation connects a PushSupplier to the target object. If a connection already exists an exception is raised.

push_structured_event(StructuredProxyPushConsumer, StructuredEvent) -> Reply

  • StructuredProxyPushConsumer = #objref
  • StructuredEvent = #'CosNotification_StructuredEvent'{header, filterable_data, remainder_of_body}
  • header = EventHeader
  • filterable_data = [#'CosNotification_Property'{name, value}]
  • name = string()
  • value = #any
  • remainder_of_body = #any
  • EventHeader = #'CosNotification_EventHeader'{fixed_header, variable_header}
  • fixed_header = FixedEventHeader
  • variable_header = OptionalHeaderFields
  • FixedEventHeader = #'CosNotification_FixedEventHeader'{event_type, event_name}
  • event_type = EventType
  • event_name = string()
  • EventType = #'CosNotification_EventType'{domain_name, type_name}
  • domain_name = type_name = string()
  • OptionalHeaderFields = [#'CosNotification_Property'{name, value}]
  • Reply = ok | {'EXCEPTION', #'CosEventChannelAdmin_Disconnected'{}}

When a client want to push a new event to the target object this operation must be used.

disconnect_structured_push_consumer(StructuredProxyPushConsumer) -> ok

  • StructuredProxyPushConsumer = #objref

This operation cause the target object to close the connection and terminate.