2000 2007 Ericsson AB, All Rights Reserved The contents of this file are subject to the Erlang Public License, Version 1.1, (the "License"); you may not use this file except in compliance with the License. You should have received a copy of the Erlang Public License along with this software. If not, it can be retrieved online at http://www.erlang.org/. Software distributed under the License is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for the specific language governing rights and limitations under the License. The Initial Developer of the Original Code is Ericsson AB. CosNotifyChannelAdmin_­SequenceProxyPullSupplier ..._SequenceProxyPullSupplier Niclas Eklund Niclas Eklund Niclas Eklund 2000-02-01 1.0
CosNotifyChannelAdmin_SequenceProxyPullSupplier This module implements the OMG CosNotifyChannelAdmin::SequenceProxyPullSupplier 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_NotifySubscribe

CosNotification_QoSAdmin

CosNotifyFilter_FilterAdmin

CosNotifyChannelAdmin_ProxySupplier

connect_sequence_pull_consumer(SequenceProxyPullSupplier, PullConsumer) -> Reply Connect a consumer to the proxy 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 Pull structured events from the proxy 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 Try to pull structured events from the proxy 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 Close the connection and terminate the proxy SequenceProxyPullSupplier = #objref

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