Sophie

Sophie

distrib > Fedora > 17 > i386 > media > updates > by-pkgid > 675c8c8167236dfcf8d66da674f931e8 > files > 386

erlang-doc-R15B-03.3.fc17.noarch.rpm

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html xmlns:fn="http://www.w3.org/2005/02/xpath-functions">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="../../../../doc/otp_doc.css" type="text/css">
<title>Erlang -- The Notification Service Components</title>
</head>
<body bgcolor="white" text="#000000" link="#0000ff" vlink="#ff00ff" alink="#ff0000"><div id="container">
<script id="js" type="text/javascript" language="JavaScript" src="../../../../doc/js/flipmenu/flipmenu.js"></script><script id="js2" type="text/javascript" src="../../../../doc/js/erlresolvelinks.js"></script><script language="JavaScript" type="text/javascript">
            <!--
              function getWinHeight() {
                var myHeight = 0;
                if( typeof( window.innerHeight ) == 'number' ) {
                  //Non-IE
                  myHeight = window.innerHeight;
                } else if( document.documentElement && ( document.documentElement.clientWidth ||
                                                         document.documentElement.clientHeight ) ) {
                  //IE 6+ in 'standards compliant mode'
                  myHeight = document.documentElement.clientHeight;
                } else if( document.body && ( document.body.clientWidth || document.body.clientHeight ) ) {
                  //IE 4 compatible
                  myHeight = document.body.clientHeight;
                }
                return myHeight;
              }

              function setscrollpos() {
                var objf=document.getElementById('loadscrollpos');
                 document.getElementById("leftnav").scrollTop = objf.offsetTop - getWinHeight()/2;
              }

              function addEvent(obj, evType, fn){
                if (obj.addEventListener){
                obj.addEventListener(evType, fn, true);
                return true;
              } else if (obj.attachEvent){
                var r = obj.attachEvent("on"+evType, fn);
                return r;
              } else {
                return false;
              }
             }

             addEvent(window, 'load', setscrollpos);

             //--></script><div id="leftnav"><div class="innertube">
<img alt="Erlang logo" src="../../../../doc/erlang-logo.png"><br><small><a href="users_guide.html">User's Guide</a><br><a href="index.html">Reference Manual</a><br><a href="release_notes.html">Release Notes</a><br><a href="../pdf/cosNotification-1.1.18.pdf">PDF</a><br><a href="../../../../doc/index.html">Top</a></small><p><strong>cosNotification</strong><br><strong>User's Guide</strong><br><small>Version 1.1.18</small></p>
<br><a href="javascript:openAllFlips()">Expand All</a><br><a href="javascript:closeAllFlips()">Contract All</a><p><small><strong>Chapters</strong></small></p>
<ul class="flipMenu" imagepath="../../../../doc/js/flipmenu">
<li id="no" title="The cosNotification Application" expanded="false">The cosNotification Application<ul>
<li><a href="ch-contents.html">
              Top of chapter
            </a></li>
<li title="Content Overview"><a href="ch-contents.html#id63553">Content Overview</a></li>
<li title="Brief Description of the User's Guide"><a href="ch-contents.html#id57496">Brief Description of the User's Guide</a></li>
</ul>
</li>
<li id="no" title="Introduction to cosNotification" expanded="false">Introduction to cosNotification<ul>
<li><a href="ch_introduction.html">
              Top of chapter
            </a></li>
<li title="Overview"><a href="ch_introduction.html#id59810">Overview</a></li>
</ul>
</li>
<li id="no" title="Installing cosNotification" expanded="false">Installing cosNotification<ul>
<li><a href="ch-install.html">
              Top of chapter
            </a></li>
<li title="Installation Process "><a href="ch-install.html#id61483">Installation Process </a></li>
</ul>
</li>
<li id="loadscrollpos" title="The Notification Service Components" expanded="true">The Notification Service Components<ul>
<li><a href="ch_system.html">
              Top of chapter
            </a></li>
<li title="The Notification Service Components"><a href="ch_system.html#id62962">The Notification Service Components</a></li>
</ul>
</li>
<li id="no" title="Filters and the Constraint Language BNF" expanded="false">Filters and the Constraint Language BNF<ul>
<li><a href="ch_BNF.html">
              Top of chapter
            </a></li>
<li title="Filters and the Constraint Language BNF"><a href="ch_BNF.html#id64314">Filters and the Constraint Language BNF</a></li>
</ul>
</li>
<li id="no" title="Quality Of Service and Admin Properties" expanded="false">Quality Of Service and Admin Properties<ul>
<li><a href="ch_QoS.html">
              Top of chapter
            </a></li>
<li title="Quality Of Service and Admin Properties"><a href="ch_QoS.html#id65103">Quality Of Service and Admin Properties</a></li>
</ul>
</li>
<li id="no" title="cosNotification Examples" expanded="false">cosNotification Examples<ul>
<li><a href="ch_example.html">
              Top of chapter
            </a></li>
<li title="A Tutorial on How to Create a Simple Service"><a href="ch_example.html#id65997">A Tutorial on How to Create a Simple Service</a></li>
</ul>
</li>
</ul>
</div></div>
<div id="content">
<div class="innertube">
<h1>4 The Notification Service Components</h1>
  

  <h3><a name="id62962">4.1 
        The Notification Service Components</a></h3>
    
    <p>This chapter describes the Notification Service Components and how they
      interact.</p>

    <h4>Components</h4>
      
      <p>There are seven components in the OMG Notification Service architecture. 
        These are described below: </p>
      <a name="notificationFlow"></a>
      <img alt="IMAGE MISSING" src="notificationFlow.gif"><br>
        <em>Figure
        4.1:
         
        
Figure 1: The Notification Service Components.</em>
      
      <ul>
        <li>
<strong>Event Channel:</strong> acts as a factory for Administrator objects.
         Allows clients to set Administrative Properties.</li>
        <li>
<strong>Supplier Administrators:</strong> acts as a factory for Proxy Consumers.
         Administrators are started as <span class="code">'AND_OP'-</span> or <span class="code">'OR_OP'-</span>type,
         which determines if events must be validated using both the Administrators
         associated Filter and/or its Proxy children Filters.</li>
        <li>
<strong>Consumer Administrators:</strong> acts in the same way as Supplier Administrators
         but handle Proxy Suppliers.</li>
        <li>
<strong>Consumer Proxy:</strong> is connected to a client application. Can be
         started as <span class="code">Pull</span> or <span class="code">Push</span> object. If the proxy is Push style
         the client application must push events to the Proxy, otherwise the Proxy is
         supposed to Pull events. The <span class="code">CosNotification::AdminProperties</span> is
         used to set the pacing interval.</li>
        <li>
<strong>Supplier Proxy:</strong> Acts in a similar way as the Consumer Proxy, but
         if started as a <span class="code">Push</span> proxy it will push events to the client
         application.</li>
        <li>
<strong>Filters:</strong> used to filter events. May be associated with Proxies
         and Administrators.</li>
        <li>
<strong>Mapping Filters:</strong> used to override events Quality of Service
         settings. Can only be associated with Consumer Administrators and
         Proxy Suppliers.</li>
      </ul>
      <p>When a Proxy is started it is set to accept <span class="code">CORBA::Any</span>, 
        <span class="code">CosNotification::StructuredEvent</span> or <span class="code">CosNotification::EventBatch</span>
        (a sequence of structured events).</p>
      <p>If a Proxy is supposed to deliver structured events to a client application
        and receives an <span class="code">CORBA::Any</span> event, the event is converted to a 
        structured event with <span class="code">type_name</span> set to <span class="code">"%ANY"</span> and the
        event is stored in <span class="code">remainder_of_body</span>.</p>
      <p>If a Proxy is supposed to deliver <span class="code">CORBA::Any</span> events to a client application
        and receives a structured event, the event is stored in an Any type. The
        Any Type Code will be equal to the <span class="code">CosNotification::StructuredEvent</span>
        Type Code.</p>
    
  
</div>
<div class="footer">
<hr>
<p>Copyright © 2000-2012 Ericsson AB. All Rights Reserved.</p>
</div>
</div>
</div></body>
</html>