# CosNotifyChannelAdmin_StructuredProxyPullSupplier

### MODULE

CosNotifyChannelAdmin_StructuredProxyPullSupplier

### MODULE SUMMARY

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

- CosNotifyComm_NotifySubscribe
- CosNotification_QoSAdmin
- CosNotifyFilter_FilterAdmin
- CosNotifyChannelAdmin_ProxySupplier

### EXPORTS

connect_structured_pull_consumer(StructuredProxyPullSupplier, PullConsumer) -> Reply

Types:

StructuredProxyPullSupplier = #objref
PullConsumer = #objref
Reply = ok | {'EXCEPTION', #'CosEventChannelAdmin_AlreadyConnected'{}}

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

pull_structured_event(StructuredProxyPullSupplier) -> Reply

Types:

StructuredProxyPullSupplier = #objref
Reply = StructuredEvent | {'EXCEPTION', #'CosEventChannelAdmin_Disconnected'{}}
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}]

This operation pulls next event from the target object; if an event cannot be delivered this function blocks until an event arrives.

try_pull_structured_event(StructuredProxyPullSupplier) -> Reply

Types:

StructuredProxyPullSupplier = #objref
Reply = {StructuredEvent, HasEvent} | {'EXCEPTION', #'CosEventChannelAdmin_Disconnected'{}}
HasEvent = boolean()
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}]

This operation try to pull next event from the target object. If no event have arrived an empty event is returned and the out parameter HasEvent is set to false. Otherwise, the boolean flag is set to true and an valid event is returned.

disconnect_structured_pull_supplier(StructuredProxyPullSupplier) -> ok

Types:

StructuredProxyPullSupplier = #objref

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

cosNotification 1.1.9
Copyright © 1991-2008 Ericsson AB