CosNotifyChannelAdmin_SequenceProxyPullSupplier
MODULE
CosNotifyChannelAdmin_SequenceProxyPullSupplier
MODULE SUMMARY
This module implements the OMG CosNotifyChannelAdmin::SequenceProxyPullSupplier 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:
EXPORTS
connect_sequence_pull_consumer(SequenceProxyPullSupplier, PullConsumer) -> Reply
Types:
SequenceProxyPullSupplier = #objref
PullConsumer = #objref
Reply = ok | {'EXCEPTION', #'CosEventChannelAdmin_AlreadyConnected'{}}
This operation connects a PullConsumer to the target object. If a connection
already exists an exception is raised.
pull_structured_events(SequenceProxyPullSupplier, MaxEvents) -> Reply
Types:
SequenceProxyPullSupplier = #objref
MaxEvents = long()
Reply = EventBatch | {'EXCEPTION', #'CosEventChannelAdmin_Disconnected'{}}
EventBatch = [StructuredEvent]
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}]
A client use this operation to pull next event sequence of maximum length
MaxEvents. This operation is blocking and will not reply until the
requested amount of events can be delivered or the QoS property PacingInterval
is reached. For more information see the User's Guide.
try_pull_structured_events(SequenceProxyPullSupplier, MaxEvents) -> Reply
Types:
SequenceProxyPullSupplier = #objref
MaxEvents = long()
Reply = {EventBatch, HasEvent} | {'EXCEPTION', #'CosEventChannelAdmin_Disconnected'{}}
HasEvent = boolean()
EventBatch = [StructuredEvent]
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 an event sequence of the maximum length MaxEvents,
but do not block if the target object have no events to forward. The outparameter,
HasEvent is true if the sequence contain any events.
disconnect_sequence_pull_supplier(SequenceProxyPullSupplier) -> ok
Types:
SequenceProxyPullSupplier = #objref
This operation cause the target object to close the connection and terminate.