<?xml version="1.0" encoding="latin1" ?>
<!DOCTYPE erlref SYSTEM "erlref.dtd">

<erlref>
  <header>
    <copyright>
      <year>2001</year>
      <year>2007</year>
      <holder>Ericsson AB, All Rights Reserved</holder>
    </copyright>
    <legalnotice>
  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.
    </legalnotice>

    <title>CosEventDomainAdmin_&shy;EventDomainFactory</title>
    <shorttitle>..._EventChannel</shorttitle>
    <prepared>Niclas Eklund</prepared>
    <responsible>Niclas Eklund</responsible>
    <docno></docno>
    <approved>Niclas Eklund</approved>
    <checked></checked>
    <date>2001-08-20</date>
    <rev>PA1</rev>
  </header>
  <module>CosEventDomainAdmin_EventDomainFactory</module>
  <modulesummary>This module implements an Event Domain Factory interface, which  is used to create new Event Domain instances.</modulesummary>
  <description>
    <p>To get access to all definitions include necessary <c><![CDATA[hrl]]></c> files by using:<br></br><c><![CDATA[-include_lib("cosEventDomain/include/*.hrl").]]></c></p>
  </description>
  <funcs>
    <func>
      <name>create_event_domain(Factory, QoS, Admin) -> Reply</name>
      <fsummary>Create a new ConsumerAdmin object</fsummary>
      <type>
        <v>Factory     = #objref</v>
        <v>QoS         = CosNotification::QoSProperties</v>
        <v>Admin       = CosNotification::AdminProperties</v>
        <v>Reply       = {EventDomain, DomainID} |  {'EXCEPTION', #'CosNotification_UnsupportedQoS'{}} | {'EXCEPTION', #'CosNotification_UnsupportedAdmin'{}}</v>
        <v>EventDomain = #objref</v>
      </type>
      <desc>
        <p>To create a new EventDomain this operation is used. If it is not
          possible to support the given <c><![CDATA[QoSProperties]]></c> or <c><![CDATA[AdminProperties]]></c>
          an exception is raised, which list the properties not supported. For more
          information see the <c><![CDATA[cosNotification]]></c> user's guide.</p>
      </desc>
    </func>
    <func>
      <name>get_all_domains(Factory) -> DomainIDSeq</name>
      <fsummary>Return a DomainID sequence of all domains associated with the target object</fsummary>
      <type>
        <v>Factory     = #objref</v>
        <v>DomainIDSeq = [long()]</v>
      </type>
      <desc>
        <p>This function returns a DomainID sequence of all domains associated with the
          target object.</p>
      </desc>
    </func>
    <func>
      <name>get_event_domain(Factory, DomainID) -> Reply</name>
      <fsummary>Return the domain associated with the given id</fsummary>
      <type>
        <v>Factory     = #objref</v>
        <v>DomainID    = long()</v>
        <v>Reply       = EventDomain | {'EXCEPTION', #'CosEventDomainAdmin_DomainNotFound'{}}</v>
        <v>EventDomain = #objref</v>
      </type>
      <desc>
        <p>This operation returns the EventDomain object associated with the
          given DomainID. If no such binding exists an exception is raised.</p>
      </desc>
    </func>
  </funcs>
  
</erlref>

