CosEventDomainAdmin_EventDomain

This module implements the Event Domain interface.

To get access to all definitions include necessary hrl files by using:
-include_lib("cosEventDomain/include/*.hrl").

This module also exports the functions described in:

CosNotification_QoSAdmin CosNotification_AdminPropertiesAdmin

Functions


add_channel(EventDomain, Channel) -> MemberID

  • EventDomain = Channel = #objref
  • MemberID = long()

Adds the given channel to the target domain. The channel must be a CosNotifyChannelAdmin::EventChannel.

get_all_channels(EventDomain) -> MemberIDSeq

  • EventDomain = #objref
  • MemberIDSeq = [long()]

Returns a a sequence of all channels associated with the target object.

get_channel(EventDomain, MemberID) -> Reply

  • EventDomain = #objref
  • MemberID = long()
  • Reply = Channel | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}
  • Channel = #objref

If the target domain have a CosNotifyChannelAdmin::EventChannel represented by the given id this channel is returned. Otherwise, an exception is raised.

remove_channel(EventDomain, MemberID) -> Reply

  • EventDomain = #objref
  • MemberID = long()
  • Reply = ok | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a CosNotifyChannelAdmin::EventChannel with the MemberID exists it will removed and all its Connections terminated. Otherwise an exception is raised.

add_connection(EventDomain, Connection) -> Reply

  • EventDomain = #objref
  • Connection = 'CosEventDomainAdmin_Connection'{supplier_id=MemberID, consumer_id=MemberID, ctype=Type, notification_style=Style}
  • MemberID = long()
  • Type = 'ANY_EVENT' | 'STRUCTURED_EVENT' | 'SEQUENCE_EVENT'
  • Style = 'Pull' | 'Push'
  • Reply = ConnectionID | {'EXCEPTION', Exc}
  • ConnectionID = long()
  • Exc = #'CosNotifyChannelAdmin_ChannelNotFound'{} | #'CosNotifyChannelAdmin_TypeError'{} | #'CosEventDomainAdmin_AlreadyExists'{} | #'CosEventDomainAdmin_DiamondCreationForbidden'{diam=RouteSeq} | #'CosEventDomainAdmin_CycleCreationForbidden'{cyc=MemberIDSeq}
  • RouteSeq = [MemberIDSeq]
  • MemberIDSeq = [long()]

The Connection parameter must contain valid data to enable the target domain to setup a connection between two channels. The struct members supplier_id and consumer_id determines which channel should produce and consume events. which type of events and if the supplier should push or the consumer pull events is determined by ctype and notification_style respectively.

If the target domain is not able to setup the connection the appropriate exception is raised.

get_all_connections(EventDomain) -> ConnectionIDSeq

  • EventDomain = #objref
  • ConnectionIDSeq = [long()]

This operation returns a sequence of all connections within the target domain.

get_connection(EventDomain, ConnectionID) -> Reply

  • EventDomain = #objref
  • ConnectionID = long()
  • Reply = Connection | {'EXCEPTION', #'CosEventDomainAdmin_ConnectionNotFound'{}}
  • Connection = 'CosEventDomainAdmin_Connection'{supplier_id=MemberID, consumer_id=MemberID, ctype=Type, notification_style=Style}
  • MemberID = long()
  • Type = 'ANY_EVENT' | 'STRUCTURED_EVENT' | 'SEQUENCE_EVENT'
  • Style = 'Pull' | 'Push'

If a connection identified by the given id exists within the target domain, a #'CosEventDomainAdmin_Connection'{} which describe the connection is returned. Otherwise, an exception is raised.

remove_connection(EventDomain, ConnectionID) -> Reply

  • EventDomain = #objref
  • ConnectionID = long()
  • Reply = ok | {'EXCEPTION', #'CosEventDomainAdmin_ConnectionNotFound'{}}

If the supplied connection id exists, the connection the id represents is terminated. Otherwise, an exception is raised.

get_offer_channels(EventDomain, MemberID) -> Reply

  • EventDomain = #objref
  • MemberID = long()
  • Reply = MemberIDSeq | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

This operation returns a sequence, containing the member id's of all channels within the target domain which will supply events to the channel identified by the given id. But, if no such id exists in this domain, an exception is raised.

get_subscription_channels(EventDomain, MemberID) -> Reply

  • EventDomain = #objref
  • Reply = MemberIDSeq | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

This operations behaves like get_subscription_channels; the difference is that the id's returned identifies channels which will consume events supplied by the channel associated with the given id.

destroy(EventDomain) -> ok

  • EventDomain = #objref

Calling this operation will terminate all connections within the target domain. The domain will terminate but all channels will not be affected.

get_cycles(EventDomain) -> RouteSeq

  • EventDomain = #objref
  • RouteSeq = [MemberIDSeq]
  • MemberIDSeq = [long()]

Returns a list of all cycles within the target domain.

get_diamonds(EventDomain) -> DiamondSeq

  • EventDomain = #objref
  • DiamondSeq = [RouteSeq]
  • RouteSeq = [MemberIDSeq]
  • MemberIDSeq = [long()]

Returns a list of all diamonds within the target domain

set_default_consumer_channel(EventDomain, MemberID) -> Reply

  • EventDomain = #objref
  • Reply = MemberID | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}
  • MemberID = long()

If the given id represents a channel within the target domain, this channel will be used when connection a supplier client without specifying a certain channel. If no such channel exists an exceptions is raised.

set_default_supplier_channel(EventDomain, MemberID) -> Reply

  • EventDomain = #objref
  • Reply = MemberID | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}
  • MemberID = long()

If the given id represents a channel within the target domain, this channel will be used when connection a consumer client without specifying a certain channel. If no such channel exists an exceptions is raised.

connect_push_consumer(EventDomain, Consumer) -> Reply

  • EventDomain = #objref
  • Consumer = CosEventComm::PushConsumer
  • Reply = CosNotifyChannelAdmin::ProxyPushSupplier | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a default Channel have been set, this operation connects the given PushConsumer to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_pull_consumer(EventDomain, Consumer) -> Reply

  • EventDomain = #objref
  • Consumer = CosEventComm::PullConsumer
  • Reply = CosNotifyChannelAdmin::ProxyPullSupplier | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a default Channel have been set, this operation connects the given PullConsumer to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_push_supplier(EventDomain, Supplier) -> Reply

  • EventDomain = #objref
  • Supplier = CosEventComm::PushSupplier
  • Reply = CosNotifyChannelAdmin::ProxyPushConsumer | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a default Channel have been set, this operation connects the given PushSupplier to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_pull_supplier(EventDomain, Supplier) -> Reply

  • EventDomain = #objref
  • Supplier = CosEventComm::PullSupplier
  • Reply = CosNotifyChannelAdmin::ProxyPushConsumer | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a default Channel have been set, this operation connects the given PullSupplier to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_structured_push_consumer(EventDomain, Consumer) -> Reply

  • EventDomain = #objref
  • Consumer = CosNotifyComm::StructuredPushConsumer
  • Reply = CosNotifyChannelAdmin::StructuredProxyPushSupplier | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a default Channel have been set, this operation connects the given StructuredPushConsumer to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_structured_pull_consumer(EventDomain, Consumer) -> Reply

  • EventDomain = #objref
  • Consumer = CosNotifyComm::StructuredPullConsumer
  • Reply = CosNotifyChannelAdmin::StructuredProxyPullSupplier | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a default Channel have been set, this operation connects the given StructuredPullConsumer to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_structured_push_supplier(EventDomain, Supplier) -> Reply

  • EventDomain = #objref
  • Supplier = CosNotifyComm::StructuredPushSupplier
  • Reply = CosNotifyChannelAdmin::StructuredProxyPushConsumer | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a default Channel have been set, this operation connects the given StructuredPushSupplier to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_structured_pull_supplier(EventDomain, Supplier) -> Reply

  • EventDomain = #objref
  • Supplier = CosNotifyComm::StructuredPullSupplier
  • Reply = CosNotifyChannelAdmin::StructuredProxyPullConsume | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a default Channel have been set, this operation connects the given StructuredPullSupplier to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_sequence_push_consumer(EventDomain, Consumer) -> Reply

  • EventDomain = #objref
  • Consumer = CosNotifyComm::SequencePushConsumer
  • Reply = CosNotifyChannelAdmin::SequenceProxyPushSupplier | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a default Channel have been set, this operation connects the given SequencePushConsumer to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_sequence_pull_consumer(EventDomain, Consumer) -> Reply

  • EventDomain = #objref
  • Consumer = CosNotifyComm::SequencePullConsumer
  • Reply = CosNotifyChannelAdmin::SequenceProxyPullSupplier | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a default Channel have been set, this operation connects the given SequencePullConsumer to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_sequence_push_supplier(EventDomain, Supplier) -> Reply

  • EventDomain = #objref
  • Supplier = CosNotifyComm::SequencePushSupplier
  • Reply = CosNotifyChannelAdmin::SequenceProxyPushConsumer | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a default Channel have been set, this operation connects the given SequencePushSupplier to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_sequence_pull_supplier(EventDomain, Supplier) -> Reply

  • EventDomain = #objref
  • Supplier = CosNotifyComm::SequencePullSupplier
  • Reply = CosNotifyChannelAdmin::SequenceProxyPullConsumer | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a default Channel have been set, this operation connects the given SequencePullSupplier to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_push_consumer_with_id(EventDomain, Consumer, MemberID) -> Reply

  • EventDomain = #objref
  • Consumer = CosEventComm::PushConsumer
  • MemberID = long()
  • Reply = CosNotifyChannelAdmin::ProxyPushSupplier | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a Channel associated with the given MemberID exists within the target Domain, this operation connects the given PushConsumer to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_pull_consumer_with_id(EventDomain, Consumer, MemberID) -> Reply

  • EventDomain = #objref
  • Consumer = CosEventComm::PullConsumer
  • MemberID = long()
  • Reply = CosNotifyChannelAdmin::ProxyPullSupplier | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a Channel associated with the given MemberID exists within the target Domain, this operation connects the given PullConsumer to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_push_supplier_with_id(EventDomain, Supplier, MemberID) -> Reply

  • EventDomain = #objref
  • Supplier = CosEventComm::PushSupplier
  • MemberID = long()
  • Reply = CosNotifyChannelAdmin::ProxyPushConsumer | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a Channel associated with the given MemberID exists within the target Domain, this operation connects the given PushSupplier to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_pull_supplier_with_id(EventDomain, Supplier, MemberID) -> Reply

  • EventDomain = #objref
  • Supplier = CosEventComm::PullSupplier
  • MemberID = long()
  • Reply = CosNotifyChannelAdmin::ProxyPushConsumer | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a Channel associated with the given MemberID exists within the target Domain, this operation connects the given PullSupplier to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_structured_push_consumer_with_id(EventDomain, Consumer, MemberID) -> Reply

  • EventDomain = #objref
  • Consumer = CosNotifyComm::StructuredPushConsumer
  • MemberID = long()
  • Reply = CosNotifyChannelAdmin::StructuredProxyPushSupplier | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a Channel associated with the given MemberID exists within the target Domain, this operation connects the given StructuredPushConsumer to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_structured_pull_consumer_with_id(EventDomain, Consumer, MemberID) -> Reply

  • EventDomain = #objref
  • Consumer = CosNotifyComm::StructuredPullConsumer
  • MemberID = long()
  • Reply = CosNotifyChannelAdmin::StructuredProxyPullSupplier | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a Channel associated with the given MemberID exists within the target Domain, this operation connects the given StructuredPullConsumer to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_structured_push_supplier_with_id(EventDomain, Supplier, MemberID) -> Reply

  • EventDomain = #objref
  • Supplier = CosNotifyComm::StructuredPushSupplier
  • MemberID = long()
  • Reply = CosNotifyChannelAdmin::StructuredProxyPushConsumer | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a Channel associated with the given MemberID exists within the target Domain, this operation connects the given StructuredPushSupplier to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_structured_pull_supplier_with_id(EventDomain, Supplier, MemberID) -> Reply

  • EventDomain = #objref
  • Supplier = CosNotifyComm::StructuredPullSupplier
  • MemberID = long()
  • Reply = CosNotifyChannelAdmin::StructuredProxyPullConsumer | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a Channel associated with the given MemberID exists within the target Domain, this operation connects the given StructuredPullSupplier to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_sequence_push_consumer_with_id(EventDomain, Consumer, MemberID) -> Reply

  • EventDomain = #objref
  • Consumer = CosNotifyComm::SequencePushConsumer
  • MemberID = long()
  • Reply = CosNotifyChannelAdmin::SequenceProxyPushSupplier | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a Channel associated with the given MemberID exists within the target Domain, this operation connects the given SequencePushConsumer to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_sequence_pull_consumer_with_id(EventDomain, Consumer, MemberID) -> Reply

  • EventDomain = #objref
  • Consumer = CosNotifyComm::SequencePullConsumer
  • MemberID = long()
  • Reply = CosNotifyChannelAdmin::SequenceProxyPullSupplier | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a Channel associated with the given MemberID exists within the target Domain, this operation connects the given SequencePullConsumer to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_sequence_push_supplier_with_id(EventDomain, Supplier, MemberID) -> Reply

  • EventDomain = #objref
  • Supplier = CosNotifyComm::SequencePushSupplier
  • MemberID = long()
  • Reply = CosNotifyChannelAdmin::SequenceProxyPushConsumer | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a Channel associated with the given MemberID exists within the target Domain, this operation connects the given SequencePushSupplier to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.

connect_sequence_pull_supplier_with_id(EventDomain, Supplier, MemberID) -> Reply

  • EventDomain = #objref
  • Supplier = CosNotifyComm::SequencePullSupplier
  • MemberID = long()
  • Reply = CosNotifyChannelAdmin::SequenceProxyPullConsumer | {'EXCEPTION', #'CosNotifyChannelAdmin_ChannelNotFound'{}}

If a Channel associated with the given MemberID exists within the target Domain, this operation connects the given SequencePullSupplier to it. Otherwise, the #'CosNotifyChannelAdmin_ChannelNotFound'{} exception is raised.