Sophie

Sophie

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

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 -- Quality Of Service and Admin Properties</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/cosEventDomain-1.1.12.pdf">PDF</a><br><a href="../../../../doc/index.html">Top</a></small><p><strong>cosEventDomain</strong><br><strong>User's Guide</strong><br><small>Version 1.1.12</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 cosEventDomain Application" expanded="false">The cosEventDomain Application<ul>
<li><a href="ch_contents.html">
              Top of chapter
            </a></li>
<li title="Content Overview"><a href="ch_contents.html#id61517">Content Overview</a></li>
<li title="Brief Description of the User's Guide"><a href="ch_contents.html#id57476">Brief Description of the User's Guide</a></li>
</ul>
</li>
<li id="no" title="Introduction to cosEventDomain" expanded="false">Introduction to cosEventDomain<ul>
<li><a href="ch_introduction.html">
              Top of chapter
            </a></li>
<li title="Overview"><a href="ch_introduction.html#id60763">Overview</a></li>
</ul>
</li>
<li id="loadscrollpos" title="Quality Of Service and Admin Properties" expanded="true">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#id60742">Quality Of Service and Admin Properties</a></li>
</ul>
</li>
<li id="no" title="Event Domain Service" expanded="false">Event Domain Service<ul>
<li><a href="ch_event_domain_service.html">
              Top of chapter
            </a></li>
<li title="Overview of the CosEventDomain Service"><a href="ch_event_domain_service.html#id58251">Overview of the CosEventDomain Service</a></li>
</ul>
</li>
</ul>
</div></div>
<div id="content">
<div class="innertube">
<h1>3 Quality Of Service and Admin Properties</h1>
  

  <h3><a name="id60742">3.1 
        Quality Of Service and Admin Properties</a></h3>
    
    <p>This chapter explains the allowed properties it is possible to set for this
      application. </p>

    <h4>Quality Of Service</h4>
      
      <p>The cosEventDomain application supports the following QoS settings:</p>
      <table border="1" cellpadding="2" cellspacing="0">
<tr>
          <td align="left" valign="middle"><strong>QoS</strong></td>
          <td align="left" valign="middle"><strong>Range</strong></td>
          <td align="left" valign="middle"><strong>Default</strong></td>
        </tr>
<tr>
          <td align="left" valign="middle">CycleDetection</td>
          <td align="left" valign="middle">AuthorizeCycles/ForbidCycles</td>
          <td align="left" valign="middle">ForbidCycles</td>
        </tr>
<tr>
          <td align="left" valign="middle">DiamondDetection</td>
          <td align="left" valign="middle">AuthorizeDiamonds/ForbidDiamonds</td>
          <td align="left" valign="middle">ForbidDiamonds</td>
        </tr>
</table>
<em>Table
        3.1:
         
        Supported QoS settings</em>
<br><br><br><br>      <p><strong>Comments on the table 'Supported QoS Settings':</strong></p>
      <dl>
        <dt><strong><strong>CycleDetection</strong></strong></dt>
        <dd>If a cycle is created, the user <strong>must</strong> be aware of the fact
         that unless they set timeout on events, events that are not filtered
         will loop endlessly through the topology.</dd>
        <dt><strong><strong>DiamondDetection</strong></strong></dt>
        <dd>A Diamond in this context, means that the same
         event may reach a point in the graph by more than one route 
         (i.e. transitive). Hence, it is possible that multiple copies
         are delivered.</dd>
      </dl>
    

    <h4>Setting Quality Of Service</h4>
      
      <p>Assume we have a Consumer Admin object which we want to change
        the current Quality of Service. Typical usage:</p>
      <div class="example"><pre>
QoS = 
   [#'CosNotification_Property'
    {name='CosEventDomainAdmin':'DiamondDetection'(), 
     value=any:create(orber_tc:short(),
     'CosEventDomainAdmin':'AuthorizeDiamonds'())},
    #'CosNotification_Property'
    {name='CosEventDomainAdmin':'CycleDetection'(), 
     value=any:create(orber_tc:short(),
     'CosEventDomainAdmin':'ForbidCycles'())}],
'CosEventDomainAdmin_EventDomain':set_qos(ED, QoS),
      </pre></div>
      <p>If it is not possible to set the requested QoS the <span class="code">UnsupportedQoS</span>
        exception is raised, which includes a sequence of <span class="code">PropertyError</span>'s
        describing which QoS, possible range and why is not allowed. The error
        codes are:</p>
      <ul>
        <li>UNSUPPORTED_PROPERTY - QoS not supported for this type of target object.</li>
        <li>UNAVAILABLE_PROPERTY - due to current QoS settings the given property
         is not allowed.</li>
        <li>UNSUPPORTED_VALUE - property value out of range; valid range is returned.</li>
        <li>UNAVAILABLE_VALUE - due to current QoS settings the given value is
         not allowed; valid range is returned.</li>
        <li>BAD_PROPERTY - unrecognized property.</li>
        <li>BAD_TYPE - type of supplied property is incorrect.</li>
        <li>BAD_VALUE - illegal value.</li>
      </ul>
      <p>The CosEventDomainAdmin_EventDomain interface also supports an operation
        called <span class="code">validate_qos/2</span>. The purpose of this operations is to check
        if a QoS setting is supported by the target object and if so, the operation
        returns additional properties which could be optionally added as well.</p>
    

    <h4>Admin Properties</h4>
      
      <p>The OMG specification do not contain any definitions of Admin Properties.
        Hence, the cosEventDomain application currently does not support any Admin
        Properties.</p>
    
  
</div>
<div class="footer">
<hr>
<p>Copyright © 2001-2012 Ericsson AB. All Rights Reserved.</p>
</div>
</div>
</div></body>
</html>