(file) Return to cimom_handle.html CVS log (file) (dir) Up to [Pegasus] / pegasus

File: [Pegasus] / pegasus / Attic / cimom_handle.html (download) / (as text)
Revision: 1.1.2.1, Fri Feb 28 21:34:05 2003 UTC (21 years, 2 months ago) by mday
Branch: mday-2-0-patches
Changes since 1.1: +3838 -0 lines
*** empty log message ***

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
    <title>PEP # ?: Pegasus 2.2 CIMOMHandle</title>
    <link rel="stylesheet" type="text/css" href="http://www.soft-hackle.net/md.css">
  </head>

  <body>
  <table >
    <tr>

      <td>
	<img height="70" src="http://www.opengroup.org/images/pegicon2.gif" width="70" border="0">
      </td>
      <td>
	<h1>PEP # ?: Pegasus CIMOMHandle</h1>
      </td>
    </tr>
  </table>

    <table class="comment">
      <tr align="left">
	<th>Type</th><th>Status</th><th>Approveers</th>
      </tr>
      <tr>
	<td>Architecture</td><td>Draft</td><td>Pegasus architecture team</td>
      </tr>
    </table>
    <table class="comment">
      <tr align="left">
	<th>Version</th><th>Date</th><th>Author</th><th>Comments</th>
      </tr>
      <tr>
	<td>1.0</td><td>Thu Feb 13 11:58:12 2003</td><td>Mike Day</td><td><i>initial submission</i></td>
      </tr>
    </table>
    
    <hr>

      <h2>Summary</h2>
      <p>
	The CIMOMHandle in Pegasus is the object that providers must
	use to gain access to Pegasus services including the
	repository and other providers. A functioning CIMOMHandle is
	necessary for association support. 
      </p>
      <p>
	The CIMOMhandle also serves a useful role for asynchronous
	providers in that it facilitates communication of status
	between Pegasus and its providers. For example, some providers
	must always remain loaded, or must ensure they are not
	unloaded during a critical or time consuming operation. They
	need the CIMOMHandle to indicate this status back to
	Pegasus.
      </p>
      
      <h2>Problem Solved/Feature Added</h2>
      <p>
	The CIMOMHandle in Pegasus does not work right now. This
	document proposes a redesign of the CIMOMHandle to ensure it
	works and fulfills present and future requirements. 
      </p>

      <h3>Solution Requirements</h3>
      <p>
	Pegasus requires the CIMOMHandle to provide the following
	facilities: 
      </p>
      <div class="example">
	<ol>
	  <li>Complete procedural interface to Pegasus client
	    operations.</li>
	  <li>Execution threads must be separated to avoid any
	    possibility of deadlock. Recursion into the provider is
	    therefore allowed. Recursion into the CIMOMHandle is not.</li>
	  <li>The Pegasus Provider Manager must know when a given
	    provider is executing a call back into Pegasus via the
	    CIMOMHandle.</li>
	  <li>Providers must be able to proactively protect themselves from being
	    unloaded.</li>
	  <li>The CIMOM handle must recover completely whenever it is
	    called recursively.</li>
	</ol>
      </div>

      <h3>Proposed Solution</h3>
      <p>
	This document proposes adding a new Server component to
	Pegasus that acts as a binary request encoder/decoder. The
	CIMOMHandle presents providers with what is logically a CIMClient
	interface. However, instead of generating CIM/XML operations,
	the CIMOMHandle enqueues binary CIMRequest/Response messages
	to the new Server component. 
      </p>

      <p>
	The new Server component fulfills the role of both request
	decoder and response encoder. Except that it does not
	encode/decode; it only passes the preformed messages through
	the normal execution path and forwards the response back to
	the CIMOMHandle.
      </p>

      <h4>Existing Pegasus Client Request Processing</h4>
      <div class="comment" align="center">
      <img alt="Existing Pegasus client request flow"
	   src="http://www.soft-hackle.net/peg_client.jpg"</img>
	<p>
	  Existing client operations arrive at Pegasus as CIM/XML
	  documents and are decoded into CIMMessage objects. Then they
	  are dispatched to Pegasus. Responses are encoded from
	  CIMMessage objects back into CIM/XML documents. 
	</p>
      </div>
      

      <h4>CIMOMHandle Request Processing</h4>
      <div class="comment" align="center">
      <img alt="Existing Pegasus client request flow"
	   src="http://www.soft-hackle.net/binary_client.jpg"</img>
	<p>
	  CIMOMHandle client requests originate as CIMMessage
	  objects. They don't need to be decoded. They follow the
	  exact same processing path as <i>decoded</i> client
	  operations.
	</p>
	<p>
	  Responses to CIMOMHandle operations follow the exact same
	  processing paths as Client responses, up to the encoding
	  step. Instead of being encoded and transmitted, they are
	  enqueued back to the CIMOMhandle. The CIMOMHandle marshals
	  the response data and returns from the method call back to
	  the provider. 
	</p>
      </div>

      <h2> Advantages and disadvantages of proposed design</h2>
      <p>
	The advantages to this proposal include the following: 
	<ol class="enumerated">
	  <li>Small incremental code size, around 2k. Very small
	    memory footprint. Each CIMOMHandle uses as much memory as
	    a MessageQueue plus around 400 bytes, requires no Thread.</li>
	  <li>Requires no additional libraries (such as
	    CIMClient).</li>
	  <li>Performance is much faster than CIMClient due to the
	    elimination of message encoding/decoding.</li>
	  <li>Asynchronous operation is preserved intact.</li>
	  <li>The Binary Request handler can be reused for other
	    procedural client interfaces (SOAP, Java, etc.). 
	</ol>
      </p>
      
      <h2>Alternative approaches and their advantages and
	disadvantages.</h2>
      <p>
	The alternative I considered was to use the CIMClient class to
	invoke the client interface from the CIMOMHandle. However,
	this approach has the following disadvantages: 
	<ol class="enumerated">
	  <li>Size and resources. Each CIMOMHandle would require its
	    own CIMClient class. It would consume an HTTPConnection
	    and associated resources for every method invocation.</li>
	  <li>Performance. Most of the CPU cycles would be wasted
	    encoding a CIMMessage, transmitting the XML, decoding the XML,
	    re-encoding the XML, and re-decoding the XML once again.</li>
	</ol>
      </p>

      <h2> Proposed schedule.</h2>
      <p>
	This proposal is already implemented. Source code is included
	at the end of this document. It can be committed to the head
	of the repository immediately upon acceptance by the
	Architecture Team. 
      </p>

      <h2>Risk Mitigation</h2>
      <p>
	To Mimimize risk, I have already implemented and tested this
      proposal in the mday-2-0-patches branch of the CVS repository. </p>

      <h2>Source Code</h2>

      <h3>CIMOMHandle.h</h3>
      <!-- code2html add -lcc -n src/Pegasus/Provider/CIMOMHandle.h
      --><!-- code2html delete start --><pre><a name="1_line1">  1</a> <font color="#444444">//%///-*-c++-*-/////////////////////////////////////////////////////////////////</font>
<a name="1_line2">  2</a> <font color="#444444">//</font>
<a name="1_line3">  3</a> <font color="#444444">// Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM,</font>
<a name="1_line4">  4</a> <font color="#444444">// The Open Group, Tivoli Systems</font>
<a name="1_line5">  5</a> <font color="#444444">//</font>
<a name="1_line6">  6</a> <font color="#444444">// Permission is hereby granted, free of charge, to any person obtaining a copy</font>
<a name="1_line7">  7</a> <font color="#444444">// of this software and associated documentation files (the &quot;Software&quot;), to</font>
<a name="1_line8">  8</a> <font color="#444444">// deal in the Software without restriction, including without limitation the</font>
<a name="1_line9">  9</a> <font color="#444444">// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or</font>
<a name="1_line10"> 10</a> <font color="#444444">// sell copies of the Software, and to permit persons to whom the Software is</font>
<a name="1_line11"> 11</a> <font color="#444444">// furnished to do so, subject to the following conditions:</font>
<a name="1_line12"> 12</a> <font color="#444444">//</font>
<a name="1_line13"> 13</a> <font color="#444444">// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN</font>
<a name="1_line14"> 14</a> <font color="#444444">// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED</font>
<a name="1_line15"> 15</a> <font color="#444444">// &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT</font>
<a name="1_line16"> 16</a> <font color="#444444">// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR</font>
<a name="1_line17"> 17</a> <font color="#444444">// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT</font>
<a name="1_line18"> 18</a> <font color="#444444">// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN</font>
<a name="1_line19"> 19</a> <font color="#444444">// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION</font>
<a name="1_line20"> 20</a> <font color="#444444">// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</font>
<a name="1_line21"> 21</a> <font color="#444444">//</font>
<a name="1_line22"> 22</a> <font color="#444444">//==============================================================================</font>
<a name="1_line23"> 23</a> <font color="#444444">//</font>
<a name="1_line24"> 24</a> <font color="#444444">// Author: Chip Vincent (cvincent@us.ibm.com)</font>
<a name="1_line25"> 25</a> <font color="#444444">//</font>
<a name="1_line26"> 26</a> <font color="#444444">// Modified By: Mike Brasher (mbrasher@bmc.com)</font>
<a name="1_line27"> 27</a> <font color="#444444">//              Yi Zhou, Hewlett-Packard Company (yi_zhou@hp.com)</font>
<a name="1_line28"> 28</a> <font color="#444444">//              Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)</font>
<a name="1_line29"> 29</a> <font color="#444444">//              Mike Day, IBM (mdday@us.ibm.com)</font>
<a name="1_line30"> 30</a> <font color="#444444">//</font>
<a name="1_line31"> 31</a> <font color="#444444">//%/////////////////////////////////////////////////////////////////////////////</font>
<a name="1_line32"> 32</a> 
<a name="1_line33"> 33</a> 
<a name="1_line34"> 34</a> <font color="0000ff"><strong>#ifndef Pegasus_CIMOMHandle_h</strong></font>
<a name="1_line35"> 35</a> <font color="0000ff"><strong>#define Pegasus_CIMOMHandle_h</strong></font>
<a name="1_line36"> 36</a> 
<a name="1_line37"> 37</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Config.h&gt;</font></strong></font>
<a name="1_line38"> 38</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/ModuleController.h&gt;</font></strong></font>
<a name="1_line39"> 39</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/OperationContext.h&gt;</font></strong></font>
<a name="1_line40"> 40</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/CIMObject.h&gt;</font></strong></font>
<a name="1_line41"> 41</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/CIMObjectPath.h&gt;</font></strong></font>
<a name="1_line42"> 42</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/CIMClass.h&gt;</font></strong></font>
<a name="1_line43"> 43</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/CIMInstance.h&gt;</font></strong></font>
<a name="1_line44"> 44</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/CIMPropertyList.h&gt;</font></strong></font>
<a name="1_line45"> 45</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/ResponseHandler.h&gt;</font></strong></font>
<a name="1_line46"> 46</a> <font color="0000ff"><strong>#include <font color="#008000">&quot;Linkage.h&quot;</font></strong></font>
<a name="1_line47"> 47</a> 
<a name="1_line48"> 48</a> <font color="#2040a0">PEGASUS_NAMESPACE_BEGIN</font>
<a name="1_line49"> 49</a> 
<a name="1_line50"> 50</a> <strong>class</strong> <font color="#2040a0">ProviderManager</font><font color="4444FF">;</font>
<a name="1_line51"> 51</a> <strong>class</strong> <font color="#2040a0">Provider</font><font color="4444FF">;</font>
<a name="1_line52"> 52</a> 
<a name="1_line53"> 53</a> <strong>class</strong> <font color="#2040a0">cimom_handle_op_semaphore</font><font color="4444FF">;</font>
<a name="1_line54"> 54</a> <strong>class</strong> <font color="#2040a0">PEGASUS_PROVIDER_LINKAGE</font> <font color="#2040a0">CIMOMHandle</font>
<a name="1_line55"> 55</a> <font color="4444FF"><strong>{</strong></font>
<a name="1_line56"> 56</a> 
<a name="1_line57"> 57</a>    <strong>public</strong><font color="4444FF">:</font>
<a name="1_line58"> 58</a> 
<a name="1_line59"> 59</a>       <font color="#444444"><i>/** */</i></font>
<a name="1_line60"> 60</a>       <font color="#2040a0">CIMOMHandle</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line61"> 61</a>       <font color="#2040a0">CIMOMHandle</font><font color="4444FF">(</font><strong>const</strong> <font color="#2040a0">CIMOMHandle</font> <font color="4444FF">&amp;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line62"> 62</a> 
<a name="1_line63"> 63</a>       <font color="#444444"><i>/** */</i></font>
<a name="1_line64"> 64</a>       <strong>virtual</strong> ~<font color="#2040a0">CIMOMHandle</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line65"> 65</a> 
<a name="1_line66"> 66</a>       <font color="#2040a0">CIMOMHandle</font> <font color="4444FF">&amp;</font> <strong>operator</strong><font color="4444FF">=</font><font color="4444FF">(</font><strong>const</strong> <font color="#2040a0">CIMOMHandle</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handle</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line67"> 67</a> 
<a name="1_line68"> 68</a>       <strong>virtual</strong> <font color="#2040a0">CIMClass</font> <font color="#2040a0">getClass</font><font color="4444FF">(</font>
<a name="1_line69"> 69</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line70"> 70</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line71"> 71</a> 	 <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="1_line72"> 72</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="1_line73"> 73</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="1_line74"> 74</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="1_line75"> 75</a> 	 <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line76"> 76</a> 
<a name="1_line77"> 77</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">getClassAsync</font><font color="4444FF">(</font>
<a name="1_line78"> 78</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line79"> 79</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line80"> 80</a> 	 <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="1_line81"> 81</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="1_line82"> 82</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="1_line83"> 83</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="1_line84"> 84</a> 	 <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font>,
<a name="1_line85"> 85</a> 	 <font color="#2040a0">ClassResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line86"> 86</a> 
<a name="1_line87"> 87</a>       <strong>virtual</strong> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMClass</font><font color="4444FF">&gt;</font> <font color="#2040a0">enumerateClasses</font><font color="4444FF">(</font>
<a name="1_line88"> 88</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line89"> 89</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line90"> 90</a> 	 <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="1_line91"> 91</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">deepInheritance</font>,
<a name="1_line92"> 92</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="1_line93"> 93</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="1_line94"> 94</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line95"> 95</a> 
<a name="1_line96"> 96</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">enumerateClassesAsync</font><font color="4444FF">(</font>
<a name="1_line97"> 97</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line98"> 98</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line99"> 99</a> 	 <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="1_line100">100</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">deepInheritance</font>,
<a name="1_line101">101</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="1_line102">102</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="1_line103">103</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="1_line104">104</a> 	 <font color="#2040a0">ClassResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line105">105</a> 
<a name="1_line106">106</a>       <strong>virtual</strong> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMName</font><font color="4444FF">&gt;</font> <font color="#2040a0">enumerateClassNames</font><font color="4444FF">(</font>
<a name="1_line107">107</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line108">108</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line109">109</a> 	 <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="1_line110">110</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">deepInheritance</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line111">111</a> 
<a name="1_line112">112</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">enumerateClassNamesAsync</font><font color="4444FF">(</font>
<a name="1_line113">113</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line114">114</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line115">115</a> 	 <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="1_line116">116</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">deepInheritance</font>,
<a name="1_line117">117</a> 	 <font color="#2040a0">ObjectPathResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line118">118</a> 
<a name="1_line119">119</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">createClass</font><font color="4444FF">(</font>
<a name="1_line120">120</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line121">121</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line122">122</a> 	 <strong>const</strong> <font color="#2040a0">CIMClass</font><font color="4444FF">&amp;</font> <font color="#2040a0">newClass</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line123">123</a> 
<a name="1_line124">124</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">createClassAsync</font><font color="4444FF">(</font>
<a name="1_line125">125</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line126">126</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line127">127</a> 	 <strong>const</strong> <font color="#2040a0">CIMClass</font><font color="4444FF">&amp;</font> <font color="#2040a0">newClass</font>,
<a name="1_line128">128</a> 	 <font color="#2040a0">ResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line129">129</a> 
<a name="1_line130">130</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">modifyClass</font><font color="4444FF">(</font>
<a name="1_line131">131</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line132">132</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line133">133</a> 	 <strong>const</strong> <font color="#2040a0">CIMClass</font><font color="4444FF">&amp;</font> <font color="#2040a0">modifiedClass</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line134">134</a> 
<a name="1_line135">135</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">modifyClassAsync</font><font color="4444FF">(</font>
<a name="1_line136">136</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line137">137</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line138">138</a> 	 <strong>const</strong> <font color="#2040a0">CIMClass</font><font color="4444FF">&amp;</font> <font color="#2040a0">modifiedClass</font>,
<a name="1_line139">139</a> 	 <font color="#2040a0">ResponseHandler</font><font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line140">140</a> 
<a name="1_line141">141</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">deleteClass</font><font color="4444FF">(</font>
<a name="1_line142">142</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line143">143</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line144">144</a> 	 <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line145">145</a> 
<a name="1_line146">146</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">deleteClassAsync</font><font color="4444FF">(</font>
<a name="1_line147">147</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line148">148</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line149">149</a> 	 <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="1_line150">150</a> 	 <font color="#2040a0">ResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line151">151</a> 
<a name="1_line152">152</a>       <strong>virtual</strong> <font color="#2040a0">CIMInstance</font> <font color="#2040a0">getInstance</font><font color="4444FF">(</font>
<a name="1_line153">153</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line154">154</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line155">155</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font>,
<a name="1_line156">156</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="1_line157">157</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="1_line158">158</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="1_line159">159</a> 	 <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line160">160</a> 
<a name="1_line161">161</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">getInstanceAsync</font><font color="4444FF">(</font>
<a name="1_line162">162</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line163">163</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line164">164</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font>,
<a name="1_line165">165</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="1_line166">166</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="1_line167">167</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="1_line168">168</a> 	 <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font>,
<a name="1_line169">169</a> 	 <font color="#2040a0">InstanceResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line170">170</a> 
<a name="1_line171">171</a>       <strong>virtual</strong> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMInstance</font><font color="4444FF">&gt;</font> <font color="#2040a0">enumerateInstances</font><font color="4444FF">(</font>
<a name="1_line172">172</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line173">173</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line174">174</a> 	 <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="1_line175">175</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">deepInheritance</font>,
<a name="1_line176">176</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="1_line177">177</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="1_line178">178</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="1_line179">179</a> 	 <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line180">180</a> 
<a name="1_line181">181</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">enumerateInstancesAsync</font><font color="4444FF">(</font>
<a name="1_line182">182</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line183">183</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line184">184</a> 	 <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="1_line185">185</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">deepInheritance</font>,
<a name="1_line186">186</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="1_line187">187</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="1_line188">188</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="1_line189">189</a> 	 <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font>,
<a name="1_line190">190</a> 	 <font color="#2040a0">InstanceResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line191">191</a> 
<a name="1_line192">192</a>       <strong>virtual</strong> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObjectPath</font><font color="4444FF">&gt;</font> <font color="#2040a0">enumerateInstanceNames</font><font color="4444FF">(</font>
<a name="1_line193">193</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line194">194</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line195">195</a> 	 <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line196">196</a> 
<a name="1_line197">197</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">enumerateInstanceNamesAsync</font><font color="4444FF">(</font>
<a name="1_line198">198</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line199">199</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line200">200</a> 	 <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="1_line201">201</a> 	 <font color="#2040a0">ObjectPathResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line202">202</a> 
<a name="1_line203">203</a>       <strong>virtual</strong> <font color="#2040a0">CIMObjectPath</font> <font color="#2040a0">createInstance</font><font color="4444FF">(</font>
<a name="1_line204">204</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line205">205</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line206">206</a> 	 <strong>const</strong> <font color="#2040a0">CIMInstance</font><font color="4444FF">&amp;</font> <font color="#2040a0">newInstance</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line207">207</a> 
<a name="1_line208">208</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">createInstanceAsync</font><font color="4444FF">(</font>
<a name="1_line209">209</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line210">210</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line211">211</a> 	 <strong>const</strong> <font color="#2040a0">CIMInstance</font><font color="4444FF">&amp;</font> <font color="#2040a0">newInstance</font>,
<a name="1_line212">212</a> 	 <font color="#2040a0">ResponseHandler</font><font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line213">213</a> 
<a name="1_line214">214</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">modifyInstance</font><font color="4444FF">(</font>
<a name="1_line215">215</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line216">216</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line217">217</a> 	 <strong>const</strong> <font color="#2040a0">CIMInstance</font><font color="4444FF">&amp;</font> <font color="#2040a0">modifiedInstance</font>,
<a name="1_line218">218</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="1_line219">219</a> 	 <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line220">220</a> 
<a name="1_line221">221</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">modifyInstanceAsync</font><font color="4444FF">(</font>
<a name="1_line222">222</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line223">223</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line224">224</a> 	 <strong>const</strong> <font color="#2040a0">CIMInstance</font><font color="4444FF">&amp;</font> <font color="#2040a0">modifiedInstance</font>,
<a name="1_line225">225</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="1_line226">226</a> 	 <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font>,
<a name="1_line227">227</a> 	 <font color="#2040a0">ResponseHandler</font><font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line228">228</a> 
<a name="1_line229">229</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">deleteInstance</font><font color="4444FF">(</font>
<a name="1_line230">230</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line231">231</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line232">232</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line233">233</a> 
<a name="1_line234">234</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">deleteInstanceAsync</font><font color="4444FF">(</font>
<a name="1_line235">235</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line236">236</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line237">237</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font>,
<a name="1_line238">238</a> 	 <font color="#2040a0">ResponseHandler</font><font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line239">239</a> 
<a name="1_line240">240</a>       <strong>virtual</strong> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObject</font><font color="4444FF">&gt;</font> <font color="#2040a0">execQuery</font><font color="4444FF">(</font>
<a name="1_line241">241</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line242">242</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line243">243</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">queryLanguage</font>,
<a name="1_line244">244</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">query</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line245">245</a> 
<a name="1_line246">246</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">execQueryAsync</font><font color="4444FF">(</font>
<a name="1_line247">247</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line248">248</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line249">249</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">queryLanguage</font>,
<a name="1_line250">250</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">query</font>,
<a name="1_line251">251</a> 	 <font color="#2040a0">ObjectResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line252">252</a> 
<a name="1_line253">253</a>       <strong>virtual</strong> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObject</font><font color="4444FF">&gt;</font> <font color="#2040a0">associators</font><font color="4444FF">(</font>
<a name="1_line254">254</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line255">255</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line256">256</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="1_line257">257</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">assocClass</font>,
<a name="1_line258">258</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="1_line259">259</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font>,
<a name="1_line260">260</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultRole</font>,
<a name="1_line261">261</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="1_line262">262</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="1_line263">263</a> 	 <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line264">264</a> 
<a name="1_line265">265</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">associatorsAsync</font><font color="4444FF">(</font>
<a name="1_line266">266</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line267">267</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line268">268</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="1_line269">269</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">assocClass</font>,
<a name="1_line270">270</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="1_line271">271</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font>,
<a name="1_line272">272</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultRole</font>,
<a name="1_line273">273</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="1_line274">274</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="1_line275">275</a> 	 <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font>,
<a name="1_line276">276</a> 	 <font color="#2040a0">ObjectResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line277">277</a> 
<a name="1_line278">278</a>       <strong>virtual</strong> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObjectPath</font><font color="4444FF">&gt;</font> <font color="#2040a0">associatorNames</font><font color="4444FF">(</font>
<a name="1_line279">279</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line280">280</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line281">281</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="1_line282">282</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">assocClass</font>,
<a name="1_line283">283</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="1_line284">284</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font>,
<a name="1_line285">285</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultRole</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line286">286</a> 
<a name="1_line287">287</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">associatorNamesAsync</font><font color="4444FF">(</font>
<a name="1_line288">288</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line289">289</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line290">290</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="1_line291">291</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">assocClass</font>,
<a name="1_line292">292</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="1_line293">293</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font>,
<a name="1_line294">294</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultRole</font>,
<a name="1_line295">295</a> 	 <font color="#2040a0">ObjectPathResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line296">296</a> 
<a name="1_line297">297</a>       <strong>virtual</strong> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObject</font><font color="4444FF">&gt;</font> <font color="#2040a0">references</font><font color="4444FF">(</font>
<a name="1_line298">298</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line299">299</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line300">300</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="1_line301">301</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="1_line302">302</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font>,
<a name="1_line303">303</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="1_line304">304</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="1_line305">305</a> 	 <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line306">306</a> 
<a name="1_line307">307</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">referencesAsync</font><font color="4444FF">(</font>
<a name="1_line308">308</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line309">309</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line310">310</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="1_line311">311</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="1_line312">312</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font>,
<a name="1_line313">313</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="1_line314">314</a> 	 <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="1_line315">315</a> 	 <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font>,
<a name="1_line316">316</a> 	 <font color="#2040a0">ObjectResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line317">317</a> 
<a name="1_line318">318</a>       <strong>virtual</strong> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObjectPath</font><font color="4444FF">&gt;</font> <font color="#2040a0">referenceNames</font><font color="4444FF">(</font>
<a name="1_line319">319</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line320">320</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line321">321</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="1_line322">322</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="1_line323">323</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line324">324</a> 
<a name="1_line325">325</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">referenceNamesAsync</font><font color="4444FF">(</font>
<a name="1_line326">326</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line327">327</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line328">328</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="1_line329">329</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="1_line330">330</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font>,
<a name="1_line331">331</a> 	 <font color="#2040a0">ObjectPathResponseHandler</font><font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line332">332</a> 
<a name="1_line333">333</a>       <font color="#444444">// property operations</font>
<a name="1_line334">334</a>       <strong>virtual</strong> <font color="#2040a0">CIMValue</font> <font color="#2040a0">getProperty</font><font color="4444FF">(</font>
<a name="1_line335">335</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line336">336</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line337">337</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font>,
<a name="1_line338">338</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyName</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line339">339</a> 
<a name="1_line340">340</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">getPropertyAsync</font><font color="4444FF">(</font>
<a name="1_line341">341</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line342">342</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line343">343</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font>,
<a name="1_line344">344</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyName</font>,
<a name="1_line345">345</a> 	 <font color="#2040a0">ValueResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line346">346</a> 
<a name="1_line347">347</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">setProperty</font><font color="4444FF">(</font>
<a name="1_line348">348</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line349">349</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line350">350</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font>,
<a name="1_line351">351</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyName</font>,
<a name="1_line352">352</a> 	 <strong>const</strong> <font color="#2040a0">CIMValue</font><font color="4444FF">&amp;</font> <font color="#2040a0">newValue</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line353">353</a> 
<a name="1_line354">354</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">setPropertyAsync</font><font color="4444FF">(</font>
<a name="1_line355">355</a> 	 <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="1_line356">356</a> 	 <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="1_line357">357</a> 	 <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font>,
<a name="1_line358">358</a> 	 <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyName</font>,
<a name="1_line359">359</a> 	 <strong>const</strong> <font color="#2040a0">CIMValue</font><font color="4444FF">&amp;</font> <font color="#2040a0">newValue</font>,
<a name="1_line360">360</a> 	 <font color="#2040a0">ValueResponseHandler</font><font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line361">361</a> 
<a name="1_line362">362</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">get_idle_timer</font><font color="4444FF">(</font><strong>struct</strong> <font color="#2040a0">timeval</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line363">363</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">update_idle_timer</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line364">364</a>       <strong>virtual</strong> <font color="#2040a0">Uint32</font> <font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line365">365</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">set_operation_timeout</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line366">366</a>       <strong>virtual</strong> <font color="#2040a0">Boolean</font> <font color="#2040a0">pending_operation</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line367">367</a>       <strong>virtual</strong> <font color="#2040a0">Boolean</font> <font color="#2040a0">unload_ok</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line368">368</a> 
<a name="1_line369">369</a>       <strong>virtual</strong> <font color="#2040a0">Uint32</font> <font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line370">370</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">set_output_qid</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line371">371</a>       <strong>virtual</strong> <font color="#2040a0">Uint32</font> <font color="#2040a0">get_return_qid</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line372">372</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">set_return_qid</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line373">373</a> 
<a name="1_line374">374</a> <font color="#444444">//   force provider manager to keep in memory</font>
<a name="1_line375">375</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">protect</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line376">376</a> <font color="#444444">// allow provider manager to unload when idle </font>
<a name="1_line377">377</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">unprotect</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="1_line378">378</a> 
<a name="1_line379">379</a> <font color="#444444">//     virtual CIMValue invokeMethod(</font>
<a name="1_line380">380</a> <font color="#444444">//     const OperationContext &amp; context,</font>
<a name="1_line381">381</a> <font color="#444444">//     const CIMNamespaceName&amp; nameSpace,</font>
<a name="1_line382">382</a> <font color="#444444">//     const CIMObjectPath&amp; instanceName,</font>
<a name="1_line383">383</a> <font color="#444444">//     const String&amp; methodName,</font>
<a name="1_line384">384</a> <font color="#444444">//     const Array&lt;CIMParamValue&gt;&amp; inParameters,</font>
<a name="1_line385">385</a> <font color="#444444">//     Array&lt;CIMParamValue&gt;&amp; outParameters);</font>
<a name="1_line386">386</a> 
<a name="1_line387">387</a> <font color="#444444">//     virtual void invokeMethodAsync(</font>
<a name="1_line388">388</a> <font color="#444444">//     const OperationContext &amp; context,</font>
<a name="1_line389">389</a> <font color="#444444">//     const CIMNamespaceName&amp; nameSpace,</font>
<a name="1_line390">390</a> <font color="#444444">//     const CIMObjectPath&amp; instanceName,</font>
<a name="1_line391">391</a> <font color="#444444">//     const String&amp; methodName,</font>
<a name="1_line392">392</a> <font color="#444444">//     const Array&lt;CIMParamValue&gt;&amp; inParameters,</font>
<a name="1_line393">393</a> <font color="#444444">//     Array&lt;CIMParamValue&gt;&amp; outParameters,</font>
<a name="1_line394">394</a> <font color="#444444">//     ResponseHandler&lt;CIMValue&gt; &amp; handler);</font>
<a name="1_line395">395</a>     
<a name="1_line396">396</a> 
<a name="1_line397">397</a> <font color="#444444">//      static void async_callback(Uint32 user_data, Message *reply, void *parm);</font>
<a name="1_line398">398</a> 
<a name="1_line399">399</a> 
<a name="1_line400">400</a>       <strong>class</strong> <font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">;</font>
<a name="1_line401">401</a>       <font color="#2040a0">_cimom_handle_rep</font> <font color="4444FF">*</font><font color="#2040a0">_rep</font><font color="4444FF">;</font>
<a name="1_line402">402</a>    <strong>private</strong><font color="4444FF">:</font>
<a name="1_line403">403</a>       <strong>friend</strong> <strong>class</strong> <font color="#2040a0">Provider</font><font color="4444FF">;</font>
<a name="1_line404">404</a>       <strong>friend</strong> <strong>class</strong> <font color="#2040a0">cimom_handle_op_semaphore</font><font color="4444FF">;</font>
<a name="1_line405">405</a>       
<a name="1_line406">406</a> <font color="4444FF"><strong>}</strong></font><font color="4444FF">;</font>
<a name="1_line407">407</a> 
<a name="1_line408">408</a> 
<a name="1_line409">409</a> 
<a name="1_line410">410</a> 
<a name="1_line411">411</a> 
<a name="1_line412">412</a> <font color="#2040a0">PEGASUS_NAMESPACE_END</font>
<a name="1_line413">413</a> 
<a name="1_line414">414</a> <font color="0000ff"><strong>#endif</strong></font>
</pre><!-- code2html delete stop -->
      <h3>CIMOMHandle.cpp</h3>
      <!-- code2html add -lcc -n src/Pegasus/Provider/CIMOMHandle.cpp
      --><!-- code2html delete start --><pre><a name="2_line1">   1</a> <font color="#444444">//%/////////////////////////////////////////////////////////////////////////////
</font>
<a name="2_line2">   2</a> <font color="#444444">//
</font>
<a name="2_line3">   3</a> <font color="#444444">// Copyright (c) 2000, 2001, 2002 BMC Software, Hewlett-Packard Company, IBM,
</font>
<a name="2_line4">   4</a> <font color="#444444">// The Open Group, Tivoli Systems
</font>
<a name="2_line5">   5</a> <font color="#444444">//
</font>
<a name="2_line6">   6</a> <font color="#444444">// Permission is hereby granted, free of charge, to any person obtaining a copy
</font>
<a name="2_line7">   7</a> <font color="#444444">// of this software and associated documentation files (the &quot;Software&quot;), to
</font>
<a name="2_line8">   8</a> <font color="#444444">// deal in the Software without restriction, including without limitation the
</font>
<a name="2_line9">   9</a> <font color="#444444">// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
</font>
<a name="2_line10">  10</a> <font color="#444444">// sell copies of the Software, and to permit persons to whom the Software is
</font>
<a name="2_line11">  11</a> <font color="#444444">// furnished to do so, subject to the following conditions:
</font>
<a name="2_line12">  12</a> <font color="#444444">//
</font>
<a name="2_line13">  13</a> <font color="#444444">// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
</font>
<a name="2_line14">  14</a> <font color="#444444">// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
</font>
<a name="2_line15">  15</a> <font color="#444444">// &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
</font>
<a name="2_line16">  16</a> <font color="#444444">// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
</font>
<a name="2_line17">  17</a> <font color="#444444">// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
</font>
<a name="2_line18">  18</a> <font color="#444444">// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
</font>
<a name="2_line19">  19</a> <font color="#444444">// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
</font>
<a name="2_line20">  20</a> <font color="#444444">// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
</font>
<a name="2_line21">  21</a> <font color="#444444">//
</font>
<a name="2_line22">  22</a> <font color="#444444">//==============================================================================
</font>
<a name="2_line23">  23</a> <font color="#444444">//
</font>
<a name="2_line24">  24</a> <font color="#444444">// Author: Chip Vincent (cvincent@us.ibm.com)
</font>
<a name="2_line25">  25</a> <font color="#444444">//
</font>
<a name="2_line26">  26</a> <font color="#444444">// Modified By: Carol Ann Krug Graves, Hewlett-Packard Company
</font>
<a name="2_line27">  27</a> <font color="#444444">//                  (carolann_graves@hp.com)
</font>
<a name="2_line28">  28</a> <font color="#444444">//              Mike Day, IBM (mdday@us.ibm.com)
</font>
<a name="2_line29">  29</a> <font color="#444444">//
</font>
<a name="2_line30">  30</a> <font color="#444444">//%/////////////////////////////////////////////////////////////////////////////
</font>
<a name="2_line31">  31</a> 
<a name="2_line32">  32</a> <font color="0000ff"><strong>#include  <font color="#008000">&quot;CIMOMHandle.h&quot;</font>
</strong></font>
<a name="2_line33">  33</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Constants.h&gt;</font>
</strong></font>
<a name="2_line34">  34</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/XmlWriter.h&gt;</font>
</strong></font>
<a name="2_line35">  35</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Message.h&gt;</font>
</strong></font>
<a name="2_line36">  36</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Exception.h&gt;</font>
</strong></font>
<a name="2_line37">  37</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/IPC.h&gt;</font>
</strong></font>
<a name="2_line38">  38</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Thread.h&gt;</font>
</strong></font>
<a name="2_line39">  39</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/AsyncOpNode.h&gt;</font>
</strong></font>
<a name="2_line40">  40</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/DQueue.h&gt;</font>
</strong></font>
<a name="2_line41">  41</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Cimom.h&gt;</font>
</strong></font>
<a name="2_line42">  42</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/CimomMessage.h&gt;</font>
</strong></font>
<a name="2_line43">  43</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/MessageQueueService.h&gt;</font>
</strong></font>
<a name="2_line44">  44</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/peg_authorization.h&gt;</font>
</strong></font>
<a name="2_line45">  45</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/CIMMessage.h&gt;</font>
</strong></font>
<a name="2_line46">  46</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Destroyer.h&gt;</font>
</strong></font>
<a name="2_line47">  47</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/System.h&gt;</font>
</strong></font>
<a name="2_line48">  48</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/TraceComponents.h&gt;</font>
</strong></font>
<a name="2_line49">  49</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Tracer.h&gt;</font>
</strong></font>
<a name="2_line50">  50</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Sharable.h&gt;</font>
</strong></font>
<a name="2_line51">  51</a> 
<a name="2_line52">  52</a> <font color="#2040a0">PEGASUS_NAMESPACE_BEGIN</font>
<a name="2_line53">  53</a> 
<a name="2_line54">  54</a> 
<a name="2_line55">  55</a> <font color="#444444">//ThreadPool *MessageQueueService::get_thread_pool(void);
</font>
<a name="2_line56">  56</a> 
<a name="2_line57">  57</a> 
<a name="2_line58">  58</a> <strong>class</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">;</font>
<a name="2_line59">  59</a> <strong>class</strong> <font color="#2040a0">cimom_handle_op_semaphore</font><font color="4444FF">;</font>
<a name="2_line60">  60</a> <strong>class</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font> <font color="4444FF">:</font> <strong>public</strong> <font color="#2040a0">MessageQueue</font>, <strong>public</strong> <font color="#2040a0">Sharable</font>
<a name="2_line61">  61</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line62">  62</a>    <strong>private</strong><font color="4444FF">:</font>
<a name="2_line63">  63</a>       <font color="#2040a0">Uint32</font> <font color="#2040a0">_output_qid</font><font color="4444FF">;</font>
<a name="2_line64">  64</a>       <font color="#2040a0">Uint32</font> <font color="#2040a0">_return_qid</font><font color="4444FF">;</font>
<a name="2_line65">  65</a>       <font color="#2040a0">AtomicInt</font> <font color="#2040a0">_response_type</font><font color="4444FF">;</font>
<a name="2_line66">  66</a>       <font color="#2040a0">Mutex</font> <font color="#2040a0">_recursion</font><font color="4444FF">;</font>
<a name="2_line67">  67</a>       <font color="#2040a0">Mutex</font> <font color="#2040a0">_idle_mutex</font><font color="4444FF">;</font>
<a name="2_line68">  68</a>       <font color="#2040a0">Mutex</font> <font color="#2040a0">_qid_mutex</font><font color="4444FF">;</font>
<a name="2_line69">  69</a>       
<a name="2_line70">  70</a>       <font color="#2040a0">AtomicInt</font> <font color="#2040a0">_server_terminating</font><font color="4444FF">;</font>
<a name="2_line71">  71</a>       <font color="#2040a0">Semaphore</font> <font color="#2040a0">_msg_avail</font><font color="4444FF">;</font>
<a name="2_line72">  72</a>       <font color="#2040a0">AsyncDQueue</font><font color="4444FF">&lt;</font><font color="#2040a0">Message</font><font color="4444FF">&gt;</font> <font color="#2040a0">_response</font><font color="4444FF">;</font>
<a name="2_line73">  73</a>       <font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="#2040a0">_request</font><font color="4444FF">;</font>
<a name="2_line74">  74</a>       <font color="#2040a0">AtomicInt</font> <font color="#2040a0">_op_timeout</font><font color="4444FF">;</font>
<a name="2_line75">  75</a>       <font color="#2040a0">AtomicInt</font> <font color="#2040a0">_pending_operation</font><font color="4444FF">;</font>
<a name="2_line76">  76</a>       <font color="#2040a0">AtomicInt</font> <font color="#2040a0">_no_unload</font><font color="4444FF">;</font>
<a name="2_line77">  77</a>       <strong>struct</strong> <font color="#2040a0">timeval</font> <font color="#2040a0">_idle_timeout</font><font color="4444FF">;</font>
<a name="2_line78">  78</a> 
<a name="2_line79">  79</a>    <strong>public</strong><font color="4444FF">:</font> 
<a name="2_line80">  80</a>       <strong>typedef</strong> <font color="#2040a0">MessageQueue</font> <font color="#2040a0">Base</font><font color="4444FF">;</font>
<a name="2_line81">  81</a>       
<a name="2_line82">  82</a>       <font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line83">  83</a>       <font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font> <font color="#2040a0">out_qid</font>, <font color="#2040a0">Uint32</font> <font color="#2040a0">ret_qid</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line84">  84</a>       ~<font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font> <font color="4444FF"><strong>{</strong></font>  <font color="4444FF"><strong>}</strong></font>
<a name="2_line85">  85</a>    <strong>private</strong><font color="4444FF">:</font>
<a name="2_line86">  86</a>       <strong>void</strong> <font color="#2040a0">get_idle_timer</font><font color="4444FF">(</font><strong>struct</strong> <font color="#2040a0">timeval</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line87">  87</a>       <strong>void</strong> <font color="#2040a0">update_idle_timer</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line88">  88</a>       <font color="#2040a0">Uint32</font> <font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line89">  89</a>       <strong>void</strong> <font color="#2040a0">set_operation_timeout</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line90">  90</a>       <font color="#2040a0">Boolean</font> <font color="#2040a0">pending_operation</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line91">  91</a>       <font color="#2040a0">Boolean</font> <font color="#2040a0">unload_ok</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line92">  92</a> 
<a name="2_line93">  93</a>       <font color="#2040a0">Uint32</font> <font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line94">  94</a>       <strong>void</strong> <font color="#2040a0">set_output_qid</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line95">  95</a>       <font color="#2040a0">Uint32</font> <font color="#2040a0">get_return_qid</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line96">  96</a>       <strong>void</strong> <font color="#2040a0">set_return_qid</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line97">  97</a>       <font color="#2040a0">Uint32</font> <font color="#2040a0">get_qid</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line98">  98</a> 
<a name="2_line99">  99</a>       <strong>void</strong> <font color="#2040a0">protect</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line100"> 100</a>       <strong>void</strong> <font color="#2040a0">unprotect</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line101"> 101</a>       
<a name="2_line102"> 102</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">handleEnqueue</font><font color="4444FF">(</font><font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line103"> 103</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">handleEnqueue</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line104"> 104</a> 
<a name="2_line105"> 105</a>       <font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">Message</font> <font color="4444FF">*</font>, <font color="#2040a0">Uint32</font> <font color="#2040a0">response_type</font>, <font color="#2040a0">Uint32</font> <font color="#2040a0">timeout</font><font color="4444FF">)</font> 
<a name="2_line106"> 106</a> 	 <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line107"> 107</a>       
<a name="2_line108"> 108</a>       <strong>static</strong> <font color="#2040a0">PEGASUS_THREAD_RETURN</font> <font color="#2040a0">PEGASUS_THREAD_CDECL</font> <font color="#2040a0">_dispatch</font><font color="4444FF">(</font><strong>void</strong> <font color="4444FF">*</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line109"> 109</a>       <font color="#2040a0">MessageQueue</font> <font color="4444FF">*</font> <font color="#2040a0">q_exists</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font> <font color="#2040a0">qid</font><font color="4444FF">)</font> <strong>const</strong>
<a name="2_line110"> 110</a>       <font color="4444FF"><strong>{</strong></font>
<a name="2_line111"> 111</a> 	 <strong>return</strong> <font color="#2040a0">MessageQueue</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">lookup</font><font color="4444FF">(</font><font color="#2040a0">qid</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line112"> 112</a>       <font color="4444FF"><strong>}</strong></font>
<a name="2_line113"> 113</a> 
<a name="2_line114"> 114</a>       <font color="#2040a0">_cimom_handle_rep</font> <font color="4444FF">&amp;</font> <strong>operator</strong> <font color="4444FF">=</font> <font color="4444FF">(</font><strong>const</strong> <font color="#2040a0">_cimom_handle_rep</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line115"> 115</a>       <strong>friend</strong> <strong>class</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">;</font>
<a name="2_line116"> 116</a>       <strong>friend</strong> <strong>class</strong> <font color="#2040a0">cimom_handle_op_semaphore</font><font color="4444FF">;</font>
<a name="2_line117"> 117</a> <font color="4444FF"><strong>}</strong></font><font color="4444FF">;</font>
<a name="2_line118"> 118</a> 
<a name="2_line119"> 119</a> <strong>class</strong> <font color="#2040a0">cimom_handle_op_semaphore</font>
<a name="2_line120"> 120</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line121"> 121</a>    <strong>private</strong><font color="4444FF">:</font>
<a name="2_line122"> 122</a>       <font color="#2040a0">cimom_handle_op_semaphore</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line123"> 123</a>       <font color="4444FF"><strong>{</strong></font>
<a name="2_line124"> 124</a>       <font color="4444FF"><strong>}</strong></font>
<a name="2_line125"> 125</a>       
<a name="2_line126"> 126</a>    <strong>public</strong><font color="4444FF">:</font>
<a name="2_line127"> 127</a>       <font color="#2040a0">cimom_handle_op_semaphore</font><font color="4444FF">(</font><font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font> <font color="4444FF">*</font><font color="#2040a0">rep</font><font color="4444FF">)</font>
<a name="2_line128"> 128</a> 	 <font color="4444FF">:</font><font color="#2040a0">_rep</font><font color="4444FF">(</font><font color="#2040a0">rep</font><font color="4444FF">)</font>
<a name="2_line129"> 129</a>       <font color="4444FF"><strong>{</strong></font>
<a name="2_line130"> 130</a> 	 <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">update_idle_timer</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line131"> 131</a> 	 <font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_pending_operation</font><font color="4444FF">)</font><font color="4444FF">+</font><font color="4444FF">+</font><font color="4444FF">;</font>
<a name="2_line132"> 132</a>       <font color="4444FF"><strong>}</strong></font>
<a name="2_line133"> 133</a>       ~<font color="#2040a0">cimom_handle_op_semaphore</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line134"> 134</a>       <font color="4444FF"><strong>{</strong></font>
<a name="2_line135"> 135</a> 	 <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font>
<a name="2_line136"> 136</a> 	 <font color="4444FF"><strong>{</strong></font>
<a name="2_line137"> 137</a> 	    <font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_pending_operation</font><font color="4444FF">)</font><font color="4444FF">-</font><font color="4444FF">-</font><font color="4444FF">;</font>
<a name="2_line138"> 138</a> 	 <font color="4444FF"><strong>}</strong></font>
<a name="2_line139"> 139</a>       <font color="4444FF"><strong>}</strong></font>
<a name="2_line140"> 140</a>    <strong>private</strong><font color="4444FF">:</font>
<a name="2_line141"> 141</a>       <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font> <font color="4444FF">*</font><font color="#2040a0">_rep</font><font color="4444FF">;</font>
<a name="2_line142"> 142</a> <font color="4444FF"><strong>}</strong></font><font color="4444FF">;</font>
<a name="2_line143"> 143</a> 
<a name="2_line144"> 144</a> 
<a name="2_line145"> 145</a> <strong>class</strong> <font color="#2040a0">cimom_handle_dispatch</font>
<a name="2_line146"> 146</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line147"> 147</a>    <strong>private</strong><font color="4444FF">:</font>
<a name="2_line148"> 148</a>       <font color="#2040a0">cimom_handle_dispatch</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line149"> 149</a>    <strong>public</strong><font color="4444FF">:</font>
<a name="2_line150"> 150</a>       <font color="#2040a0">cimom_handle_dispatch</font><font color="4444FF">(</font><font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="#2040a0">msg</font>,
<a name="2_line151"> 151</a> 			    <font color="#2040a0">Uint32</font> <font color="#2040a0">my_qid</font>,
<a name="2_line152"> 152</a> 			    <font color="#2040a0">Uint32</font> <font color="#2040a0">output_qid</font><font color="4444FF">)</font>
<a name="2_line153"> 153</a> 	 <font color="4444FF">:</font> <font color="#2040a0">_msg</font><font color="4444FF">(</font><font color="#2040a0">msg</font><font color="4444FF">)</font>,
<a name="2_line154"> 154</a> 	   <font color="#2040a0">_my_qid</font><font color="4444FF">(</font><font color="#2040a0">my_qid</font><font color="4444FF">)</font>,
<a name="2_line155"> 155</a> 	   <font color="#2040a0">_out_qid</font><font color="4444FF">(</font><font color="#2040a0">output_qid</font><font color="4444FF">)</font>
<a name="2_line156"> 156</a>       <font color="4444FF"><strong>{</strong></font>
<a name="2_line157"> 157</a>       <font color="4444FF"><strong>}</strong></font>
<a name="2_line158"> 158</a>       ~<font color="#2040a0">cimom_handle_dispatch</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line159"> 159</a>       <font color="4444FF"><strong>{</strong></font>
<a name="2_line160"> 160</a>       <font color="4444FF"><strong>}</strong></font>
<a name="2_line161"> 161</a>       
<a name="2_line162"> 162</a> 
<a name="2_line163"> 163</a>       <font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="#2040a0">_msg</font><font color="4444FF">;</font>
<a name="2_line164"> 164</a>       <font color="#2040a0">Uint32</font> <font color="#2040a0">_my_qid</font><font color="4444FF">;</font>
<a name="2_line165"> 165</a>       <font color="#2040a0">Uint32</font> <font color="#2040a0">_out_qid</font><font color="4444FF">;</font>
<a name="2_line166"> 166</a> <font color="4444FF"><strong>}</strong></font><font color="4444FF">;</font>
<a name="2_line167"> 167</a> 
<a name="2_line168"> 168</a> 
<a name="2_line169"> 169</a> 
<a name="2_line170"> 170</a> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line171"> 171</a>    <font color="4444FF">:</font> <font color="#2040a0">Base</font><font color="4444FF">(</font><font color="#2040a0">PEGASUS_QUEUENAME_INTERNALCLIENT</font><font color="4444FF">)</font>,
<a name="2_line172"> 172</a>      <font color="#2040a0">_server_terminating</font><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font>,
<a name="2_line173"> 173</a>      <font color="#2040a0">_msg_avail</font><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font>,
<a name="2_line174"> 174</a>      <font color="#2040a0">_response</font><font color="4444FF">(</font><strong>true</strong>,<font color="#FF0000">0</font><font color="4444FF">)</font>,
<a name="2_line175"> 175</a>      <font color="#2040a0">_op_timeout</font><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font>,
<a name="2_line176"> 176</a>      <font color="#2040a0">_pending_operation</font><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font>,
<a name="2_line177"> 177</a>      <font color="#2040a0">_no_unload</font><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line178"> 178</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line179"> 179</a>    <font color="#444444">// initialize the qids
</font>
<a name="2_line180"> 180</a>    <font color="#444444">// output queue defaults to CIMOPRequestDispatcher
</font>
<a name="2_line181"> 181</a>    <font color="#2040a0">MessageQueue</font> <font color="4444FF">*</font><font color="#2040a0">out</font> <font color="4444FF">=</font> <font color="#2040a0">MessageQueue</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">lookup</font><font color="4444FF">(</font><font color="#2040a0">PEGASUS_QUEUENAME_BINARY_HANDLER</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line182"> 182</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">out</font><font color="4444FF">)</font>
<a name="2_line183"> 183</a>       <font color="#2040a0">_output_qid</font> <font color="4444FF">=</font> <font color="#2040a0">out</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">getQueueId</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line184"> 184</a>    <strong>else</strong>
<a name="2_line185"> 185</a>       <font color="#2040a0">_output_qid</font> <font color="4444FF">=</font> <font color="#2040a0">_queueId</font><font color="4444FF">;</font>
<a name="2_line186"> 186</a>    
<a name="2_line187"> 187</a>    <font color="#444444">// return queue defaults to myself
</font>
<a name="2_line188"> 188</a>    <font color="#2040a0">_return_qid</font> <font color="4444FF">=</font> <font color="#2040a0">_queueId</font><font color="4444FF">;</font>
<a name="2_line189"> 189</a>    <font color="#2040a0">gettimeofday</font><font color="4444FF">(</font><font color="4444FF">&amp;</font><font color="#2040a0">_idle_timeout</font>, <font color="#2040a0">NULL</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line190"> 190</a>    
<a name="2_line191"> 191</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line192"> 192</a> 
<a name="2_line193"> 193</a> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font> <font color="#2040a0">out_qid</font>, <font color="#2040a0">Uint32</font> <font color="#2040a0">ret_qid</font><font color="4444FF">)</font>
<a name="2_line194"> 194</a>    <font color="4444FF">:</font> <font color="#2040a0">Base</font><font color="4444FF">(</font><font color="#2040a0">PEGASUS_QUEUENAME_INTERNALCLIENT</font><font color="4444FF">)</font>,
<a name="2_line195"> 195</a>      <font color="#2040a0">_output_qid</font><font color="4444FF">(</font><font color="#2040a0">out_qid</font><font color="4444FF">)</font>, 
<a name="2_line196"> 196</a>      <font color="#2040a0">_return_qid</font><font color="4444FF">(</font><font color="#2040a0">ret_qid</font><font color="4444FF">)</font>,
<a name="2_line197"> 197</a>      <font color="#2040a0">_server_terminating</font><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font>,
<a name="2_line198"> 198</a>      <font color="#2040a0">_msg_avail</font><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font>,
<a name="2_line199"> 199</a>      <font color="#2040a0">_response</font><font color="4444FF">(</font><strong>true</strong>,<font color="#FF0000">0</font><font color="4444FF">)</font>,
<a name="2_line200"> 200</a>      <font color="#2040a0">_op_timeout</font><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font>,
<a name="2_line201"> 201</a>      <font color="#2040a0">_pending_operation</font><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font>,
<a name="2_line202"> 202</a>      <font color="#2040a0">_no_unload</font><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line203"> 203</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line204"> 204</a>    <strong>if</strong><font color="4444FF">(</font><font color="#FF0000">0</font> <font color="4444FF">=</font><font color="4444FF">=</font> <font color="#2040a0">q_exists</font><font color="4444FF">(</font><font color="#2040a0">_output_qid</font><font color="4444FF">)</font> <font color="4444FF">)</font>
<a name="2_line205"> 205</a>       <font color="#2040a0">_output_qid</font> <font color="4444FF">=</font> <font color="#2040a0">_queueId</font><font color="4444FF">;</font>
<a name="2_line206"> 206</a>    <strong>if</strong><font color="4444FF">(</font><font color="#FF0000">0</font> <font color="4444FF">=</font><font color="4444FF">=</font> <font color="#2040a0">q_exists</font><font color="4444FF">(</font><font color="#2040a0">_return_qid</font><font color="4444FF">)</font> <font color="4444FF">)</font>
<a name="2_line207"> 207</a>       <font color="#2040a0">_return_qid</font> <font color="4444FF">=</font> <font color="#2040a0">_queueId</font><font color="4444FF">;</font>
<a name="2_line208"> 208</a>    <font color="#2040a0">gettimeofday</font><font color="4444FF">(</font><font color="4444FF">&amp;</font><font color="#2040a0">_idle_timeout</font>, <font color="#2040a0">NULL</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line209"> 209</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line210"> 210</a> 
<a name="2_line211"> 211</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">get_idle_timer</font><font color="4444FF">(</font><strong>struct</strong> <font color="#2040a0">timeval</font> <font color="4444FF">*</font><font color="#2040a0">tv</font><font color="4444FF">)</font>
<a name="2_line212"> 212</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line213"> 213</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">tv</font> <font color="4444FF">=</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line214"> 214</a>       <strong>return</strong><font color="4444FF">;</font>
<a name="2_line215"> 215</a>    
<a name="2_line216"> 216</a>    <font color="#2040a0">try</font> 
<a name="2_line217"> 217</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line218"> 218</a>       <font color="#2040a0">_idle_mutex</font>.<font color="#2040a0">lock</font><font color="4444FF">(</font><font color="#2040a0">pegasus_thread_self</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line219"> 219</a>       <font color="#2040a0">memcpy</font><font color="4444FF">(</font><font color="#2040a0">tv</font>, <font color="4444FF">&amp;</font><font color="#2040a0">_idle_timeout</font>, <strong>sizeof</strong><font color="4444FF">(</font><strong>struct</strong> <font color="#2040a0">timeval</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line220"> 220</a>       <font color="#2040a0">_idle_mutex</font>.<font color="#2040a0">unlock</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line221"> 221</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line222"> 222</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line223"> 223</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line224"> 224</a>       <font color="#2040a0">gettimeofday</font><font color="4444FF">(</font><font color="#2040a0">tv</font>, <font color="#2040a0">NULL</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line225"> 225</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line226"> 226</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line227"> 227</a> 
<a name="2_line228"> 228</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">update_idle_timer</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line229"> 229</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line230"> 230</a>    <font color="#2040a0">try</font>
<a name="2_line231"> 231</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line232"> 232</a>       <font color="#2040a0">_idle_mutex</font>.<font color="#2040a0">lock</font><font color="4444FF">(</font><font color="#2040a0">pegasus_thread_self</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line233"> 233</a>       <font color="#2040a0">gettimeofday</font><font color="4444FF">(</font><font color="4444FF">&amp;</font><font color="#2040a0">_idle_timeout</font>, <font color="#2040a0">NULL</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line234"> 234</a>       <font color="#2040a0">_idle_mutex</font>.<font color="#2040a0">unlock</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line235"> 235</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line236"> 236</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line237"> 237</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line238"> 238</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line239"> 239</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line240"> 240</a> 
<a name="2_line241"> 241</a> <font color="#2040a0">Uint32</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line242"> 242</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line243"> 243</a>    <strong>return</strong> <font color="#2040a0">_op_timeout</font>.<font color="#2040a0">value</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line244"> 244</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line245"> 245</a> 
<a name="2_line246"> 246</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">set_operation_timeout</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font> <font color="#2040a0">t</font><font color="4444FF">)</font>
<a name="2_line247"> 247</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line248"> 248</a>    <font color="#2040a0">_op_timeout</font> <font color="4444FF">=</font> <font color="#2040a0">t</font><font color="4444FF">;</font>
<a name="2_line249"> 249</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line250"> 250</a> 
<a name="2_line251"> 251</a> <font color="#2040a0">Boolean</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">pending_operation</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line252"> 252</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line253"> 253</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">_pending_operation</font>.<font color="#2040a0">value</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font>
<a name="2_line254"> 254</a>       <strong>return</strong> <strong>true</strong><font color="4444FF">;</font>
<a name="2_line255"> 255</a>    <strong>return</strong> <strong>false</strong><font color="4444FF">;</font>
<a name="2_line256"> 256</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line257"> 257</a> 
<a name="2_line258"> 258</a> <font color="#2040a0">Boolean</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">unload_ok</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line259"> 259</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line260"> 260</a>    <strong>if</strong><font color="4444FF">(</font> <font color="#2040a0">_no_unload</font>.<font color="#2040a0">value</font><font color="4444FF">(</font><font color="4444FF">)</font> <font color="4444FF">|</font><font color="4444FF">|</font> <font color="#2040a0">_pending_operation</font>.<font color="#2040a0">value</font><font color="4444FF">(</font><font color="4444FF">)</font> <font color="4444FF">)</font>
<a name="2_line261"> 261</a>       <strong>return</strong> <strong>false</strong><font color="4444FF">;</font>
<a name="2_line262"> 262</a>    <strong>return</strong> <strong>true</strong><font color="4444FF">;</font>
<a name="2_line263"> 263</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line264"> 264</a> 
<a name="2_line265"> 265</a> <font color="#2040a0">Uint32</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line266"> 266</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line267"> 267</a>    <font color="#2040a0">try</font>
<a name="2_line268"> 268</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line269"> 269</a>       <font color="#2040a0">_qid_mutex</font>.<font color="#2040a0">lock</font><font color="4444FF">(</font><font color="#2040a0">pegasus_thread_self</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line270"> 270</a>       <font color="#2040a0">Uint32</font> <font color="#2040a0">qid</font> <font color="4444FF">=</font> <font color="#2040a0">_output_qid</font><font color="4444FF">;</font>
<a name="2_line271"> 271</a>       <font color="#2040a0">_qid_mutex</font>.<font color="#2040a0">unlock</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line272"> 272</a>       <strong>return</strong> <font color="#2040a0">qid</font><font color="4444FF">;</font>
<a name="2_line273"> 273</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line274"> 274</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line275"> 275</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line276"> 276</a>       <strong>return</strong> <font color="#2040a0">_queueId</font><font color="4444FF">;</font>
<a name="2_line277"> 277</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line278"> 278</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line279"> 279</a> 
<a name="2_line280"> 280</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">set_output_qid</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font> <font color="#2040a0">qid</font><font color="4444FF">)</font>
<a name="2_line281"> 281</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line282"> 282</a>    <font color="#2040a0">try</font>
<a name="2_line283"> 283</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line284"> 284</a>       <font color="#2040a0">_qid_mutex</font>.<font color="#2040a0">lock</font><font color="4444FF">(</font><font color="#2040a0">pegasus_thread_self</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line285"> 285</a>       <font color="#2040a0">_output_qid</font> <font color="4444FF">=</font> <font color="#2040a0">qid</font><font color="4444FF">;</font>
<a name="2_line286"> 286</a>       <font color="#2040a0">_qid_mutex</font>.<font color="#2040a0">unlock</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line287"> 287</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line288"> 288</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line289"> 289</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line290"> 290</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line291"> 291</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line292"> 292</a> 
<a name="2_line293"> 293</a> <font color="#2040a0">Uint32</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">get_return_qid</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line294"> 294</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line295"> 295</a>    <font color="#2040a0">try</font>
<a name="2_line296"> 296</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line297"> 297</a>       <font color="#2040a0">_qid_mutex</font>.<font color="#2040a0">lock</font><font color="4444FF">(</font><font color="#2040a0">pegasus_thread_self</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line298"> 298</a>       <font color="#2040a0">Uint32</font> <font color="#2040a0">qid</font> <font color="4444FF">=</font> <font color="#2040a0">_return_qid</font><font color="4444FF">;</font>
<a name="2_line299"> 299</a>       <font color="#2040a0">_qid_mutex</font>.<font color="#2040a0">unlock</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line300"> 300</a>       <strong>return</strong> <font color="#2040a0">qid</font><font color="4444FF">;</font>
<a name="2_line301"> 301</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line302"> 302</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line303"> 303</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line304"> 304</a>       <strong>return</strong> <font color="#2040a0">_queueId</font><font color="4444FF">;</font>
<a name="2_line305"> 305</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line306"> 306</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line307"> 307</a> 
<a name="2_line308"> 308</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">set_return_qid</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font> <font color="#2040a0">qid</font><font color="4444FF">)</font>
<a name="2_line309"> 309</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line310"> 310</a>    <font color="#2040a0">try</font>
<a name="2_line311"> 311</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line312"> 312</a>       <font color="#2040a0">_qid_mutex</font>.<font color="#2040a0">lock</font><font color="4444FF">(</font><font color="#2040a0">pegasus_thread_self</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line313"> 313</a>       <font color="#2040a0">_return_qid</font> <font color="4444FF">=</font> <font color="#2040a0">qid</font><font color="4444FF">;</font>
<a name="2_line314"> 314</a>       <font color="#2040a0">_qid_mutex</font>.<font color="#2040a0">unlock</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line315"> 315</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line316"> 316</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line317"> 317</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line318"> 318</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line319"> 319</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line320"> 320</a> 
<a name="2_line321"> 321</a> <font color="#2040a0">Uint32</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line322"> 322</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line323"> 323</a>    <strong>return</strong> <font color="#2040a0">_queueId</font><font color="4444FF">;</font>
<a name="2_line324"> 324</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line325"> 325</a> 
<a name="2_line326"> 326</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">protect</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line327"> 327</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line328"> 328</a>    <font color="#2040a0">_no_unload</font><font color="4444FF">+</font><font color="4444FF">+</font><font color="4444FF">;</font>
<a name="2_line329"> 329</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line330"> 330</a> 
<a name="2_line331"> 331</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">unprotect</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line332"> 332</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line333"> 333</a>    <font color="#2040a0">_no_unload</font><font color="4444FF">-</font><font color="4444FF">-</font><font color="4444FF">;</font>
<a name="2_line334"> 334</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line335"> 335</a> 
<a name="2_line336"> 336</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleEnqueue</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line337"> 337</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line338"> 338</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>,
<a name="2_line339"> 339</a>                     <font color="#008000">&quot;CIMOMHandle::_cimom_handle_rep::handleEnqueue(Message *)&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line340"> 340</a> 
<a name="2_line341"> 341</a>    <font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="#2040a0">message</font> <font color="4444FF">=</font> <font color="#2040a0">dequeue</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line342"> 342</a> 
<a name="2_line343"> 343</a>    <strong>if</strong> <font color="4444FF">(</font><font color="4444FF">!</font><font color="#2040a0">message</font><font color="4444FF">)</font>
<a name="2_line344"> 344</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line345"> 345</a>       <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line346"> 346</a>       <strong>return</strong><font color="4444FF">;</font>
<a name="2_line347"> 347</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line348"> 348</a>    
<a name="2_line349"> 349</a>    <font color="#2040a0">handleEnqueue</font><font color="4444FF">(</font><font color="#2040a0">message</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line350"> 350</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line351"> 351</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line352"> 352</a> 
<a name="2_line353"> 353</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleEnqueue</font><font color="4444FF">(</font><font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="#2040a0">message</font><font color="4444FF">)</font>
<a name="2_line354"> 354</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line355"> 355</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>,
<a name="2_line356"> 356</a>                     <font color="#008000">&quot;CIMOMHandle::_cimom_handle_rep::handleEnqueue(Message *)&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line357"> 357</a>    <strong>if</strong> <font color="4444FF">(</font><font color="4444FF">!</font><font color="#2040a0">message</font><font color="4444FF">)</font>
<a name="2_line358"> 358</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line359"> 359</a>       <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line360"> 360</a>       <strong>return</strong><font color="4444FF">;</font>
<a name="2_line361"> 361</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line362"> 362</a> 
<a name="2_line363"> 363</a>    <strong>switch</strong><font color="4444FF">(</font><font color="#2040a0">message</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">getType</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font>
<a name="2_line364"> 364</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line365"> 365</a>       <strong>case</strong> <font color="#2040a0">CIM_GET_CLASS_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line366"> 366</a>       <strong>case</strong> <font color="#2040a0">CIM_ENUMERATE_CLASSES_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line367"> 367</a>       <strong>case</strong> <font color="#2040a0">CIM_ENUMERATE_CLASS_NAMES_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line368"> 368</a>       <strong>case</strong> <font color="#2040a0">CIM_CREATE_CLASS_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line369"> 369</a>       <strong>case</strong> <font color="#2040a0">CIM_MODIFY_CLASS_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line370"> 370</a>       <strong>case</strong> <font color="#2040a0">CIM_DELETE_CLASS_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line371"> 371</a>       <strong>case</strong> <font color="#2040a0">CIM_GET_INSTANCE_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line372"> 372</a>       <strong>case</strong> <font color="#2040a0">CIM_ENUMERATE_INSTANCES_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line373"> 373</a>       <strong>case</strong> <font color="#2040a0">CIM_ENUMERATE_INSTANCE_NAMES_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line374"> 374</a>       <strong>case</strong> <font color="#2040a0">CIM_CREATE_INSTANCE_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line375"> 375</a>       <strong>case</strong> <font color="#2040a0">CIM_MODIFY_INSTANCE_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line376"> 376</a>       <strong>case</strong> <font color="#2040a0">CIM_DELETE_INSTANCE_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line377"> 377</a>       <strong>case</strong> <font color="#2040a0">CIM_EXEC_QUERY_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line378"> 378</a>       <strong>case</strong> <font color="#2040a0">CIM_ASSOCIATORS_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line379"> 379</a>       <strong>case</strong> <font color="#2040a0">CIM_ASSOCIATOR_NAMES_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line380"> 380</a>       <strong>case</strong> <font color="#2040a0">CIM_REFERENCES_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line381"> 381</a>       <strong>case</strong> <font color="#2040a0">CIM_REFERENCE_NAMES_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line382"> 382</a>       <strong>case</strong> <font color="#2040a0">CIM_GET_PROPERTY_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line383"> 383</a>       <strong>case</strong> <font color="#2040a0">CIM_SET_PROPERTY_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="2_line384"> 384</a> 	 <font color="#2040a0">try</font>
<a name="2_line385"> 385</a> 	 <font color="4444FF"><strong>{</strong></font>
<a name="2_line386"> 386</a> 	    <font color="#2040a0">_response</font>.<font color="#2040a0">insert_last_wait</font><font color="4444FF">(</font><font color="#2040a0">message</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line387"> 387</a> 	    <font color="#2040a0">_msg_avail</font>.<font color="#2040a0">signal</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line388"> 388</a> 	 <font color="4444FF"><strong>}</strong></font>
<a name="2_line389"> 389</a> 	 <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line390"> 390</a> 	 <font color="4444FF"><strong>{</strong></font>
<a name="2_line391"> 391</a> 	    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>,
<a name="2_line392"> 392</a> 			  <font color="#008000">&quot;CIMOMHandle::_cimom_handle_rep::handleEnqueue(Message *) - IPC Exception&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line393"> 393</a> 	        <strong>delete</strong> <font color="#2040a0">message</font><font color="4444FF">;</font>
<a name="2_line394"> 394</a> 	 <font color="4444FF"><strong>}</strong></font>
<a name="2_line395"> 395</a> 	 <strong>break</strong><font color="4444FF">;</font>
<a name="2_line396"> 396</a> 	 
<a name="2_line397"> 397</a>       <strong>default</strong><font color="4444FF">:</font>
<a name="2_line398"> 398</a>       <font color="4444FF"><strong>{</strong></font>
<a name="2_line399"> 399</a> 	 <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>,
<a name="2_line400"> 400</a> 			  <font color="#008000">&quot;CIMOMHandle::_cimom_handle_rep::handleEnqueue(Message *) - unexpected message&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line401"> 401</a> 	 <strong>delete</strong> <font color="#2040a0">message</font><font color="4444FF">;</font>
<a name="2_line402"> 402</a>       <font color="4444FF"><strong>}</strong></font>
<a name="2_line403"> 403</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line404"> 404</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line405"> 405</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line406"> 406</a> 
<a name="2_line407"> 407</a> <font color="#444444">// run as a detached thread 
</font>
<a name="2_line408"> 408</a> <font color="#2040a0">PEGASUS_THREAD_RETURN</font> <font color="#2040a0">PEGASUS_THREAD_CDECL</font> 
<a name="2_line409"> 409</a> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_dispatch</font><font color="4444FF">(</font><strong>void</strong> <font color="4444FF">*</font><font color="#2040a0">parm</font><font color="4444FF">)</font>
<a name="2_line410"> 410</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line411"> 411</a> <font color="#444444">//   Thread *th_dp = reinterpret_cast&lt;Thread *&gt;(parm);
</font>
<a name="2_line412"> 412</a>    
<a name="2_line413"> 413</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>,
<a name="2_line414"> 414</a>                     <font color="#008000">&quot;CIMOMHandle::_cimom_handle_rep::_dispatch(void *)&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line415"> 415</a> 
<a name="2_line416"> 416</a>    <font color="#2040a0">cimom_handle_dispatch</font> <font color="4444FF">*</font><font color="#2040a0">dp</font>  <font color="4444FF">=</font> 
<a name="2_line417"> 417</a>      <strong>reinterpret_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">cimom_handle_dispatch</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font><font color="#2040a0">parm</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line418"> 418</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">dp</font> <font color="4444FF">)</font>
<a name="2_line419"> 419</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line420"> 420</a>       <font color="#2040a0">try</font> 
<a name="2_line421"> 421</a>       <font color="4444FF"><strong>{</strong></font>
<a name="2_line422"> 422</a> 	 <font color="#2040a0">MessageQueue</font> <font color="4444FF">*</font> <font color="#2040a0">target</font> <font color="4444FF">=</font> <font color="#2040a0">MessageQueue</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">lookup</font><font color="4444FF">(</font><font color="#2040a0">dp</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_out_qid</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line423"> 423</a> 	 <font color="#2040a0">MessageQueue</font> <font color="4444FF">*</font><font color="#2040a0">me</font> <font color="4444FF">=</font> <font color="#2040a0">MessageQueue</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">lookup</font><font color="4444FF">(</font><font color="#2040a0">dp</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_my_qid</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line424"> 424</a> 	 <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">me</font> <font color="4444FF">&amp;</font><font color="4444FF">&amp;</font> <font color="#2040a0">target</font> <font color="4444FF">&amp;</font><font color="4444FF">&amp;</font> <font color="#2040a0">dp</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_msg</font><font color="4444FF">)</font>
<a name="2_line425"> 425</a> 	 <font color="4444FF"><strong>{</strong></font>
<a name="2_line426"> 426</a> 	    <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font> <font color="4444FF">*</font><font color="#2040a0">myself</font> <font color="4444FF">=</font> 
<a name="2_line427"> 427</a> 	       <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font><font color="#2040a0">me</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line428"> 428</a> 	    <font color="#2040a0">target</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">enqueue</font><font color="4444FF">(</font><font color="#2040a0">dp</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line429"> 429</a> 	 <font color="4444FF"><strong>}</strong></font>
<a name="2_line430"> 430</a>       <font color="4444FF"><strong>}</strong></font>
<a name="2_line431"> 431</a>       <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line432"> 432</a>       <font color="4444FF"><strong>{</strong></font>
<a name="2_line433"> 433</a>       <font color="4444FF"><strong>}</strong></font>
<a name="2_line434"> 434</a>       <strong>delete</strong> <font color="#2040a0">dp</font><font color="4444FF">;</font>
<a name="2_line435"> 435</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line436"> 436</a>    
<a name="2_line437"> 437</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line438"> 438</a> <font color="#444444">//   exit_thread((PEGASUS_THREAD_RETURN)1);
</font>
<a name="2_line439"> 439</a>    <strong>return</strong> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line440"> 440</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line441"> 441</a> 
<a name="2_line442"> 442</a> <font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="#2040a0">request</font>, 
<a name="2_line443"> 443</a> 						    <font color="#2040a0">Uint32</font> <font color="#2040a0">response_type</font>, 
<a name="2_line444"> 444</a> 						    <font color="#2040a0">Uint32</font> <font color="#2040a0">timeout</font><font color="4444FF">)</font> 
<a name="2_line445"> 445</a>    <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="2_line446"> 446</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line447"> 447</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>,
<a name="2_line448"> 448</a>                     <font color="#008000">&quot;CIMOMHandle::_cimom_handle_rep::do_request(Message *, Uint32, Uint32)&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line449"> 449</a> 
<a name="2_line450"> 450</a>    <font color="#2040a0">try</font> 
<a name="2_line451"> 451</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line452"> 452</a>       <font color="#2040a0">_recursion</font>.<font color="#2040a0">try_lock</font><font color="4444FF">(</font><font color="#2040a0">pegasus_thread_self</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line453"> 453</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line454"> 454</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">AlreadyLocked</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line455"> 455</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line456"> 456</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line457"> 457</a> 		       <font color="#008000">&quot;AlreadyLocked Exception, throwing Deadlock&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line458"> 458</a>       <strong>throw</strong> <font color="#2040a0">Deadlock</font><font color="4444FF">(</font><font color="#2040a0">pegasus_thread_self</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line459"> 459</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line460"> 460</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Deadlock</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line461"> 461</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line462"> 462</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line463"> 463</a> 		       <font color="#008000">&quot;Deadlock Exception&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line464"> 464</a>       <strong>throw</strong><font color="4444FF">;</font>
<a name="2_line465"> 465</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line466"> 466</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line467"> 467</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line468"> 468</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line469"> 469</a> 			     <font color="#008000">&quot;Unexpected Exception&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line470"> 470</a>       <strong>throw</strong><font color="4444FF">;</font>
<a name="2_line471"> 471</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line472"> 472</a>    <font color="#2040a0">cimom_handle_dispatch</font> <font color="4444FF">*</font><font color="#2040a0">dp</font> <font color="4444FF">=</font> 
<a name="2_line473"> 473</a>       <strong>new</strong> <font color="#2040a0">cimom_handle_dispatch</font><font color="4444FF">(</font><font color="#2040a0">request</font>, <font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line474"> 474</a> 
<a name="2_line475"> 475</a>    <font color="#2040a0">MessageQueueService</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">get_thread_pool</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">allocate_and_awaken</font><font color="4444FF">(</font><font color="#2040a0">dp</font>, <font color="#2040a0">_dispatch</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line476"> 476</a> 
<a name="2_line477"> 477</a>    <font color="#2040a0">_request</font> <font color="4444FF">=</font> <font color="#2040a0">request</font><font color="4444FF">;</font>
<a name="2_line478"> 478</a> 
<a name="2_line479"> 479</a>    <font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line480"> 480</a>    
<a name="2_line481"> 481</a>    <font color="#2040a0">try</font> 
<a name="2_line482"> 482</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line483"> 483</a>       <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">timeout</font><font color="4444FF">)</font>
<a name="2_line484"> 484</a> 	 <font color="#2040a0">_msg_avail</font>.<font color="#2040a0">time_wait</font><font color="4444FF">(</font><font color="#2040a0">timeout</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line485"> 485</a>       <strong>else</strong>
<a name="2_line486"> 486</a> 	 <font color="#2040a0">_msg_avail</font>.<font color="#2040a0">wait</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line487"> 487</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line488"> 488</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">TimeOut</font><font color="4444FF">)</font>
<a name="2_line489"> 489</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line490"> 490</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line491"> 491</a> 		       <font color="#008000">&quot;timeout waiting for response&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line492"> 492</a>       <font color="#2040a0">_request</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line493"> 493</a>       <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line494"> 494</a>       <font color="#2040a0">_recursion</font>.<font color="#2040a0">unlock</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line495"> 495</a>       <strong>return</strong> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line496"> 496</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line497"> 497</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line498"> 498</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line499"> 499</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line500"> 500</a> 		       <font color="#008000">&quot;Unexpected Exception&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line501"> 501</a>       <font color="#2040a0">_request</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line502"> 502</a>       <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line503"> 503</a>       <font color="#2040a0">_recursion</font>.<font color="#2040a0">unlock</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line504"> 504</a>       <strong>return</strong> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line505"> 505</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line506"> 506</a> 
<a name="2_line507"> 507</a>    <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#2040a0">_response</font>.<font color="#2040a0">remove_first</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line508"> 508</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">&amp;</font><font color="4444FF">&amp;</font>  <font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">getRouting</font><font color="4444FF">(</font><font color="4444FF">)</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">getRouting</font><font color="4444FF">(</font><font color="4444FF">)</font> <font color="4444FF">|</font><font color="4444FF">|</font> <font color="4444FF">(</font><font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">getType</font><font color="4444FF">(</font><font color="4444FF">)</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#2040a0">response_type</font><font color="4444FF">)</font><font color="4444FF">)</font>
<a name="2_line509"> 509</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line510"> 510</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line511"> 511</a> 		       <font color="#008000">&quot;Unexpected Message Instance&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line512"> 512</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line513"> 513</a>       <font color="#2040a0">try</font> 
<a name="2_line514"> 514</a>       <font color="4444FF"><strong>{</strong></font>
<a name="2_line515"> 515</a> 	 <font color="#2040a0">_response</font>.<font color="#2040a0">empty_list</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line516"> 516</a>       <font color="4444FF"><strong>}</strong></font>
<a name="2_line517"> 517</a>       <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line518"> 518</a>       <font color="4444FF"><strong>{</strong></font>
<a name="2_line519"> 519</a>       <font color="4444FF"><strong>}</strong></font>
<a name="2_line520"> 520</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line521"> 521</a>    <font color="#2040a0">_request</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line522"> 522</a> 
<a name="2_line523"> 523</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line524"> 524</a>    <font color="#2040a0">_recursion</font>.<font color="#2040a0">unlock</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>      
<a name="2_line525"> 525</a>    <strong>return</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line526"> 526</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line527"> 527</a> 
<a name="2_line528"> 528</a> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">CIMOMHandle</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line529"> 529</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line530"> 530</a>    <font color="#2040a0">_rep</font> <font color="4444FF">=</font> <strong>new</strong> <font color="#2040a0">_cimom_handle_rep</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line531"> 531</a> 
<a name="2_line532"> 532</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line533"> 533</a> 
<a name="2_line534"> 534</a> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">CIMOMHandle</font><font color="4444FF">(</font><strong>const</strong> <font color="#2040a0">CIMOMHandle</font> <font color="4444FF">&amp;</font> <font color="#2040a0">h</font><font color="4444FF">)</font>
<a name="2_line535"> 535</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line536"> 536</a>    <strong>if</strong><font color="4444FF">(</font><strong>this</strong> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="4444FF">&amp;</font><font color="#2040a0">h</font><font color="4444FF">)</font>
<a name="2_line537"> 537</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line538"> 538</a>       <font color="#2040a0">Inc</font><font color="4444FF">(</font><strong>this</strong><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_rep</font> <font color="4444FF">=</font> <font color="#2040a0">h</font>.<font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line539"> 539</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line540"> 540</a>    
<a name="2_line541"> 541</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line542"> 542</a> 
<a name="2_line543"> 543</a> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font>~<font color="#2040a0">CIMOMHandle</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line544"> 544</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line545"> 545</a>    <font color="#2040a0">Dec</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line546"> 546</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line547"> 547</a> 
<a name="2_line548"> 548</a> <font color="#2040a0">CIMOMHandle</font> <font color="4444FF">&amp;</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><strong>operator</strong><font color="4444FF">=</font><font color="4444FF">(</font><strong>const</strong> <font color="#2040a0">CIMOMHandle</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handle</font><font color="4444FF">)</font>
<a name="2_line549"> 549</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line550"> 550</a>    <strong>if</strong><font color="4444FF">(</font><strong>this</strong> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="4444FF">&amp;</font><font color="#2040a0">handle</font><font color="4444FF">)</font>
<a name="2_line551"> 551</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line552"> 552</a>       <font color="#2040a0">Inc</font><font color="4444FF">(</font><font color="#2040a0">_rep</font> <font color="4444FF">=</font> <font color="#2040a0">handle</font>.<font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line553"> 553</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line554"> 554</a>    <strong>return</strong> <font color="4444FF">*</font><strong>this</strong><font color="4444FF">;</font>
<a name="2_line555"> 555</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line556"> 556</a> 
<a name="2_line557"> 557</a> 
<a name="2_line558"> 558</a> <font color="#2040a0">CIMClass</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getClass</font><font color="4444FF">(</font>
<a name="2_line559"> 559</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line560"> 560</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="2_line561"> 561</a>     <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="2_line562"> 562</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="2_line563"> 563</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="2_line564"> 564</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line565"> 565</a>     <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font><font color="4444FF">)</font>
<a name="2_line566"> 566</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line567"> 567</a> 
<a name="2_line568"> 568</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::getClass()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line569"> 569</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line570"> 570</a> 
<a name="2_line571"> 571</a>     <font color="#444444">// encode request
</font>
<a name="2_line572"> 572</a>     <font color="#2040a0">CIMGetClassRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line573"> 573</a>         <strong>new</strong> <font color="#2040a0">CIMGetClassRequestMessage</font><font color="4444FF">(</font>
<a name="2_line574"> 574</a>         <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line575"> 575</a>         <font color="#2040a0">nameSpace</font>,
<a name="2_line576"> 576</a>         <font color="#2040a0">className</font>,
<a name="2_line577"> 577</a>         <font color="#2040a0">localOnly</font>,
<a name="2_line578"> 578</a>         <font color="#2040a0">includeQualifiers</font>,
<a name="2_line579"> 579</a>         <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line580"> 580</a>         <font color="#2040a0">propertyList</font>,
<a name="2_line581"> 581</a>         <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line582"> 582</a> 
<a name="2_line583"> 583</a>     <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line584"> 584</a>     
<a name="2_line585"> 585</a>     <font color="#2040a0">CIMGetClassResponseMessage</font> <font color="4444FF">*</font> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line586"> 586</a>     <font color="#2040a0">try</font> 
<a name="2_line587"> 587</a>     <font color="4444FF"><strong>{</strong></font>
<a name="2_line588"> 588</a>        <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line589"> 589</a> 	  <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMGetClassResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line590"> 590</a> 	     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line591"> 591</a> 			      <font color="#2040a0">CIM_GET_CLASS_RESPONSE_MESSAGE</font>,
<a name="2_line592"> 592</a> 			      <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line593"> 593</a>     <font color="4444FF"><strong>}</strong></font>
<a name="2_line594"> 594</a>     <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line595"> 595</a>     <font color="4444FF"><strong>{</strong></font>
<a name="2_line596"> 596</a>        <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line597"> 597</a> 			<font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line598"> 598</a>        <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line599"> 599</a>     <font color="4444FF"><strong>}</strong></font>
<a name="2_line600"> 600</a>     <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line601"> 601</a>     <font color="4444FF"><strong>{</strong></font>
<a name="2_line602"> 602</a>        <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line603"> 603</a> 			<font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line604"> 604</a>        <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line605"> 605</a>     <font color="4444FF"><strong>}</strong></font>
<a name="2_line606"> 606</a>         
<a name="2_line607"> 607</a>     <font color="#2040a0">CIMClass</font> <font color="#2040a0">cimClass</font><font color="4444FF">;</font>
<a name="2_line608"> 608</a> 
<a name="2_line609"> 609</a>     <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line610"> 610</a>     <font color="4444FF"><strong>{</strong></font>
<a name="2_line611"> 611</a>        <font color="#2040a0">cimClass</font> <font color="4444FF">=</font> <font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">cimClass</font><font color="4444FF">;</font>
<a name="2_line612"> 612</a>     <font color="4444FF"><strong>}</strong></font>
<a name="2_line613"> 613</a>     
<a name="2_line614"> 614</a>     <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line615"> 615</a>     
<a name="2_line616"> 616</a>     <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line617"> 617</a>     <strong>return</strong> <font color="#2040a0">cimClass</font><font color="4444FF">;</font>
<a name="2_line618"> 618</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line619"> 619</a> 
<a name="2_line620"> 620</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getClassAsync</font><font color="4444FF">(</font>
<a name="2_line621"> 621</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line622"> 622</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="2_line623"> 623</a>     <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="2_line624"> 624</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="2_line625"> 625</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="2_line626"> 626</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line627"> 627</a>     <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font>,
<a name="2_line628"> 628</a>     <font color="#2040a0">ClassResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line629"> 629</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line630"> 630</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line631"> 631</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line632"> 632</a> 
<a name="2_line633"> 633</a> 
<a name="2_line634"> 634</a> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMClass</font><font color="4444FF">&gt;</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">enumerateClasses</font><font color="4444FF">(</font>
<a name="2_line635"> 635</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line636"> 636</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="2_line637"> 637</a>     <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="2_line638"> 638</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">deepInheritance</font>,
<a name="2_line639"> 639</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="2_line640"> 640</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="2_line641"> 641</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font><font color="4444FF">)</font>
<a name="2_line642"> 642</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line643"> 643</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::enumerateClasses()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line644"> 644</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line645"> 645</a> 
<a name="2_line646"> 646</a>    <font color="#2040a0">CIMEnumerateClassesRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line647"> 647</a>         <strong>new</strong> <font color="#2040a0">CIMEnumerateClassesRequestMessage</font><font color="4444FF">(</font>
<a name="2_line648"> 648</a>         <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line649"> 649</a>         <font color="#2040a0">nameSpace</font>,
<a name="2_line650"> 650</a>         <font color="#2040a0">className</font>,
<a name="2_line651"> 651</a>         <font color="#2040a0">deepInheritance</font>,
<a name="2_line652"> 652</a>         <font color="#2040a0">localOnly</font>,
<a name="2_line653"> 653</a>         <font color="#2040a0">includeQualifiers</font>,
<a name="2_line654"> 654</a>         <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line655"> 655</a> 	<font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line656"> 656</a>    
<a name="2_line657"> 657</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line658"> 658</a> 
<a name="2_line659"> 659</a>    <font color="#2040a0">CIMEnumerateClassesResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line660"> 660</a>    
<a name="2_line661"> 661</a>    <font color="#2040a0">try</font> 
<a name="2_line662"> 662</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line663"> 663</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line664"> 664</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMEnumerateClassesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line665"> 665</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line666"> 666</a> 			     <font color="#2040a0">CIM_ENUMERATE_CLASSES_RESPONSE_MESSAGE</font>,
<a name="2_line667"> 667</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line668"> 668</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line669"> 669</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line670"> 670</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line671"> 671</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line672"> 672</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line673"> 673</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line674"> 674</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line675"> 675</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line676"> 676</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line677"> 677</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line678"> 678</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line679"> 679</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line680"> 680</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line681"> 681</a> 
<a name="2_line682"> 682</a>    <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMClass</font><font color="4444FF">&gt;</font> <font color="#2040a0">cimClasses</font><font color="4444FF">;</font>
<a name="2_line683"> 683</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line684"> 684</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line685"> 685</a>       <font color="#2040a0">cimClasses</font> <font color="4444FF">=</font> <font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">cimClasses</font><font color="4444FF">;</font>
<a name="2_line686"> 686</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line687"> 687</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line688"> 688</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line689"> 689</a>    <strong>return</strong> <font color="#2040a0">cimClasses</font><font color="4444FF">;</font>
<a name="2_line690"> 690</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line691"> 691</a> 
<a name="2_line692"> 692</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">enumerateClassesAsync</font><font color="4444FF">(</font>
<a name="2_line693"> 693</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line694"> 694</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line695"> 695</a>     <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="2_line696"> 696</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">deepInheritance</font>,
<a name="2_line697"> 697</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="2_line698"> 698</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="2_line699"> 699</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line700"> 700</a>     <font color="#2040a0">ClassResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line701"> 701</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line702"> 702</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line703"> 703</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line704"> 704</a> 
<a name="2_line705"> 705</a> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMName</font><font color="4444FF">&gt;</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">enumerateClassNames</font><font color="4444FF">(</font>
<a name="2_line706"> 706</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line707"> 707</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line708"> 708</a>     <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="2_line709"> 709</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">deepInheritance</font><font color="4444FF">)</font>
<a name="2_line710"> 710</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line711"> 711</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::enumerateClassNames()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line712"> 712</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line713"> 713</a> 
<a name="2_line714"> 714</a>     <font color="#2040a0">CIMEnumerateClassNamesRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line715"> 715</a>         <strong>new</strong> <font color="#2040a0">CIMEnumerateClassNamesRequestMessage</font><font color="4444FF">(</font>
<a name="2_line716"> 716</a>         <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line717"> 717</a>         <font color="#2040a0">nameSpace</font>,
<a name="2_line718"> 718</a>         <font color="#2040a0">className</font>,
<a name="2_line719"> 719</a>         <font color="#2040a0">deepInheritance</font>,
<a name="2_line720"> 720</a> 	<font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line721"> 721</a>     
<a name="2_line722"> 722</a>     <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line723"> 723</a> 
<a name="2_line724"> 724</a>     <font color="#2040a0">CIMEnumerateClassNamesResponseMessage</font> <font color="4444FF">*</font> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line725"> 725</a>     <font color="#2040a0">try</font> 
<a name="2_line726"> 726</a>     <font color="4444FF"><strong>{</strong></font>
<a name="2_line727"> 727</a>        <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line728"> 728</a> 	  <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMEnumerateClassNamesResponseMessage</font> <font color="4444FF">*</font> <font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line729"> 729</a> 	     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line730"> 730</a> 			      <font color="#2040a0">CIM_ENUMERATE_CLASS_NAMES_RESPONSE_MESSAGE</font>,
<a name="2_line731"> 731</a> 			      <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line732"> 732</a>     <font color="4444FF"><strong>}</strong></font>
<a name="2_line733"> 733</a>     <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line734"> 734</a>     <font color="4444FF"><strong>{</strong></font>
<a name="2_line735"> 735</a>        <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line736"> 736</a> 			<font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line737"> 737</a>        <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line738"> 738</a>     <font color="4444FF"><strong>}</strong></font>
<a name="2_line739"> 739</a>     <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line740"> 740</a>     <font color="4444FF"><strong>{</strong></font>
<a name="2_line741"> 741</a>        <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line742"> 742</a> 			<font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line743"> 743</a>        <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line744"> 744</a>     <font color="4444FF"><strong>}</strong></font>
<a name="2_line745"> 745</a> 
<a name="2_line746"> 746</a>     <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMName</font><font color="4444FF">&gt;</font> <font color="#2040a0">classNames</font><font color="4444FF">;</font>
<a name="2_line747"> 747</a>     <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font> <font color="4444FF">)</font>
<a name="2_line748"> 748</a>     <font color="4444FF"><strong>{</strong></font>
<a name="2_line749"> 749</a>        <font color="#2040a0">classNames</font> <font color="4444FF">=</font> <font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">classNames</font><font color="4444FF">;</font>
<a name="2_line750"> 750</a>     <font color="4444FF"><strong>}</strong></font>
<a name="2_line751"> 751</a> 
<a name="2_line752"> 752</a>     <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line753"> 753</a>     <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line754"> 754</a>     <strong>return</strong><font color="4444FF">(</font><font color="#2040a0">classNames</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line755"> 755</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line756"> 756</a> 
<a name="2_line757"> 757</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">enumerateClassNamesAsync</font><font color="4444FF">(</font>
<a name="2_line758"> 758</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line759"> 759</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line760"> 760</a>     <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="2_line761"> 761</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">deepInheritance</font>,
<a name="2_line762"> 762</a>     <font color="#2040a0">ObjectPathResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line763"> 763</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line764"> 764</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line765"> 765</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line766"> 766</a> 
<a name="2_line767"> 767</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">createClass</font><font color="4444FF">(</font>
<a name="2_line768"> 768</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line769"> 769</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font><font color="4444FF">&amp;</font> <font color="#2040a0">nameSpace</font>,
<a name="2_line770"> 770</a>     <strong>const</strong> <font color="#2040a0">CIMClass</font><font color="4444FF">&amp;</font> <font color="#2040a0">newClass</font><font color="4444FF">)</font>
<a name="2_line771"> 771</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line772"> 772</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::createClass()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line773"> 773</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line774"> 774</a>    
<a name="2_line775"> 775</a>    
<a name="2_line776"> 776</a>    <font color="#2040a0">CIMCreateClassRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line777"> 777</a>       <strong>new</strong> <font color="#2040a0">CIMCreateClassRequestMessage</font><font color="4444FF">(</font>
<a name="2_line778"> 778</a> 	 <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line779"> 779</a> 	 <font color="#2040a0">nameSpace</font>,
<a name="2_line780"> 780</a> 	 <font color="#2040a0">newClass</font>,
<a name="2_line781"> 781</a> 	 <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line782"> 782</a> 
<a name="2_line783"> 783</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line784"> 784</a>    
<a name="2_line785"> 785</a>    <font color="#2040a0">CIMCreateClassResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line786"> 786</a>    
<a name="2_line787"> 787</a>    <font color="#2040a0">try</font> 
<a name="2_line788"> 788</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line789"> 789</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line790"> 790</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMCreateClassResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line791"> 791</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line792"> 792</a> 			     <font color="#2040a0">CIM_CREATE_CLASS_RESPONSE_MESSAGE</font>,
<a name="2_line793"> 793</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line794"> 794</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line795"> 795</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line796"> 796</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line797"> 797</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line798"> 798</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line799"> 799</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line800"> 800</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line801"> 801</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line802"> 802</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line803"> 803</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line804"> 804</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line805"> 805</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line806"> 806</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line807"> 807</a> 
<a name="2_line808"> 808</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">=</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line809"> 809</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line810"> 810</a>       <strong>throw</strong> <font color="#2040a0">PEGASUS_CIM_EXCEPTION</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_FAILED</font>, <font color="#2040a0">String</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">EMPTY</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line811"> 811</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line812"> 812</a>    
<a name="2_line813"> 813</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line814"> 814</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line815"> 815</a>    <strong>return</strong><font color="4444FF">;</font>
<a name="2_line816"> 816</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line817"> 817</a> 
<a name="2_line818"> 818</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">createClassAsync</font><font color="4444FF">(</font>
<a name="2_line819"> 819</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line820"> 820</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line821"> 821</a>     <strong>const</strong> <font color="#2040a0">CIMClass</font><font color="4444FF">&amp;</font> <font color="#2040a0">newClass</font>,
<a name="2_line822"> 822</a>     <font color="#2040a0">ResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line823"> 823</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line824"> 824</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line825"> 825</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line826"> 826</a> 
<a name="2_line827"> 827</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">modifyClass</font><font color="4444FF">(</font>
<a name="2_line828"> 828</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line829"> 829</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line830"> 830</a>     <strong>const</strong> <font color="#2040a0">CIMClass</font><font color="4444FF">&amp;</font> <font color="#2040a0">modifiedClass</font><font color="4444FF">)</font>
<a name="2_line831"> 831</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line832"> 832</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::modifyClass()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line833"> 833</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line834"> 834</a>    
<a name="2_line835"> 835</a>    <font color="#2040a0">CIMModifyClassRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line836"> 836</a>       <strong>new</strong> <font color="#2040a0">CIMModifyClassRequestMessage</font><font color="4444FF">(</font>
<a name="2_line837"> 837</a> 	 <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line838"> 838</a> 	 <font color="#2040a0">nameSpace</font>,
<a name="2_line839"> 839</a> 	 <font color="#2040a0">modifiedClass</font>,
<a name="2_line840"> 840</a> 	 <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line841"> 841</a>    
<a name="2_line842"> 842</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line843"> 843</a>    <font color="#2040a0">CIMModifyClassResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line844"> 844</a>    <font color="#2040a0">try</font> 
<a name="2_line845"> 845</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line846"> 846</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line847"> 847</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMModifyClassResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line848"> 848</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line849"> 849</a> 			     <font color="#2040a0">CIM_MODIFY_CLASS_RESPONSE_MESSAGE</font>,
<a name="2_line850"> 850</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line851"> 851</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line852"> 852</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line853"> 853</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line854"> 854</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line855"> 855</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line856"> 856</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line857"> 857</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line858"> 858</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line859"> 859</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line860"> 860</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line861"> 861</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line862"> 862</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line863"> 863</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line864"> 864</a>    
<a name="2_line865"> 865</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">=</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line866"> 866</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line867"> 867</a>       <strong>throw</strong> <font color="#2040a0">PEGASUS_CIM_EXCEPTION</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_FAILED</font>, <font color="#2040a0">String</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">EMPTY</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line868"> 868</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line869"> 869</a>    
<a name="2_line870"> 870</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line871"> 871</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line872"> 872</a>    <strong>return</strong><font color="4444FF">;</font>
<a name="2_line873"> 873</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line874"> 874</a> 
<a name="2_line875"> 875</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">modifyClassAsync</font><font color="4444FF">(</font>
<a name="2_line876"> 876</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line877"> 877</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line878"> 878</a>     <strong>const</strong> <font color="#2040a0">CIMClass</font><font color="4444FF">&amp;</font> <font color="#2040a0">modifiedClass</font>,
<a name="2_line879"> 879</a>     <font color="#2040a0">ResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line880"> 880</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line881"> 881</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line882"> 882</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line883"> 883</a> 
<a name="2_line884"> 884</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">deleteClass</font><font color="4444FF">(</font>
<a name="2_line885"> 885</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line886"> 886</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line887"> 887</a>     <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font><font color="4444FF">)</font>
<a name="2_line888"> 888</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line889"> 889</a>    
<a name="2_line890"> 890</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::deleteClass()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line891"> 891</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line892"> 892</a>    
<a name="2_line893"> 893</a>    <font color="#444444">// encode request
</font>
<a name="2_line894"> 894</a>    <font color="#2040a0">CIMDeleteClassRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line895"> 895</a>       <strong>new</strong> <font color="#2040a0">CIMDeleteClassRequestMessage</font><font color="4444FF">(</font>
<a name="2_line896"> 896</a> 	 <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line897"> 897</a> 	 <font color="#2040a0">nameSpace</font>,
<a name="2_line898"> 898</a> 	 <font color="#2040a0">className</font>,
<a name="2_line899"> 899</a> 	 <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line900"> 900</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line901"> 901</a> 
<a name="2_line902"> 902</a>    <font color="#2040a0">CIMDeleteClassResponseMessage</font> <font color="4444FF">*</font> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line903"> 903</a>    
<a name="2_line904"> 904</a>    <font color="#2040a0">try</font> 
<a name="2_line905"> 905</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line906"> 906</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line907"> 907</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMDeleteClassResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line908"> 908</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line909"> 909</a> 			     <font color="#2040a0">CIM_DELETE_CLASS_RESPONSE_MESSAGE</font>,
<a name="2_line910"> 910</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line911"> 911</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line912"> 912</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line913"> 913</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line914"> 914</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line915"> 915</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line916"> 916</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line917"> 917</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line918"> 918</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line919"> 919</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line920"> 920</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line921"> 921</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line922"> 922</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line923"> 923</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line924"> 924</a>    
<a name="2_line925"> 925</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">=</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line926"> 926</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line927"> 927</a>       <strong>throw</strong> <font color="#2040a0">PEGASUS_CIM_EXCEPTION</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_FAILED</font>, <font color="#2040a0">String</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">EMPTY</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line928"> 928</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line929"> 929</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line930"> 930</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line931"> 931</a>    <strong>return</strong><font color="4444FF">;</font>
<a name="2_line932"> 932</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line933"> 933</a> 
<a name="2_line934"> 934</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">deleteClassAsync</font><font color="4444FF">(</font>
<a name="2_line935"> 935</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line936"> 936</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line937"> 937</a>     <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="2_line938"> 938</a>     <font color="#2040a0">ResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line939"> 939</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line940"> 940</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line941"> 941</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line942"> 942</a> 
<a name="2_line943"> 943</a> <font color="#2040a0">CIMInstance</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getInstance</font><font color="4444FF">(</font>
<a name="2_line944"> 944</a>    <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line945"> 945</a>    <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line946"> 946</a>    <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font>,
<a name="2_line947"> 947</a>    <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="2_line948"> 948</a>    <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="2_line949"> 949</a>    <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line950"> 950</a>    <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font><font color="4444FF">)</font>
<a name="2_line951"> 951</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line952"> 952</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::getInstance()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line953"> 953</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line954"> 954</a> 
<a name="2_line955"> 955</a>    
<a name="2_line956"> 956</a>    <font color="#444444">// encode request
</font>
<a name="2_line957"> 957</a>    <font color="#2040a0">CIMGetInstanceRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line958"> 958</a>       <strong>new</strong> <font color="#2040a0">CIMGetInstanceRequestMessage</font><font color="4444FF">(</font>
<a name="2_line959"> 959</a> 	 <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line960"> 960</a> 	 <font color="#2040a0">nameSpace</font>,
<a name="2_line961"> 961</a> 	 <font color="#2040a0">instanceName</font>,
<a name="2_line962"> 962</a> 	 <font color="#2040a0">localOnly</font>,
<a name="2_line963"> 963</a> 	 <font color="#2040a0">includeQualifiers</font>,
<a name="2_line964"> 964</a> 	 <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line965"> 965</a> 	 <font color="#2040a0">propertyList</font>,
<a name="2_line966"> 966</a> 	 <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line967"> 967</a>    
<a name="2_line968"> 968</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line969"> 969</a>    <font color="#2040a0">CIMGetInstanceResponseMessage</font> <font color="4444FF">*</font> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line970"> 970</a>    <font color="#2040a0">try</font> 
<a name="2_line971"> 971</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line972"> 972</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line973"> 973</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMGetInstanceResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line974"> 974</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line975"> 975</a> 			     <font color="#2040a0">CIM_GET_INSTANCE_RESPONSE_MESSAGE</font>,
<a name="2_line976"> 976</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line977"> 977</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line978"> 978</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line979"> 979</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line980"> 980</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line981"> 981</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line982"> 982</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line983"> 983</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line984"> 984</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line985"> 985</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line986"> 986</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line987"> 987</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line988"> 988</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line989"> 989</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line990"> 990</a> 
<a name="2_line991"> 991</a>    <font color="#2040a0">CIMInstance</font> <font color="#2040a0">cimInstance</font> <font color="4444FF">;</font>
<a name="2_line992"> 992</a> 
<a name="2_line993"> 993</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line994"> 994</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line995"> 995</a>       <font color="#2040a0">cimInstance</font> <font color="4444FF">=</font> <font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">cimInstance</font><font color="4444FF">;</font>
<a name="2_line996"> 996</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line997"> 997</a>     
<a name="2_line998"> 998</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line999"> 999</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1000">1000</a>    <strong>return</strong><font color="4444FF">(</font><font color="#2040a0">cimInstance</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1001">1001</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1002">1002</a> 
<a name="2_line1003">1003</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getInstanceAsync</font><font color="4444FF">(</font>
<a name="2_line1004">1004</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1005">1005</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1006">1006</a>     <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font>,
<a name="2_line1007">1007</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="2_line1008">1008</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="2_line1009">1009</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line1010">1010</a>     <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font>,
<a name="2_line1011">1011</a>     <font color="#2040a0">InstanceResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line1012">1012</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1013">1013</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1014">1014</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1015">1015</a> 
<a name="2_line1016">1016</a> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMInstance</font><font color="4444FF">&gt;</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">enumerateInstances</font><font color="4444FF">(</font>
<a name="2_line1017">1017</a>    <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1018">1018</a>    <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1019">1019</a>    <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="2_line1020">1020</a>    <font color="#2040a0">Boolean</font> <font color="#2040a0">deepInheritance</font>,
<a name="2_line1021">1021</a>    <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="2_line1022">1022</a>    <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="2_line1023">1023</a>    <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line1024">1024</a>    <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font><font color="4444FF">)</font>
<a name="2_line1025">1025</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1026">1026</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::enumerateInstances()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1027">1027</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1028">1028</a> 
<a name="2_line1029">1029</a>    <font color="#444444">// encode request
</font>
<a name="2_line1030">1030</a>    <font color="#2040a0">CIMEnumerateInstancesRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line1031">1031</a>       <strong>new</strong> <font color="#2040a0">CIMEnumerateInstancesRequestMessage</font><font color="4444FF">(</font>
<a name="2_line1032">1032</a> 	 <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line1033">1033</a> 	 <font color="#2040a0">nameSpace</font>,
<a name="2_line1034">1034</a> 	 <font color="#2040a0">className</font>,
<a name="2_line1035">1035</a> 	 <font color="#2040a0">deepInheritance</font>,
<a name="2_line1036">1036</a> 	 <font color="#2040a0">localOnly</font>,
<a name="2_line1037">1037</a> 	 <font color="#2040a0">includeQualifiers</font>,
<a name="2_line1038">1038</a> 	 <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line1039">1039</a> 	 <font color="#2040a0">propertyList</font>,
<a name="2_line1040">1040</a> 	 <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1041">1041</a> 
<a name="2_line1042">1042</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1043">1043</a> 
<a name="2_line1044">1044</a>    <font color="#2040a0">CIMEnumerateInstancesResponseMessage</font> <font color="4444FF">*</font> <font color="#2040a0">response</font><font color="4444FF">;</font> 
<a name="2_line1045">1045</a>    <font color="#2040a0">try</font> 
<a name="2_line1046">1046</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1047">1047</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line1048">1048</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMEnumerateInstancesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line1049">1049</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line1050">1050</a> 			     <font color="#2040a0">CIM_ENUMERATE_INSTANCES_RESPONSE_MESSAGE</font>,
<a name="2_line1051">1051</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1052">1052</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1053">1053</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line1054">1054</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1055">1055</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1056">1056</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1057">1057</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1058">1058</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1059">1059</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line1060">1060</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1061">1061</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1062">1062</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1063">1063</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1064">1064</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1065">1065</a> 
<a name="2_line1066">1066</a>    <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMInstance</font><font color="4444FF">&gt;</font> <font color="#2040a0">cimInstances</font><font color="4444FF">;</font>
<a name="2_line1067">1067</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line1068">1068</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1069">1069</a>       <font color="#2040a0">cimInstances</font> <font color="4444FF">=</font> <font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">cimNamedInstances</font><font color="4444FF">;</font>
<a name="2_line1070">1070</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1071">1071</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1072">1072</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1073">1073</a>    <strong>return</strong><font color="4444FF">(</font><font color="#2040a0">cimInstances</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1074">1074</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1075">1075</a> 
<a name="2_line1076">1076</a> 
<a name="2_line1077">1077</a> 
<a name="2_line1078">1078</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">enumerateInstancesAsync</font><font color="4444FF">(</font>
<a name="2_line1079">1079</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1080">1080</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1081">1081</a>     <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="2_line1082">1082</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">deepInheritance</font>,
<a name="2_line1083">1083</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">localOnly</font>,
<a name="2_line1084">1084</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="2_line1085">1085</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line1086">1086</a>     <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font>,
<a name="2_line1087">1087</a>     <font color="#2040a0">InstanceResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line1088">1088</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1089">1089</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1090">1090</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1091">1091</a> 
<a name="2_line1092">1092</a> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObjectPath</font><font color="4444FF">&gt;</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">enumerateInstanceNames</font><font color="4444FF">(</font>
<a name="2_line1093">1093</a>    <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1094">1094</a>    <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1095">1095</a>    <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font><font color="4444FF">)</font>
<a name="2_line1096">1096</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1097">1097</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::enumerateInstanceNamess()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1098">1098</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1099">1099</a> 
<a name="2_line1100">1100</a>    <font color="#444444">// encode request
</font>
<a name="2_line1101">1101</a>    <font color="#2040a0">CIMEnumerateInstanceNamesRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line1102">1102</a>       <strong>new</strong> <font color="#2040a0">CIMEnumerateInstanceNamesRequestMessage</font><font color="4444FF">(</font>
<a name="2_line1103">1103</a> 	 <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line1104">1104</a> 	 <font color="#2040a0">nameSpace</font>,
<a name="2_line1105">1105</a> 	 <font color="#2040a0">className</font>,
<a name="2_line1106">1106</a> 	 <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1107">1107</a> 
<a name="2_line1108">1108</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1109">1109</a>    
<a name="2_line1110">1110</a>    <font color="#2040a0">CIMEnumerateInstanceNamesResponseMessage</font> <font color="4444FF">*</font> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1111">1111</a>    <font color="#2040a0">try</font> 
<a name="2_line1112">1112</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1113">1113</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line1114">1114</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMEnumerateInstanceNamesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line1115">1115</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line1116">1116</a> 			     <font color="#2040a0">CIM_ENUMERATE_INSTANCE_NAMES_RESPONSE_MESSAGE</font>,
<a name="2_line1117">1117</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1118">1118</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1119">1119</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line1120">1120</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1121">1121</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1122">1122</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1123">1123</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1124">1124</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1125">1125</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line1126">1126</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1127">1127</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1128">1128</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1129">1129</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1130">1130</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1131">1131</a> 
<a name="2_line1132">1132</a>    <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObjectPath</font><font color="4444FF">&gt;</font> <font color="#2040a0">cimReferences</font><font color="4444FF">;</font>
<a name="2_line1133">1133</a> 
<a name="2_line1134">1134</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line1135">1135</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1136">1136</a>       <font color="#2040a0">cimReferences</font> <font color="4444FF">=</font> <font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">instanceNames</font><font color="4444FF">;</font>
<a name="2_line1137">1137</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1138">1138</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1139">1139</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1140">1140</a>    <strong>return</strong><font color="4444FF">(</font><font color="#2040a0">cimReferences</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1141">1141</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1142">1142</a> 
<a name="2_line1143">1143</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">enumerateInstanceNamesAsync</font><font color="4444FF">(</font>
<a name="2_line1144">1144</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1145">1145</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1146">1146</a>     <strong>const</strong> <font color="#2040a0">CIMName</font><font color="4444FF">&amp;</font> <font color="#2040a0">className</font>,
<a name="2_line1147">1147</a>     <font color="#2040a0">ObjectPathResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line1148">1148</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1149">1149</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1150">1150</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1151">1151</a> 
<a name="2_line1152">1152</a> <font color="#2040a0">CIMObjectPath</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">createInstance</font><font color="4444FF">(</font>
<a name="2_line1153">1153</a>    <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1154">1154</a>    <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1155">1155</a>    <strong>const</strong> <font color="#2040a0">CIMInstance</font><font color="4444FF">&amp;</font> <font color="#2040a0">newInstance</font><font color="4444FF">)</font>
<a name="2_line1156">1156</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1157">1157</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::createInstance()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1158">1158</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1159">1159</a> 
<a name="2_line1160">1160</a>    <font color="#2040a0">CIMCreateInstanceRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line1161">1161</a>       <strong>new</strong> <font color="#2040a0">CIMCreateInstanceRequestMessage</font><font color="4444FF">(</font>
<a name="2_line1162">1162</a> 	 <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line1163">1163</a> 	 <font color="#2040a0">nameSpace</font>,
<a name="2_line1164">1164</a> 	 <font color="#2040a0">newInstance</font>,
<a name="2_line1165">1165</a> 	 <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1166">1166</a>     
<a name="2_line1167">1167</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1168">1168</a> 
<a name="2_line1169">1169</a>    <font color="#2040a0">CIMCreateInstanceResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1170">1170</a>    <font color="#2040a0">try</font> 
<a name="2_line1171">1171</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1172">1172</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line1173">1173</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMCreateInstanceResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line1174">1174</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line1175">1175</a> 			     <font color="#2040a0">CIM_CREATE_INSTANCE_RESPONSE_MESSAGE</font>,
<a name="2_line1176">1176</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1177">1177</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1178">1178</a> 
<a name="2_line1179">1179</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line1180">1180</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1181">1181</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1182">1182</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1183">1183</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1184">1184</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1185">1185</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line1186">1186</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1187">1187</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1188">1188</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1189">1189</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1190">1190</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1191">1191</a> 
<a name="2_line1192">1192</a>    <font color="#2040a0">CIMObjectPath</font> <font color="#2040a0">cimReference</font><font color="4444FF">;</font>
<a name="2_line1193">1193</a> 
<a name="2_line1194">1194</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line1195">1195</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1196">1196</a>       <font color="#2040a0">cimReference</font> <font color="4444FF">=</font> <font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">instanceName</font><font color="4444FF">;</font>
<a name="2_line1197">1197</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1198">1198</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1199">1199</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1200">1200</a>    <strong>return</strong><font color="4444FF">(</font><font color="#2040a0">cimReference</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1201">1201</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1202">1202</a> 
<a name="2_line1203">1203</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">createInstanceAsync</font><font color="4444FF">(</font>
<a name="2_line1204">1204</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1205">1205</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1206">1206</a>     <strong>const</strong> <font color="#2040a0">CIMInstance</font><font color="4444FF">&amp;</font> <font color="#2040a0">newInstance</font>,
<a name="2_line1207">1207</a>     <font color="#2040a0">ResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line1208">1208</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1209">1209</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1210">1210</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1211">1211</a> 
<a name="2_line1212">1212</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">modifyInstance</font><font color="4444FF">(</font>
<a name="2_line1213">1213</a>    <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1214">1214</a>    <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1215">1215</a>    <strong>const</strong> <font color="#2040a0">CIMInstance</font><font color="4444FF">&amp;</font> <font color="#2040a0">modifiedInstance</font>,
<a name="2_line1216">1216</a>    <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="2_line1217">1217</a>    <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font><font color="4444FF">)</font>
<a name="2_line1218">1218</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1219">1219</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::modifyInstance()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1220">1220</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1221">1221</a>    
<a name="2_line1222">1222</a>    <font color="#2040a0">CIMModifyInstanceRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line1223">1223</a>       <strong>new</strong> <font color="#2040a0">CIMModifyInstanceRequestMessage</font><font color="4444FF">(</font>
<a name="2_line1224">1224</a> 	 <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line1225">1225</a> 	 <font color="#2040a0">nameSpace</font>,
<a name="2_line1226">1226</a> 	 <font color="#2040a0">CIMInstance</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line1227">1227</a> 	 <font color="#2040a0">includeQualifiers</font>,
<a name="2_line1228">1228</a> 	 <font color="#2040a0">propertyList</font>,
<a name="2_line1229">1229</a> 	 <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1230">1230</a>     
<a name="2_line1231">1231</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1232">1232</a> 
<a name="2_line1233">1233</a>    <font color="#2040a0">CIMModifyInstanceResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1234">1234</a>     
<a name="2_line1235">1235</a>    <font color="#2040a0">try</font> 
<a name="2_line1236">1236</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1237">1237</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line1238">1238</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMModifyInstanceResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line1239">1239</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line1240">1240</a> 			     <font color="#2040a0">CIM_MODIFY_INSTANCE_RESPONSE_MESSAGE</font>,
<a name="2_line1241">1241</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1242">1242</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1243">1243</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line1244">1244</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1245">1245</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1246">1246</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1247">1247</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1248">1248</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1249">1249</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line1250">1250</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1251">1251</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1252">1252</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1253">1253</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1254">1254</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1255">1255</a> 
<a name="2_line1256">1256</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">=</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line1257">1257</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1258">1258</a>       <strong>throw</strong> <font color="#2040a0">PEGASUS_CIM_EXCEPTION</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_FAILED</font>, <font color="#2040a0">String</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">EMPTY</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1259">1259</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1260">1260</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1261">1261</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1262">1262</a>    <strong>return</strong><font color="4444FF">;</font>
<a name="2_line1263">1263</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1264">1264</a> 
<a name="2_line1265">1265</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">modifyInstanceAsync</font><font color="4444FF">(</font>
<a name="2_line1266">1266</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1267">1267</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1268">1268</a>     <strong>const</strong> <font color="#2040a0">CIMInstance</font><font color="4444FF">&amp;</font> <font color="#2040a0">modifiedInstance</font>,
<a name="2_line1269">1269</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="2_line1270">1270</a>     <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font>,
<a name="2_line1271">1271</a>     <font color="#2040a0">ResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line1272">1272</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1273">1273</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1274">1274</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1275">1275</a> 
<a name="2_line1276">1276</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">deleteInstance</font><font color="4444FF">(</font>
<a name="2_line1277">1277</a>    <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1278">1278</a>    <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1279">1279</a>    <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font><font color="4444FF">)</font>
<a name="2_line1280">1280</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1281">1281</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::deleteInstance()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1282">1282</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1283">1283</a> 
<a name="2_line1284">1284</a>    <font color="#2040a0">CIMDeleteInstanceRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line1285">1285</a>       <strong>new</strong> <font color="#2040a0">CIMDeleteInstanceRequestMessage</font><font color="4444FF">(</font>
<a name="2_line1286">1286</a> 	 <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line1287">1287</a> 	 <font color="#2040a0">nameSpace</font>,
<a name="2_line1288">1288</a> 	 <font color="#2040a0">instanceName</font>,
<a name="2_line1289">1289</a> 	 <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1290">1290</a>     
<a name="2_line1291">1291</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1292">1292</a>    <font color="#2040a0">CIMDeleteInstanceResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1293">1293</a>     
<a name="2_line1294">1294</a>    <font color="#2040a0">try</font> 
<a name="2_line1295">1295</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1296">1296</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line1297">1297</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMDeleteInstanceResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line1298">1298</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line1299">1299</a> 			     <font color="#2040a0">CIM_DELETE_INSTANCE_RESPONSE_MESSAGE</font>,
<a name="2_line1300">1300</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1301">1301</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1302">1302</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line1303">1303</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1304">1304</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1305">1305</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1306">1306</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1307">1307</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1308">1308</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line1309">1309</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1310">1310</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1311">1311</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1312">1312</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1313">1313</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1314">1314</a> 
<a name="2_line1315">1315</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">=</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line1316">1316</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1317">1317</a>       <strong>throw</strong> <font color="#2040a0">PEGASUS_CIM_EXCEPTION</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_FAILED</font>, <font color="#2040a0">String</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">EMPTY</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1318">1318</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1319">1319</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1320">1320</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1321">1321</a>    <strong>return</strong><font color="4444FF">;</font>
<a name="2_line1322">1322</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1323">1323</a> 
<a name="2_line1324">1324</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">deleteInstanceAsync</font><font color="4444FF">(</font>
<a name="2_line1325">1325</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1326">1326</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1327">1327</a>     <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font>,
<a name="2_line1328">1328</a>     <font color="#2040a0">ResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line1329">1329</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1330">1330</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1331">1331</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1332">1332</a> 
<a name="2_line1333">1333</a> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObject</font><font color="4444FF">&gt;</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">execQuery</font><font color="4444FF">(</font>
<a name="2_line1334">1334</a>    <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1335">1335</a>    <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1336">1336</a>    <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">queryLanguage</font>,
<a name="2_line1337">1337</a>    <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">query</font><font color="4444FF">)</font>
<a name="2_line1338">1338</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1339">1339</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::exeQuery()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1340">1340</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1341">1341</a>    
<a name="2_line1342">1342</a>    <font color="#2040a0">CIMExecQueryRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line1343">1343</a>       <strong>new</strong> <font color="#2040a0">CIMExecQueryRequestMessage</font><font color="4444FF">(</font>
<a name="2_line1344">1344</a> 	 <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line1345">1345</a> 	 <font color="#2040a0">nameSpace</font>,
<a name="2_line1346">1346</a> 	 <font color="#2040a0">queryLanguage</font>,
<a name="2_line1347">1347</a> 	 <font color="#2040a0">query</font>,
<a name="2_line1348">1348</a> 	 <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1349">1349</a>    
<a name="2_line1350">1350</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1351">1351</a>    
<a name="2_line1352">1352</a>    <font color="#2040a0">CIMExecQueryResponseMessage</font> <font color="4444FF">*</font> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1353">1353</a>    
<a name="2_line1354">1354</a>    <font color="#2040a0">try</font> 
<a name="2_line1355">1355</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1356">1356</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line1357">1357</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMExecQueryResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line1358">1358</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line1359">1359</a> 			     <font color="#2040a0">CIM_EXEC_QUERY_RESPONSE_MESSAGE</font>,
<a name="2_line1360">1360</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1361">1361</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1362">1362</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line1363">1363</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1364">1364</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1365">1365</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1366">1366</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1367">1367</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1368">1368</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line1369">1369</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1370">1370</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1371">1371</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1372">1372</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1373">1373</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1374">1374</a> 
<a name="2_line1375">1375</a>    <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObject</font><font color="4444FF">&gt;</font> <font color="#2040a0">cimObjects</font><font color="4444FF">;</font>
<a name="2_line1376">1376</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line1377">1377</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1378">1378</a>       <font color="#2040a0">cimObjects</font> <font color="4444FF">=</font> <font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">cimObjects</font><font color="4444FF">;</font>
<a name="2_line1379">1379</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1380">1380</a> 
<a name="2_line1381">1381</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1382">1382</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1383">1383</a>    <strong>return</strong><font color="4444FF">(</font><font color="#2040a0">cimObjects</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1384">1384</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1385">1385</a> 
<a name="2_line1386">1386</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">execQueryAsync</font><font color="4444FF">(</font>
<a name="2_line1387">1387</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1388">1388</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1389">1389</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">queryLanguage</font>,
<a name="2_line1390">1390</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">query</font>,
<a name="2_line1391">1391</a>     <font color="#2040a0">ObjectResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line1392">1392</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1393">1393</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1394">1394</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1395">1395</a> 
<a name="2_line1396">1396</a> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObject</font><font color="4444FF">&gt;</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">associators</font><font color="4444FF">(</font>
<a name="2_line1397">1397</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1398">1398</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1399">1399</a>     <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="2_line1400">1400</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">assocClass</font>,
<a name="2_line1401">1401</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="2_line1402">1402</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font>,
<a name="2_line1403">1403</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultRole</font>,
<a name="2_line1404">1404</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="2_line1405">1405</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line1406">1406</a>     <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font><font color="4444FF">)</font>
<a name="2_line1407">1407</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1408">1408</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::associators()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1409">1409</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1410">1410</a> 
<a name="2_line1411">1411</a>     <font color="#2040a0">CIMAssociatorsRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line1412">1412</a>         <strong>new</strong> <font color="#2040a0">CIMAssociatorsRequestMessage</font><font color="4444FF">(</font>
<a name="2_line1413">1413</a>         <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line1414">1414</a>         <font color="#2040a0">nameSpace</font>,
<a name="2_line1415">1415</a>         <font color="#2040a0">objectName</font>,
<a name="2_line1416">1416</a>         <font color="#2040a0">assocClass</font>,
<a name="2_line1417">1417</a>         <font color="#2040a0">resultClass</font>,
<a name="2_line1418">1418</a>         <font color="#2040a0">role</font>,
<a name="2_line1419">1419</a>         <font color="#2040a0">resultRole</font>,
<a name="2_line1420">1420</a>         <font color="#2040a0">includeQualifiers</font>,
<a name="2_line1421">1421</a>         <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line1422">1422</a>         <font color="#2040a0">propertyList</font>,
<a name="2_line1423">1423</a> 	<font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1424">1424</a>     
<a name="2_line1425">1425</a>     <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1426">1426</a>     <font color="#2040a0">CIMAssociatorsResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1427">1427</a>     
<a name="2_line1428">1428</a>    <font color="#2040a0">try</font> 
<a name="2_line1429">1429</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1430">1430</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line1431">1431</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMAssociatorsResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line1432">1432</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line1433">1433</a> 			     <font color="#2040a0">CIM_ASSOCIATORS_RESPONSE_MESSAGE</font>,
<a name="2_line1434">1434</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1435">1435</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1436">1436</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line1437">1437</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1438">1438</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1439">1439</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1440">1440</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1441">1441</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1442">1442</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line1443">1443</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1444">1444</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1445">1445</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1446">1446</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1447">1447</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1448">1448</a> 
<a name="2_line1449">1449</a>     <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObject</font><font color="4444FF">&gt;</font> <font color="#2040a0">cimObjects</font><font color="4444FF">;</font>
<a name="2_line1450">1450</a> 
<a name="2_line1451">1451</a>     <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line1452">1452</a>     <font color="4444FF"><strong>{</strong></font>
<a name="2_line1453">1453</a>        <font color="#2040a0">cimObjects</font> <font color="4444FF">=</font> <font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">cimObjects</font><font color="4444FF">;</font>
<a name="2_line1454">1454</a>     <font color="4444FF"><strong>}</strong></font>
<a name="2_line1455">1455</a> 
<a name="2_line1456">1456</a>     <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1457">1457</a>     <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1458">1458</a>     <strong>return</strong><font color="4444FF">(</font><font color="#2040a0">cimObjects</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1459">1459</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1460">1460</a> 
<a name="2_line1461">1461</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">associatorsAsync</font><font color="4444FF">(</font>
<a name="2_line1462">1462</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1463">1463</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1464">1464</a>     <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="2_line1465">1465</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">assocClass</font>,
<a name="2_line1466">1466</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="2_line1467">1467</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font>,
<a name="2_line1468">1468</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultRole</font>,
<a name="2_line1469">1469</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="2_line1470">1470</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line1471">1471</a>     <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font>,
<a name="2_line1472">1472</a>     <font color="#2040a0">ObjectResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line1473">1473</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1474">1474</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1475">1475</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1476">1476</a> 
<a name="2_line1477">1477</a> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObjectPath</font><font color="4444FF">&gt;</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">associatorNames</font><font color="4444FF">(</font>
<a name="2_line1478">1478</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1479">1479</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1480">1480</a>     <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="2_line1481">1481</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">assocClass</font>,
<a name="2_line1482">1482</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="2_line1483">1483</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font>,
<a name="2_line1484">1484</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultRole</font><font color="4444FF">)</font>
<a name="2_line1485">1485</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1486">1486</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::associatorNames()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1487">1487</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1488">1488</a> 
<a name="2_line1489">1489</a>    <font color="#2040a0">CIMAssociatorNamesRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line1490">1490</a>       <strong>new</strong> <font color="#2040a0">CIMAssociatorNamesRequestMessage</font><font color="4444FF">(</font>
<a name="2_line1491">1491</a> 	 <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line1492">1492</a> 	 <font color="#2040a0">nameSpace</font>,
<a name="2_line1493">1493</a> 	 <font color="#2040a0">objectName</font>,
<a name="2_line1494">1494</a> 	 <font color="#2040a0">assocClass</font>,
<a name="2_line1495">1495</a> 	 <font color="#2040a0">resultClass</font>,
<a name="2_line1496">1496</a> 	 <font color="#2040a0">role</font>,
<a name="2_line1497">1497</a> 	 <font color="#2040a0">resultRole</font>,
<a name="2_line1498">1498</a> 	 <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1499">1499</a>     
<a name="2_line1500">1500</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1501">1501</a> 
<a name="2_line1502">1502</a>    <font color="#2040a0">CIMAssociatorNamesResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1503">1503</a>     
<a name="2_line1504">1504</a>    <font color="#2040a0">try</font> 
<a name="2_line1505">1505</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1506">1506</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line1507">1507</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMAssociatorNamesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line1508">1508</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line1509">1509</a> 			     <font color="#2040a0">CIM_ASSOCIATOR_NAMES_RESPONSE_MESSAGE</font>,
<a name="2_line1510">1510</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1511">1511</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1512">1512</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line1513">1513</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1514">1514</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1515">1515</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1516">1516</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1517">1517</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1518">1518</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line1519">1519</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1520">1520</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1521">1521</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1522">1522</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1523">1523</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1524">1524</a> 
<a name="2_line1525">1525</a>    <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObjectPath</font><font color="4444FF">&gt;</font> <font color="#2040a0">cimObjectPaths</font><font color="4444FF">;</font>
<a name="2_line1526">1526</a> 
<a name="2_line1527">1527</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line1528">1528</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1529">1529</a>       <font color="#2040a0">cimObjectPaths</font> <font color="4444FF">=</font> <font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">objectNames</font><font color="4444FF">;</font>
<a name="2_line1530">1530</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1531">1531</a> 
<a name="2_line1532">1532</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1533">1533</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1534">1534</a>    <strong>return</strong><font color="4444FF">(</font><font color="#2040a0">cimObjectPaths</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1535">1535</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1536">1536</a> 
<a name="2_line1537">1537</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">associatorNamesAsync</font><font color="4444FF">(</font>
<a name="2_line1538">1538</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1539">1539</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1540">1540</a>     <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="2_line1541">1541</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">assocClass</font>,
<a name="2_line1542">1542</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="2_line1543">1543</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font>,
<a name="2_line1544">1544</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultRole</font>,
<a name="2_line1545">1545</a>     <font color="#2040a0">ObjectPathResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line1546">1546</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1547">1547</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1548">1548</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1549">1549</a> 
<a name="2_line1550">1550</a> 
<a name="2_line1551">1551</a> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObject</font><font color="4444FF">&gt;</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">references</font><font color="4444FF">(</font>
<a name="2_line1552">1552</a>    <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1553">1553</a>    <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1554">1554</a>    <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="2_line1555">1555</a>    <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="2_line1556">1556</a>    <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font>,
<a name="2_line1557">1557</a>    <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="2_line1558">1558</a>    <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line1559">1559</a>    <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font><font color="4444FF">)</font>
<a name="2_line1560">1560</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1561">1561</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::references()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1562">1562</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1563">1563</a> 
<a name="2_line1564">1564</a>    <font color="#2040a0">CIMReferencesRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line1565">1565</a>       <strong>new</strong> <font color="#2040a0">CIMReferencesRequestMessage</font><font color="4444FF">(</font>
<a name="2_line1566">1566</a> 	 <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line1567">1567</a> 	 <font color="#2040a0">nameSpace</font>,
<a name="2_line1568">1568</a> 	 <font color="#2040a0">objectName</font>,
<a name="2_line1569">1569</a> 	 <font color="#2040a0">resultClass</font>,
<a name="2_line1570">1570</a> 	 <font color="#2040a0">role</font>,
<a name="2_line1571">1571</a> 	 <font color="#2040a0">includeQualifiers</font>,
<a name="2_line1572">1572</a> 	 <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line1573">1573</a> 	 <font color="#2040a0">propertyList</font>,
<a name="2_line1574">1574</a> 	 <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1575">1575</a>     
<a name="2_line1576">1576</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1577">1577</a> 
<a name="2_line1578">1578</a>    <font color="#2040a0">CIMReferencesResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1579">1579</a>     
<a name="2_line1580">1580</a>    <font color="#2040a0">try</font> 
<a name="2_line1581">1581</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1582">1582</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line1583">1583</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMReferencesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line1584">1584</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line1585">1585</a> 			     <font color="#2040a0">CIM_REFERENCES_RESPONSE_MESSAGE</font>,
<a name="2_line1586">1586</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1587">1587</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1588">1588</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line1589">1589</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1590">1590</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1591">1591</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1592">1592</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1593">1593</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1594">1594</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line1595">1595</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1596">1596</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1597">1597</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1598">1598</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1599">1599</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1600">1600</a> 
<a name="2_line1601">1601</a>    <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObject</font><font color="4444FF">&gt;</font> <font color="#2040a0">cimObjects</font><font color="4444FF">;</font>
<a name="2_line1602">1602</a> 
<a name="2_line1603">1603</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line1604">1604</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1605">1605</a>       <font color="#2040a0">cimObjects</font> <font color="4444FF">=</font> <font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">cimObjects</font><font color="4444FF">;</font>
<a name="2_line1606">1606</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1607">1607</a> 
<a name="2_line1608">1608</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1609">1609</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1610">1610</a>    <strong>return</strong><font color="4444FF">(</font><font color="#2040a0">cimObjects</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1611">1611</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1612">1612</a> 
<a name="2_line1613">1613</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">referencesAsync</font><font color="4444FF">(</font>
<a name="2_line1614">1614</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1615">1615</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1616">1616</a>     <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="2_line1617">1617</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="2_line1618">1618</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font>,
<a name="2_line1619">1619</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeQualifiers</font>,
<a name="2_line1620">1620</a>     <font color="#2040a0">Boolean</font> <font color="#2040a0">includeClassOrigin</font>,
<a name="2_line1621">1621</a>     <strong>const</strong> <font color="#2040a0">CIMPropertyList</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyList</font>,
<a name="2_line1622">1622</a>     <font color="#2040a0">ObjectResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line1623">1623</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1624">1624</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1625">1625</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1626">1626</a> 
<a name="2_line1627">1627</a> <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObjectPath</font><font color="4444FF">&gt;</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">referenceNames</font><font color="4444FF">(</font>
<a name="2_line1628">1628</a>    <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1629">1629</a>    <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1630">1630</a>    <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="2_line1631">1631</a>    <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="2_line1632">1632</a>    <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font><font color="4444FF">)</font>
<a name="2_line1633">1633</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1634">1634</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::()referenceNames&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1635">1635</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1636">1636</a> 
<a name="2_line1637">1637</a>    <font color="#2040a0">CIMReferenceNamesRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line1638">1638</a>       <strong>new</strong> <font color="#2040a0">CIMReferenceNamesRequestMessage</font><font color="4444FF">(</font>
<a name="2_line1639">1639</a> 	 <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line1640">1640</a> 	 <font color="#2040a0">nameSpace</font>,
<a name="2_line1641">1641</a> 	 <font color="#2040a0">objectName</font>,
<a name="2_line1642">1642</a> 	 <font color="#2040a0">resultClass</font>,
<a name="2_line1643">1643</a> 	 <font color="#2040a0">role</font>,
<a name="2_line1644">1644</a> 	 <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1645">1645</a>     
<a name="2_line1646">1646</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1647">1647</a> 
<a name="2_line1648">1648</a> 
<a name="2_line1649">1649</a>    <font color="#2040a0">CIMReferenceNamesResponseMessage</font> <font color="4444FF">*</font> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1650">1650</a>     
<a name="2_line1651">1651</a>    <font color="#2040a0">try</font> 
<a name="2_line1652">1652</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1653">1653</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line1654">1654</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMReferenceNamesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line1655">1655</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line1656">1656</a> 			     <font color="#2040a0">CIM_REFERENCE_NAMES_RESPONSE_MESSAGE</font>,
<a name="2_line1657">1657</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1658">1658</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1659">1659</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line1660">1660</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1661">1661</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1662">1662</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1663">1663</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1664">1664</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1665">1665</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line1666">1666</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1667">1667</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1668">1668</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1669">1669</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1670">1670</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1671">1671</a> 
<a name="2_line1672">1672</a> 
<a name="2_line1673">1673</a>    <font color="#2040a0">Array</font><font color="4444FF">&lt;</font><font color="#2040a0">CIMObjectPath</font><font color="4444FF">&gt;</font> <font color="#2040a0">cimObjectPaths</font><font color="4444FF">;</font>
<a name="2_line1674">1674</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line1675">1675</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1676">1676</a>       <font color="#2040a0">cimObjectPaths</font> <font color="4444FF">=</font> <font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">objectNames</font><font color="4444FF">;</font>
<a name="2_line1677">1677</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1678">1678</a> 
<a name="2_line1679">1679</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1680">1680</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1681">1681</a>    <strong>return</strong><font color="4444FF">(</font><font color="#2040a0">cimObjectPaths</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1682">1682</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1683">1683</a> 
<a name="2_line1684">1684</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">referenceNamesAsync</font><font color="4444FF">(</font>
<a name="2_line1685">1685</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1686">1686</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1687">1687</a>     <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">objectName</font>,
<a name="2_line1688">1688</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">resultClass</font>,
<a name="2_line1689">1689</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">role</font>,
<a name="2_line1690">1690</a>     <font color="#2040a0">ObjectPathResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line1691">1691</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1692">1692</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1693">1693</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1694">1694</a> 
<a name="2_line1695">1695</a> <font color="#2040a0">CIMValue</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getProperty</font><font color="4444FF">(</font>
<a name="2_line1696">1696</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1697">1697</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1698">1698</a>     <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font>,
<a name="2_line1699">1699</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyName</font><font color="4444FF">)</font>
<a name="2_line1700">1700</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1701">1701</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::getProperty()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1702">1702</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1703">1703</a> 
<a name="2_line1704">1704</a>     <font color="#2040a0">CIMGetPropertyRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line1705">1705</a>         <strong>new</strong> <font color="#2040a0">CIMGetPropertyRequestMessage</font><font color="4444FF">(</font>
<a name="2_line1706">1706</a>         <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line1707">1707</a>         <font color="#2040a0">nameSpace</font>,
<a name="2_line1708">1708</a>         <font color="#2040a0">instanceName</font>,
<a name="2_line1709">1709</a>         <font color="#2040a0">propertyName</font>,
<a name="2_line1710">1710</a> 	<font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1711">1711</a>     
<a name="2_line1712">1712</a>     <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1713">1713</a> 
<a name="2_line1714">1714</a>     <font color="#2040a0">CIMGetPropertyResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1715">1715</a>     
<a name="2_line1716">1716</a>     <font color="#2040a0">try</font> 
<a name="2_line1717">1717</a>     <font color="4444FF"><strong>{</strong></font>
<a name="2_line1718">1718</a>        <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line1719">1719</a> 	  <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMGetPropertyResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line1720">1720</a> 	     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line1721">1721</a> 			      <font color="#2040a0">CIM_GET_PROPERTY_RESPONSE_MESSAGE</font>,
<a name="2_line1722">1722</a> 			      <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1723">1723</a>     <font color="4444FF"><strong>}</strong></font>
<a name="2_line1724">1724</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line1725">1725</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1726">1726</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1727">1727</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1728">1728</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1729">1729</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1730">1730</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line1731">1731</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1732">1732</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1733">1733</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1734">1734</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1735">1735</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1736">1736</a> 
<a name="2_line1737">1737</a>     <font color="#2040a0">CIMValue</font> <font color="#2040a0">cimValue</font><font color="4444FF">;</font>
<a name="2_line1738">1738</a>     <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line1739">1739</a>     <font color="4444FF"><strong>{</strong></font>
<a name="2_line1740">1740</a>        <font color="#2040a0">cimValue</font> <font color="4444FF">=</font> <font color="#2040a0">response</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">value</font><font color="4444FF">;</font>
<a name="2_line1741">1741</a>     <font color="4444FF"><strong>}</strong></font>
<a name="2_line1742">1742</a> 
<a name="2_line1743">1743</a>     <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1744">1744</a>     <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1745">1745</a>     <strong>return</strong><font color="4444FF">(</font><font color="#2040a0">cimValue</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1746">1746</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1747">1747</a> 
<a name="2_line1748">1748</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getPropertyAsync</font><font color="4444FF">(</font>
<a name="2_line1749">1749</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1750">1750</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1751">1751</a>     <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font>,
<a name="2_line1752">1752</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyName</font>,
<a name="2_line1753">1753</a>     <font color="#2040a0">ValueResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line1754">1754</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1755">1755</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1756">1756</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1757">1757</a> 
<a name="2_line1758">1758</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">setProperty</font><font color="4444FF">(</font>
<a name="2_line1759">1759</a>    <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1760">1760</a>    <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1761">1761</a>    <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font>,
<a name="2_line1762">1762</a>    <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyName</font>,
<a name="2_line1763">1763</a>    <strong>const</strong> <font color="#2040a0">CIMValue</font><font color="4444FF">&amp;</font> <font color="#2040a0">newValue</font><font color="4444FF">)</font>
<a name="2_line1764">1764</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1765">1765</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#008000">&quot;CIMOMHandle::setProperty()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1766">1766</a>    <font color="#2040a0">cimom_handle_op_semaphore</font> <font color="#2040a0">opsem</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1767">1767</a> 
<a name="2_line1768">1768</a>    <font color="#2040a0">CIMSetPropertyRequestMessage</font> <font color="4444FF">*</font> <font color="#2040a0">request</font> <font color="4444FF">=</font>
<a name="2_line1769">1769</a>       <strong>new</strong> <font color="#2040a0">CIMSetPropertyRequestMessage</font><font color="4444FF">(</font>
<a name="2_line1770">1770</a> 	 <font color="#2040a0">XmlWriter</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">getNextMessageId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="2_line1771">1771</a> 	 <font color="#2040a0">nameSpace</font>,
<a name="2_line1772">1772</a> 	 <font color="#2040a0">instanceName</font>,
<a name="2_line1773">1773</a> 	 <font color="#2040a0">propertyName</font>,
<a name="2_line1774">1774</a> 	 <font color="#2040a0">newValue</font>,
<a name="2_line1775">1775</a> 	 <font color="#2040a0">QueueIdStack</font><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_qid</font><font color="4444FF">(</font><font color="4444FF">)</font>, <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1776">1776</a>     
<a name="2_line1777">1777</a>     
<a name="2_line1778">1778</a>    <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1779">1779</a> 
<a name="2_line1780">1780</a>    <font color="#2040a0">CIMSetPropertyResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1781">1781</a> 	  
<a name="2_line1782">1782</a>    <font color="#2040a0">try</font> 
<a name="2_line1783">1783</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1784">1784</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> 
<a name="2_line1785">1785</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">CIMSetPropertyResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font>
<a name="2_line1786">1786</a> 	    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">do_request</font><font color="4444FF">(</font><font color="#2040a0">request</font>, 
<a name="2_line1787">1787</a> 			     <font color="#2040a0">CIM_SET_PROPERTY_RESPONSE_MESSAGE</font>,
<a name="2_line1788">1788</a> 			     <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1789">1789</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1790">1790</a>    <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">Exception</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="2_line1791">1791</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1792">1792</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1793">1793</a> 		       <font color="#008000">&quot;Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1794">1794</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1795">1795</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1796">1796</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="2_line1797">1797</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1798">1798</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_CIMOM_HANDLE</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="2_line1799">1799</a> 		       <font color="#008000">&quot;Unexpected Exception caught in CIMOMHandle&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1800">1800</a>       <font color="#2040a0">response</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="2_line1801">1801</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1802">1802</a> 
<a name="2_line1803">1803</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">response</font> <font color="4444FF">=</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="2_line1804">1804</a>    <font color="4444FF"><strong>{</strong></font>
<a name="2_line1805">1805</a>       <strong>throw</strong> <font color="#2040a0">PEGASUS_CIM_EXCEPTION</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_FAILED</font>, <font color="#2040a0">String</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">EMPTY</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1806">1806</a>    <font color="4444FF"><strong>}</strong></font>
<a name="2_line1807">1807</a>    <strong>delete</strong> <font color="#2040a0">response</font><font color="4444FF">;</font>
<a name="2_line1808">1808</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1809">1809</a>    <strong>return</strong><font color="4444FF">;</font>
<a name="2_line1810">1810</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1811">1811</a> 
<a name="2_line1812">1812</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">setPropertyAsync</font><font color="4444FF">(</font>
<a name="2_line1813">1813</a>     <strong>const</strong> <font color="#2040a0">OperationContext</font> <font color="4444FF">&amp;</font> <font color="#2040a0">context</font>,
<a name="2_line1814">1814</a>     <strong>const</strong> <font color="#2040a0">CIMNamespaceName</font> <font color="4444FF">&amp;</font><font color="#2040a0">nameSpace</font>,
<a name="2_line1815">1815</a>     <strong>const</strong> <font color="#2040a0">CIMObjectPath</font><font color="4444FF">&amp;</font> <font color="#2040a0">instanceName</font>,
<a name="2_line1816">1816</a>     <strong>const</strong> <font color="#2040a0">String</font><font color="4444FF">&amp;</font> <font color="#2040a0">propertyName</font>,
<a name="2_line1817">1817</a>     <strong>const</strong> <font color="#2040a0">CIMValue</font><font color="4444FF">&amp;</font> <font color="#2040a0">newValue</font>,
<a name="2_line1818">1818</a>     <font color="#2040a0">ValueResponseHandler</font> <font color="4444FF">&amp;</font> <font color="#2040a0">handler</font><font color="4444FF">)</font>
<a name="2_line1819">1819</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1820">1820</a>     <strong>throw</strong> <font color="#2040a0">CIMException</font><font color="4444FF">(</font><font color="#2040a0">CIM_ERR_NOT_SUPPORTED</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1821">1821</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1822">1822</a> 
<a name="2_line1823">1823</a> 
<a name="2_line1824">1824</a> <font color="#444444">// CIMValue CIMOMHandle::invokeMethod(
</font>
<a name="2_line1825">1825</a> <font color="#444444">//     const OperationContext &amp; context,
</font>
<a name="2_line1826">1826</a> <font color="#444444">//     const CIMNamespaceName &amp;nameSpace,
</font>
<a name="2_line1827">1827</a> <font color="#444444">//     const CIMObjectPath&amp; instanceName,
</font>
<a name="2_line1828">1828</a> <font color="#444444">//     const String&amp; methodName,
</font>
<a name="2_line1829">1829</a> <font color="#444444">//     const Array&lt;CIMParamValue&gt;&amp; inParameters,
</font>
<a name="2_line1830">1830</a> <font color="#444444">//     Array&lt;CIMParamValue&gt;&amp; outParameters)
</font>
<a name="2_line1831">1831</a> <font color="#444444">// {
</font>
<a name="2_line1832">1832</a> <font color="#444444">//     cimom_handle_op_semaphore opsem(_rep);
</font>
<a name="2_line1833">1833</a> 
<a name="2_line1834">1834</a> <font color="#444444">//     {
</font>
<a name="2_line1835">1835</a> <font color="#444444">//        throw UninitializedObjectException();
</font>
<a name="2_line1836">1836</a> <font color="#444444">//     }
</font>
<a name="2_line1837">1837</a> 
<a name="2_line1838">1838</a> <font color="#444444">//     Message* request = new CIMInvokeMethodRequestMessage(
</font>
<a name="2_line1839">1839</a> <font color="#444444">//     XmlWriter::getNextMessageId(),
</font>
<a name="2_line1840">1840</a> <font color="#444444">//     nameSpace,
</font>
<a name="2_line1841">1841</a> <font color="#444444">//     instanceName,
</font>
<a name="2_line1842">1842</a> <font color="#444444">//     methodName,
</font>
<a name="2_line1843">1843</a> <font color="#444444">//     inParameters,
</font>
<a name="2_line1844">1844</a> <font color="#444444">//         QueueIdStack(_rep-&gt;_dispatcher_qid, _rep-&gt;_provider_manager_qid));
</font>
<a name="2_line1845">1845</a> 
<a name="2_line1846">1846</a> <font color="#444444">//     CIMInvokeMethodResponseMessage *reply =
</font>
<a name="2_line1847">1847</a> <font color="#444444">//        static_cast&lt;CIMInvokeMethodResponseMessage *&gt;(_rep-&gt;_controller_async(request));
</font>
<a name="2_line1848">1848</a> <font color="#444444">//     CIMValue value;
</font>
<a name="2_line1849">1849</a> 
<a name="2_line1850">1850</a> <font color="#444444">//     if(reply != 0 )
</font>
<a name="2_line1851">1851</a> <font color="#444444">//     {
</font>
<a name="2_line1852">1852</a> <font color="#444444">//        outParameters = reply-&gt;outParameters;
</font>
<a name="2_line1853">1853</a> <font color="#444444">//        value = reply-&gt;retValue;
</font>
<a name="2_line1854">1854</a> <font color="#444444">//     }
</font>
<a name="2_line1855">1855</a> <font color="#444444">//     delete request;
</font>
<a name="2_line1856">1856</a> <font color="#444444">//     delete reply;
</font>
<a name="2_line1857">1857</a> <font color="#444444">//     return value;
</font>
<a name="2_line1858">1858</a> <font color="#444444">// }
</font>
<a name="2_line1859">1859</a> 
<a name="2_line1860">1860</a> <font color="#444444">// void CIMOMHandle::invokeMethodAsync(
</font>
<a name="2_line1861">1861</a> <font color="#444444">//     const OperationContext &amp; context,
</font>
<a name="2_line1862">1862</a> <font color="#444444">//     const CIMNamespaceName &amp;nameSpace,
</font>
<a name="2_line1863">1863</a> <font color="#444444">//     const CIMObjectPath&amp; instanceName,
</font>
<a name="2_line1864">1864</a> <font color="#444444">//     const String&amp; methodName,
</font>
<a name="2_line1865">1865</a> <font color="#444444">//     const Array&lt;CIMParamValue&gt;&amp; inParameters,
</font>
<a name="2_line1866">1866</a> <font color="#444444">//     Array&lt;CIMParamValue&gt;&amp; outParameters,
</font>
<a name="2_line1867">1867</a> <font color="#444444">//     ValueResponseHandler &amp; handler)
</font>
<a name="2_line1868">1868</a> <font color="#444444">// {
</font>
<a name="2_line1869">1869</a> <font color="#444444">//     throw CIMException(CIM_ERR_NOT_SUPPORTED);
</font>
<a name="2_line1870">1870</a> <font color="#444444">// }
</font>
<a name="2_line1871">1871</a> 
<a name="2_line1872">1872</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">get_idle_timer</font><font color="4444FF">(</font><strong>struct</strong> <font color="#2040a0">timeval</font> <font color="4444FF">*</font><font color="#2040a0">tv</font><font color="4444FF">)</font>
<a name="2_line1873">1873</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1874">1874</a>    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_idle_timer</font><font color="4444FF">(</font><font color="#2040a0">tv</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1875">1875</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1876">1876</a> 
<a name="2_line1877">1877</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">update_idle_timer</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line1878">1878</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1879">1879</a>    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">update_idle_timer</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1880">1880</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1881">1881</a> 
<a name="2_line1882">1882</a> <font color="#2040a0">Uint32</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line1883">1883</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1884">1884</a>    <strong>return</strong> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_operation_timeout</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1885">1885</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1886">1886</a> 
<a name="2_line1887">1887</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">set_operation_timeout</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font> <font color="#2040a0">t</font><font color="4444FF">)</font>
<a name="2_line1888">1888</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1889">1889</a>    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">set_operation_timeout</font><font color="4444FF">(</font><font color="#2040a0">t</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1890">1890</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1891">1891</a> 
<a name="2_line1892">1892</a> <font color="#2040a0">Boolean</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">pending_operation</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line1893">1893</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1894">1894</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_pending_operation</font>.<font color="#2040a0">value</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font>
<a name="2_line1895">1895</a>       <strong>return</strong> <strong>true</strong><font color="4444FF">;</font>
<a name="2_line1896">1896</a>    <strong>return</strong> <strong>false</strong><font color="4444FF">;</font>
<a name="2_line1897">1897</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1898">1898</a> 
<a name="2_line1899">1899</a> <font color="#2040a0">Boolean</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">unload_ok</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line1900">1900</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1901">1901</a>    <strong>return</strong> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">unload_ok</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1902">1902</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1903">1903</a> 
<a name="2_line1904">1904</a> <font color="#2040a0">Uint32</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line1905">1905</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1906">1906</a>    <strong>return</strong> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_output_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1907">1907</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1908">1908</a> 
<a name="2_line1909">1909</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">set_output_qid</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font> <font color="#2040a0">q</font><font color="4444FF">)</font>
<a name="2_line1910">1910</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1911">1911</a>    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">set_output_qid</font><font color="4444FF">(</font><font color="#2040a0">q</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1912">1912</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1913">1913</a> 
<a name="2_line1914">1914</a> <font color="#2040a0">Uint32</font> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">get_return_qid</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line1915">1915</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1916">1916</a>    <strong>return</strong> <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_return_qid</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1917">1917</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1918">1918</a> 
<a name="2_line1919">1919</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">set_return_qid</font><font color="4444FF">(</font><font color="#2040a0">Uint32</font> <font color="#2040a0">q</font><font color="4444FF">)</font>
<a name="2_line1920">1920</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1921">1921</a>    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">set_return_qid</font><font color="4444FF">(</font><font color="#2040a0">q</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1922">1922</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1923">1923</a> 
<a name="2_line1924">1924</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">protect</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line1925">1925</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1926">1926</a>    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">protect</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1927">1927</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1928">1928</a> 
<a name="2_line1929">1929</a> <strong>void</strong> <font color="#2040a0">CIMOMHandle</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">unprotect</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="2_line1930">1930</a> <font color="4444FF"><strong>{</strong></font>
<a name="2_line1931">1931</a>    <font color="#2040a0">_rep</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">unprotect</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="2_line1932">1932</a> <font color="4444FF"><strong>}</strong></font>
<a name="2_line1933">1933</a> 
<a name="2_line1934">1934</a> 
<a name="2_line1935">1935</a> <font color="#2040a0">PEGASUS_NAMESPACE_END</font>
</pre><!-- code2html delete stop -->

      <h3>BinaryMessageHandler.h</h3>
      <!-- code2html add -lcc -n src/Pegasus/Server/BinaryMessageHandler.h
      --><!-- code2html delete start --><pre><a name="3_line1">  1</a> <font color="#444444">//%/////////////-*-c++-*-///////////////////////////////////////////////////////</font>
<a name="3_line2">  2</a> <font color="#444444">//</font>
<a name="3_line3">  3</a> <font color="#444444">// Copyright (c) 2000 - 2003 BMC Software, Hewlett-Packard Company, IBM,</font>
<a name="3_line4">  4</a> <font color="#444444">// The Open Group, Tivoli Systems</font>
<a name="3_line5">  5</a> <font color="#444444">//</font>
<a name="3_line6">  6</a> <font color="#444444">// Permission is hereby granted, free of charge, to any person obtaining a copy</font>
<a name="3_line7">  7</a> <font color="#444444">// of this software and associated documentation files (the &quot;Software&quot;), to</font>
<a name="3_line8">  8</a> <font color="#444444">// deal in the Software without restriction, including without limitation the</font>
<a name="3_line9">  9</a> <font color="#444444">// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or</font>
<a name="3_line10"> 10</a> <font color="#444444">// sell copies of the Software, and to permit persons to whom the Software is</font>
<a name="3_line11"> 11</a> <font color="#444444">// furnished to do so, subject to the following conditions:</font>
<a name="3_line12"> 12</a> <font color="#444444">// </font>
<a name="3_line13"> 13</a> <font color="#444444">// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN</font>
<a name="3_line14"> 14</a> <font color="#444444">// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED</font>
<a name="3_line15"> 15</a> <font color="#444444">// &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT</font>
<a name="3_line16"> 16</a> <font color="#444444">// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR</font>
<a name="3_line17"> 17</a> <font color="#444444">// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT</font>
<a name="3_line18"> 18</a> <font color="#444444">// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN</font>
<a name="3_line19"> 19</a> <font color="#444444">// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION</font>
<a name="3_line20"> 20</a> <font color="#444444">// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</font>
<a name="3_line21"> 21</a> <font color="#444444">//</font>
<a name="3_line22"> 22</a> <font color="#444444">//==============================================================================</font>
<a name="3_line23"> 23</a> <font color="#444444">//</font>
<a name="3_line24"> 24</a> <font color="#444444">// Author: Mike Day (mdday@us.ibm.com)</font>
<a name="3_line25"> 25</a> <font color="#444444">//</font>
<a name="3_line26"> 26</a> <font color="#444444">//%/////////////////////////////////////////////////////////////////////////////</font>
<a name="3_line27"> 27</a> <font color="0000ff"><strong>#ifndef Pegasus_BinaryMessageHandler_h</strong></font>
<a name="3_line28"> 28</a> <font color="0000ff"><strong>#define Pegasus_BinaryMessageHandler_h</strong></font>
<a name="3_line29"> 29</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Config.h&gt;</font></strong></font>
<a name="3_line30"> 30</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/AsyncOpNode.h&gt;</font></strong></font>
<a name="3_line31"> 31</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/DQueue.h&gt;</font></strong></font>
<a name="3_line32"> 32</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/MessageQueueService.h&gt;</font></strong></font>
<a name="3_line33"> 33</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Message.h&gt;</font></strong></font>
<a name="3_line34"> 34</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/CIMMessage.h&gt;</font></strong></font>
<a name="3_line35"> 35</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Tracer.h&gt;</font></strong></font>
<a name="3_line36"> 36</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/TraceComponents.h&gt;</font></strong></font>
<a name="3_line37"> 37</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/IPC.h&gt;</font></strong></font>
<a name="3_line38"> 38</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Thread.h&gt;</font></strong></font>
<a name="3_line39"> 39</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Constants.h&gt;</font></strong></font>
<a name="3_line40"> 40</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Server/Linkage.h&gt;</font></strong></font>
<a name="3_line41"> 41</a> 
<a name="3_line42"> 42</a> <font color="#2040a0">PEGASUS_NAMESPACE_BEGIN</font>
<a name="3_line43"> 43</a> 
<a name="3_line44"> 44</a> <font color="#444444"><i>/** This class provides an in-process binary client interface, 
<a name="3_line45"> 45</a>     both for requests and responses. 
<a name="3_line46"> 46</a> */</i></font>
<a name="3_line47"> 47</a> 
<a name="3_line48"> 48</a> <strong>class</strong> <font color="#2040a0">PEGASUS_SERVER_LINKAGE</font> <font color="#2040a0">BinaryMessageHandler</font> <font color="4444FF">:</font> <strong>public</strong> <font color="#2040a0">MessageQueueService</font>
<a name="3_line49"> 49</a> <font color="4444FF"><strong>{</strong></font>
<a name="3_line50"> 50</a>    <strong>public</strong><font color="4444FF">:</font> 
<a name="3_line51"> 51</a>       <strong>typedef</strong> <font color="#2040a0">MessageQueueService</font> <font color="#2040a0">Base</font><font color="4444FF">;</font>
<a name="3_line52"> 52</a> 
<a name="3_line53"> 53</a>       <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">(</font><font color="#2040a0">MessageQueueService</font> <font color="4444FF">*</font><font color="#2040a0">outputQueue</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line54"> 54</a>       ~<font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line55"> 55</a>       
<a name="3_line56"> 56</a>       <strong>virtual</strong> <font color="#2040a0">Boolean</font> <font color="#2040a0">messageOK</font><font color="4444FF">(</font><strong>const</strong> <font color="#2040a0">Message</font> <font color="4444FF">*</font> <font color="#2040a0">message</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line57"> 57</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">handleEnqueue</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line58"> 58</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">handleEnqueue</font><font color="4444FF">(</font><font color="#2040a0">Message</font> <font color="4444FF">*</font> <font color="#2040a0">message</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line59"> 59</a>       <strong>virtual</strong> <strong>void</strong> <font color="#2040a0">_handle_async_request</font><font color="4444FF">(</font><font color="#2040a0">AsyncRequest</font> <font color="4444FF">*</font> <font color="#2040a0">request</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line60"> 60</a>    <strong>protected</strong><font color="4444FF">:</font>
<a name="3_line61"> 61</a>       <strong>static</strong> <font color="#2040a0">PEGASUS_THREAD_RETURN</font> <font color="#2040a0">PEGASUS_THREAD_CDECL</font> <font color="#2040a0">handle_binary_message</font><font color="4444FF">(</font><strong>void</strong> <font color="4444FF">*</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line62"> 62</a> 
<a name="3_line63"> 63</a>       <font color="#444444">// **** Request Messages **** //</font>
<a name="3_line64"> 64</a>       
<a name="3_line65"> 65</a>       <strong>void</strong> <font color="#2040a0">handleCreateClassRequest</font><font color="4444FF">(</font>
<a name="3_line66"> 66</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>, 
<a name="3_line67"> 67</a> 	 <font color="#2040a0">CIMCreateClassRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line68"> 68</a>       
<a name="3_line69"> 69</a>       <strong>void</strong> <font color="#2040a0">handleGetClassRequest</font><font color="4444FF">(</font>
<a name="3_line70"> 70</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line71"> 71</a> 	 <font color="#2040a0">CIMGetClassRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line72"> 72</a>       
<a name="3_line73"> 73</a>       <strong>void</strong> <font color="#2040a0">handleModifyClassRequest</font><font color="4444FF">(</font>
<a name="3_line74"> 74</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>, 
<a name="3_line75"> 75</a> 	 <font color="#2040a0">CIMModifyClassRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line76"> 76</a>       
<a name="3_line77"> 77</a>       <strong>void</strong> <font color="#2040a0">handleEnumerateClassNamesRequest</font><font color="4444FF">(</font>
<a name="3_line78"> 78</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line79"> 79</a> 	 <font color="#2040a0">CIMEnumerateClassNamesRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line80"> 80</a> 
<a name="3_line81"> 81</a>       <strong>void</strong> <font color="#2040a0">handleEnumerateClassesRequest</font><font color="4444FF">(</font>
<a name="3_line82"> 82</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line83"> 83</a> 	 <font color="#2040a0">CIMEnumerateClassesRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line84"> 84</a> 
<a name="3_line85"> 85</a>       <strong>void</strong> <font color="#2040a0">handleDeleteClassRequest</font><font color="4444FF">(</font>
<a name="3_line86"> 86</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line87"> 87</a> 	 <font color="#2040a0">CIMDeleteClassRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line88"> 88</a> 
<a name="3_line89"> 89</a>       <strong>void</strong> <font color="#2040a0">handleCreateInstanceRequest</font><font color="4444FF">(</font>
<a name="3_line90"> 90</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line91"> 91</a> 	 <font color="#2040a0">CIMCreateInstanceRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line92"> 92</a> 
<a name="3_line93"> 93</a>       <strong>void</strong> <font color="#2040a0">handleGetInstanceRequest</font><font color="4444FF">(</font>
<a name="3_line94"> 94</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line95"> 95</a> 	 <font color="#2040a0">CIMGetInstanceRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line96"> 96</a> 
<a name="3_line97"> 97</a>       <strong>void</strong> <font color="#2040a0">handleModifyInstanceRequest</font><font color="4444FF">(</font>
<a name="3_line98"> 98</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line99"> 99</a> 	 <font color="#2040a0">CIMModifyInstanceRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line100">100</a> 
<a name="3_line101">101</a>       <strong>void</strong> <font color="#2040a0">handleEnumerateInstanceNamesRequest</font><font color="4444FF">(</font>
<a name="3_line102">102</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line103">103</a> 	 <font color="#2040a0">CIMEnumerateInstanceNamesRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line104">104</a> 
<a name="3_line105">105</a>       <strong>void</strong> <font color="#2040a0">handleEnumerateInstancesRequest</font><font color="4444FF">(</font>
<a name="3_line106">106</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line107">107</a> 	 <font color="#2040a0">CIMEnumerateInstancesRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line108">108</a> 
<a name="3_line109">109</a>       <strong>void</strong> <font color="#2040a0">handleDeleteInstanceRequest</font><font color="4444FF">(</font>
<a name="3_line110">110</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line111">111</a> 	 <font color="#2040a0">CIMDeleteInstanceRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line112">112</a>       
<a name="3_line113">113</a>       <strong>void</strong> <font color="#2040a0">handleSetQualifierRequest</font><font color="4444FF">(</font>
<a name="3_line114">114</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line115">115</a> 	 <font color="#2040a0">CIMSetQualifierRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line116">116</a>       
<a name="3_line117">117</a>       <strong>void</strong> <font color="#2040a0">handleGetQualifierRequest</font><font color="4444FF">(</font>
<a name="3_line118">118</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line119">119</a> 	 <font color="#2040a0">CIMGetQualifierRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line120">120</a>       
<a name="3_line121">121</a>       <strong>void</strong> <font color="#2040a0">handleEnumerateQualifiersRequest</font><font color="4444FF">(</font>
<a name="3_line122">122</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line123">123</a> 	 <font color="#2040a0">CIMEnumerateQualifiersRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line124">124</a>       
<a name="3_line125">125</a>       <strong>void</strong> <font color="#2040a0">handleDeleteQualifiersRequest</font><font color="4444FF">(</font>
<a name="3_line126">126</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line127">127</a> 	 <font color="#2040a0">CIMDeleteQualifierRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line128">128</a>       
<a name="3_line129">129</a>       <strong>void</strong> <font color="#2040a0">handleReferenceNamesRequest</font><font color="4444FF">(</font>
<a name="3_line130">130</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line131">131</a> 	 <font color="#2040a0">CIMReferenceNamesRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line132">132</a> 
<a name="3_line133">133</a>       <strong>void</strong> <font color="#2040a0">handleReferencesRequest</font><font color="4444FF">(</font>
<a name="3_line134">134</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line135">135</a> 	 <font color="#2040a0">CIMReferencesRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line136">136</a> 
<a name="3_line137">137</a>       <strong>void</strong> <font color="#2040a0">handleAssociatorNamesRequest</font><font color="4444FF">(</font>
<a name="3_line138">138</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line139">139</a> 	 <font color="#2040a0">CIMAssociatorNamesRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line140">140</a> 
<a name="3_line141">141</a>       <strong>void</strong> <font color="#2040a0">handleAssociatorsRequest</font><font color="4444FF">(</font>
<a name="3_line142">142</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line143">143</a> 	 <font color="#2040a0">CIMAssociatorsRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>  
<a name="3_line144">144</a> 
<a name="3_line145">145</a>       <strong>void</strong> <font color="#2040a0">handleGetPropertyRequest</font><font color="4444FF">(</font>
<a name="3_line146">146</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line147">147</a> 	 <font color="#2040a0">CIMGetPropertyRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line148">148</a> 
<a name="3_line149">149</a>       <strong>void</strong> <font color="#2040a0">handleSetPropertyRequest</font><font color="4444FF">(</font>
<a name="3_line150">150</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line151">151</a> 	 <font color="#2040a0">CIMSetPropertyRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>  
<a name="3_line152">152</a> 
<a name="3_line153">153</a>       <strong>void</strong> <font color="#2040a0">handleExecQueryRequest</font><font color="4444FF">(</font>
<a name="3_line154">154</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line155">155</a> 	 <font color="#2040a0">CIMExecQueryRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>  
<a name="3_line156">156</a> 
<a name="3_line157">157</a>       <strong>void</strong> <font color="#2040a0">handleInvokeMethodRequest</font><font color="4444FF">(</font>
<a name="3_line158">158</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line159">159</a> 	 <font color="#2040a0">CIMInvokeMethodRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line160">160</a>       
<a name="3_line161">161</a>       <font color="#444444">// **** Response Messages **** //</font>
<a name="3_line162">162</a>       
<a name="3_line163">163</a>       <strong>void</strong> <font color="#2040a0">handleCreateClassResponse</font><font color="4444FF">(</font>
<a name="3_line164">164</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line165">165</a> 	 <font color="#2040a0">CIMCreateClassResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line166">166</a> 
<a name="3_line167">167</a>       <strong>void</strong> <font color="#2040a0">handleGetClassResponse</font><font color="4444FF">(</font>
<a name="3_line168">168</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line169">169</a> 	 <font color="#2040a0">CIMGetClassResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line170">170</a> 
<a name="3_line171">171</a>       <strong>void</strong> <font color="#2040a0">handleModifyClassResponse</font><font color="4444FF">(</font>
<a name="3_line172">172</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line173">173</a> 	 <font color="#2040a0">CIMModifyClassResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line174">174</a>       
<a name="3_line175">175</a>       <strong>void</strong> <font color="#2040a0">handleEnumerateClassNamesResponse</font><font color="4444FF">(</font>
<a name="3_line176">176</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line177">177</a> 	 <font color="#2040a0">CIMEnumerateClassNamesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line178">178</a> 
<a name="3_line179">179</a>       <strong>void</strong> <font color="#2040a0">handleEnumerateClassesResponse</font><font color="4444FF">(</font>
<a name="3_line180">180</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line181">181</a> 	 <font color="#2040a0">CIMEnumerateClassesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line182">182</a> 
<a name="3_line183">183</a>       <strong>void</strong> <font color="#2040a0">handleDeleteClassResponse</font><font color="4444FF">(</font>
<a name="3_line184">184</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line185">185</a> 	 <font color="#2040a0">CIMDeleteClassResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line186">186</a> 
<a name="3_line187">187</a>       <strong>void</strong> <font color="#2040a0">handleCreateInstanceResponse</font><font color="4444FF">(</font>
<a name="3_line188">188</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line189">189</a> 	 <font color="#2040a0">CIMCreateInstanceResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line190">190</a> 
<a name="3_line191">191</a>       <strong>void</strong> <font color="#2040a0">handleGetInstanceResponse</font><font color="4444FF">(</font>
<a name="3_line192">192</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line193">193</a> 	 <font color="#2040a0">CIMGetInstanceResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line194">194</a> 
<a name="3_line195">195</a>       <strong>void</strong> <font color="#2040a0">handleModifyInstanceResponse</font><font color="4444FF">(</font>
<a name="3_line196">196</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line197">197</a> 	 <font color="#2040a0">CIMModifyInstanceResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line198">198</a> 
<a name="3_line199">199</a>       <strong>void</strong> <font color="#2040a0">handleEnumerateInstanceNamesResponse</font><font color="4444FF">(</font>
<a name="3_line200">200</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line201">201</a> 	 <font color="#2040a0">CIMEnumerateInstanceNamesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line202">202</a> 
<a name="3_line203">203</a>       <strong>void</strong> <font color="#2040a0">handleEnumerateInstancesResponse</font><font color="4444FF">(</font>
<a name="3_line204">204</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line205">205</a> 	 <font color="#2040a0">CIMEnumerateInstancesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line206">206</a> 
<a name="3_line207">207</a>       <strong>void</strong> <font color="#2040a0">handleDeleteInstanceResponse</font><font color="4444FF">(</font>
<a name="3_line208">208</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line209">209</a> 	 <font color="#2040a0">CIMDeleteInstanceResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line210">210</a> 
<a name="3_line211">211</a>       <strong>void</strong> <font color="#2040a0">handleGetPropertyResponse</font><font color="4444FF">(</font>
<a name="3_line212">212</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line213">213</a> 	 <font color="#2040a0">CIMGetPropertyResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line214">214</a> 
<a name="3_line215">215</a>       <strong>void</strong> <font color="#2040a0">handleSetPropertyResponse</font><font color="4444FF">(</font>
<a name="3_line216">216</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line217">217</a> 	 <font color="#2040a0">CIMSetPropertyResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line218">218</a>       
<a name="3_line219">219</a>       <strong>void</strong> <font color="#2040a0">handleSetQualifierResponse</font><font color="4444FF">(</font>
<a name="3_line220">220</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line221">221</a> 	 <font color="#2040a0">CIMSetQualifierResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line222">222</a> 
<a name="3_line223">223</a>       <strong>void</strong> <font color="#2040a0">handleGetQualifierResponse</font><font color="4444FF">(</font>
<a name="3_line224">224</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line225">225</a> 	 <font color="#2040a0">CIMGetQualifierResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line226">226</a>       
<a name="3_line227">227</a>       <strong>void</strong> <font color="#2040a0">handleEnumerateQualifiersResponse</font><font color="4444FF">(</font>
<a name="3_line228">228</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line229">229</a> 	 <font color="#2040a0">CIMEnumerateQualifiersResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line230">230</a> 
<a name="3_line231">231</a>       <strong>void</strong> <font color="#2040a0">handleDeleteQualifierResponse</font><font color="4444FF">(</font>
<a name="3_line232">232</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line233">233</a> 	 <font color="#2040a0">CIMDeleteQualifierResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line234">234</a> 
<a name="3_line235">235</a>       <strong>void</strong> <font color="#2040a0">handleReferenceNamesResponse</font><font color="4444FF">(</font>
<a name="3_line236">236</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line237">237</a> 	 <font color="#2040a0">CIMReferenceNamesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line238">238</a> 
<a name="3_line239">239</a>       <strong>void</strong> <font color="#2040a0">handleReferencesResponse</font><font color="4444FF">(</font>
<a name="3_line240">240</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line241">241</a> 	 <font color="#2040a0">CIMReferencesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="3_line242">242</a> 
<a name="3_line243">243</a>       <strong>void</strong> <font color="#2040a0">handleAssociatorNamesResponse</font><font color="4444FF">(</font>
<a name="3_line244">244</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line245">245</a> 	 <font color="#2040a0">CIMAssociatorNamesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>  
<a name="3_line246">246</a> 
<a name="3_line247">247</a>       <strong>void</strong> <font color="#2040a0">handleAssociatorsResponse</font><font color="4444FF">(</font>
<a name="3_line248">248</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line249">249</a> 	 <font color="#2040a0">CIMAssociatorsResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line250">250</a> 
<a name="3_line251">251</a>       <strong>void</strong> <font color="#2040a0">handleExecQueryResponse</font><font color="4444FF">(</font>
<a name="3_line252">252</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line253">253</a> 	 <font color="#2040a0">CIMExecQueryResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line254">254</a>       
<a name="3_line255">255</a>       <strong>void</strong> <font color="#2040a0">handleInvokeMethodResponse</font><font color="4444FF">(</font>
<a name="3_line256">256</a> 	 <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>,
<a name="3_line257">257</a> 	 <font color="#2040a0">CIMInvokeMethodResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line258">258</a>       
<a name="3_line259">259</a>    <strong>private</strong><font color="4444FF">:</font>
<a name="3_line260">260</a>       <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line261">261</a>       <font color="#2040a0">BinaryMessageHandler</font> <font color="4444FF">&amp;</font> <strong>operator</strong> <font color="4444FF">=</font> <font color="4444FF">(</font><strong>const</strong> <font color="#2040a0">BinaryMessageHandler</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font> <strong>const</strong><font color="4444FF">;</font>
<a name="3_line262">262</a>       <strong>void</strong> <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>, <font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line263">263</a>       <strong>void</strong> <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font>, <font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="3_line264">264</a>       
<a name="3_line265">265</a> 
<a name="3_line266">266</a>       <font color="#2040a0">MessageQueueService</font><font color="4444FF">*</font> <font color="#2040a0">_outputQueue</font><font color="4444FF">;</font>
<a name="3_line267">267</a> 
<a name="3_line268">268</a>       <font color="#444444">// Flag to indicate whether or not the CIMServer is shutting down.</font>
<a name="3_line269">269</a>       <font color="#2040a0">Boolean</font> <font color="#2040a0">_serverTerminating</font><font color="4444FF">;</font>
<a name="3_line270">270</a>       <font color="#2040a0">AsyncDQueue</font><font color="4444FF">&lt;</font><font color="#2040a0">AsyncOpNode</font><font color="4444FF">&gt;</font> <font color="#2040a0">_msg_q</font><font color="4444FF">;</font>
<a name="3_line271">271</a>       
<a name="3_line272">272</a> <font color="4444FF"><strong>}</strong></font><font color="4444FF">;</font>
<a name="3_line273">273</a> 
<a name="3_line274">274</a> 
<a name="3_line275">275</a> <font color="#2040a0">PEGASUS_NAMESPACE_END</font>
<a name="3_line276">276</a> 
<a name="3_line277">277</a> <font color="0000ff"><strong>#endif <font color="#444444">// Pegasus_BinaryMessageHandler_h</font></strong></font>
</pre><!-- code2html delete stop -->

      <h3>BinaryMessageHandler.cpp</h3>
      <!-- code2html add -lcc -n src/Pegasus/Server/BinaryMessageHandler.cpp
      --><!-- code2html delete start --><pre><a name="4_line1">   1</a> <font color="#444444">//%/////////////-*-c++-*-///////////////////////////////////////////////////////</font>
<a name="4_line2">   2</a> <font color="#444444">//</font>
<a name="4_line3">   3</a> <font color="#444444">// Copyright (c) 2000 - 2003 BMC Software, Hewlett-Packard Company, IBM,</font>
<a name="4_line4">   4</a> <font color="#444444">// The Open Group, Tivoli Systems</font>
<a name="4_line5">   5</a> <font color="#444444">//</font>
<a name="4_line6">   6</a> <font color="#444444">// Permission is hereby granted, free of charge, to any person obtaining a copy</font>
<a name="4_line7">   7</a> <font color="#444444">// of this software and associated documentation files (the &quot;Software&quot;), to</font>
<a name="4_line8">   8</a> <font color="#444444">// deal in the Software without restriction, including without limitation the</font>
<a name="4_line9">   9</a> <font color="#444444">// rights to use, copy, modify, merge, publish, distribute, sublicense, and/or</font>
<a name="4_line10">  10</a> <font color="#444444">// sell copies of the Software, and to permit persons to whom the Software is</font>
<a name="4_line11">  11</a> <font color="#444444">// furnished to do so, subject to the following conditions:</font>
<a name="4_line12">  12</a> <font color="#444444">// </font>
<a name="4_line13">  13</a> <font color="#444444">// THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN</font>
<a name="4_line14">  14</a> <font color="#444444">// ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED</font>
<a name="4_line15">  15</a> <font color="#444444">// &quot;AS IS&quot;, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT</font>
<a name="4_line16">  16</a> <font color="#444444">// LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR</font>
<a name="4_line17">  17</a> <font color="#444444">// PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT</font>
<a name="4_line18">  18</a> <font color="#444444">// HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN</font>
<a name="4_line19">  19</a> <font color="#444444">// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION</font>
<a name="4_line20">  20</a> <font color="#444444">// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</font>
<a name="4_line21">  21</a> <font color="#444444">//</font>
<a name="4_line22">  22</a> <font color="#444444">//==============================================================================</font>
<a name="4_line23">  23</a> <font color="#444444">//</font>
<a name="4_line24">  24</a> <font color="#444444">// Author: Mike Day (mdday@us.ibm.com)</font>
<a name="4_line25">  25</a> <font color="#444444">//</font>
<a name="4_line26">  26</a> <font color="#444444">//%/////////////////////////////////////////////////////////////////////////////</font>
<a name="4_line27">  27</a> 
<a name="4_line28">  28</a> <font color="0000ff"><strong>#include <font color="#008000">&quot;BinaryMessageHandler.h&quot;</font></strong></font>
<a name="4_line29">  29</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/IPC.h&gt;</font></strong></font>
<a name="4_line30">  30</a> <font color="0000ff"><strong>#include <font color="#008000">&lt;Pegasus/Common/Thread.h&gt;</font></strong></font>
<a name="4_line31">  31</a> 
<a name="4_line32">  32</a> <font color="#2040a0">PEGASUS_NAMESPACE_BEGIN</font>
<a name="4_line33">  33</a> 
<a name="4_line34">  34</a> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">(</font><font color="#2040a0">MessageQueueService</font> <font color="4444FF">*</font><font color="#2040a0">output_q</font><font color="4444FF">)</font>
<a name="4_line35">  35</a>    <font color="4444FF">:</font> <font color="#2040a0">Base</font><font color="4444FF">(</font><font color="#2040a0">PEGASUS_QUEUENAME_BINARY_HANDLER</font><font color="4444FF">)</font>,
<a name="4_line36">  36</a>      <font color="#2040a0">_outputQueue</font><font color="4444FF">(</font><font color="#2040a0">output_q</font><font color="4444FF">)</font>,
<a name="4_line37">  37</a>      <font color="#2040a0">_serverTerminating</font><font color="4444FF">(</font><strong>false</strong><font color="4444FF">)</font>,
<a name="4_line38">  38</a>      <font color="#2040a0">_msg_q</font><font color="4444FF">(</font><strong>true</strong>, <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="4_line39">  39</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line40">  40</a> 
<a name="4_line41">  41</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line42">  42</a> 
<a name="4_line43">  43</a> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font>~<font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="4_line44">  44</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line45">  45</a>    
<a name="4_line46">  46</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line47">  47</a> 
<a name="4_line48">  48</a> 
<a name="4_line49">  49</a> <font color="#2040a0">Boolean</font> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">messageOK</font><font color="4444FF">(</font><strong>const</strong> <font color="#2040a0">Message</font> <font color="4444FF">*</font> <font color="#2040a0">msg</font><font color="4444FF">)</font>
<a name="4_line50">  50</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line51">  51</a>    <strong>return</strong> <font color="#2040a0">Base</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">messageOK</font><font color="4444FF">(</font><font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line52">  52</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line53">  53</a> 
<a name="4_line54">  54</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleEnqueue</font><font color="4444FF">(</font><strong>void</strong><font color="4444FF">)</font>
<a name="4_line55">  55</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line56">  56</a>    <font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="#2040a0">msg</font> <font color="4444FF">=</font> <font color="#2040a0">dequeue</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line57">  57</a>    <font color="#2040a0">handleEnqueue</font><font color="4444FF">(</font><font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line58">  58</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line59">  59</a> 
<a name="4_line60">  60</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleEnqueue</font><font color="4444FF">(</font><font color="#2040a0">Message</font> <font color="4444FF">*</font> <font color="#2040a0">message</font><font color="4444FF">)</font>
<a name="4_line61">  61</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line62">  62</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line63">  63</a> 		    <font color="#008000">&quot;BinaryMessageHandler::_handleEnqueue(Message *)&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line64">  64</a>    <font color="#2040a0">PEGASUS_ASSERT</font><font color="4444FF">(</font><font color="#2040a0">message</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line65">  65</a> 
<a name="4_line66">  66</a>    <font color="#2040a0">AsyncRequest</font> <font color="4444FF">*</font> <font color="#2040a0">asyncRequest</font><font color="4444FF">;</font>
<a name="4_line67">  67</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font> <font color="#2040a0">op</font><font color="4444FF">;</font>
<a name="4_line68">  68</a>    
<a name="4_line69">  69</a>    <font color="#2040a0">message</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_async</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="4_line70">  70</a>    
<a name="4_line71">  71</a>    <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>, 
<a name="4_line72">  72</a> 		    <font color="#008000">&quot;Converting legacy message to AsyncLegacyOperationStart&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line73">  73</a>    <font color="#2040a0">op</font> <font color="4444FF">=</font> <strong>this</strong><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_op</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line74">  74</a>    <font color="#2040a0">asyncRequest</font> <font color="4444FF">=</font> <strong>new</strong> <font color="#2040a0">AsyncLegacyOperationStart</font><font color="4444FF">(</font>
<a name="4_line75">  75</a>       <font color="#2040a0">get_next_xid</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="4_line76">  76</a>       <font color="#2040a0">op</font>,
<a name="4_line77">  77</a>       <strong>this</strong><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">getQueueId</font><font color="4444FF">(</font><font color="4444FF">)</font>,
<a name="4_line78">  78</a>       <font color="#2040a0">message</font>,
<a name="4_line79">  79</a>       <strong>this</strong><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">getQueueId</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line80">  80</a>    <font color="#2040a0">op</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_flags</font> <font color="4444FF">|</font><font color="4444FF">=</font> <font color="#2040a0">ASYNC_OPFLAGS_FIRE_AND_FORGET</font><font color="4444FF">;</font>
<a name="4_line81">  81</a>    
<a name="4_line82">  82</a> 
<a name="4_line83">  83</a>    <font color="#2040a0">_handle_async_request</font><font color="4444FF">(</font><font color="#2040a0">asyncRequest</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line84">  84</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line85">  85</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line86">  86</a> 
<a name="4_line87">  87</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_handle_async_request</font><font color="4444FF">(</font><font color="#2040a0">AsyncRequest</font> <font color="4444FF">*</font> <font color="#2040a0">request</font><font color="4444FF">)</font>
<a name="4_line88">  88</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line89">  89</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line90">  90</a> 		    <font color="#008000">&quot;BinaryMessageHandler::_handle_async_request&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line91">  91</a> 
<a name="4_line92">  92</a>    <font color="#2040a0">PEGASUS_ASSERT</font><font color="4444FF">(</font><font color="#2040a0">request</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font> <font color="4444FF">&amp;</font><font color="4444FF">&amp;</font> <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">op</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font> <font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line93">  93</a> 
<a name="4_line94">  94</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">getType</font><font color="4444FF">(</font><font color="4444FF">)</font> <font color="4444FF">=</font><font color="4444FF">=</font> <font color="#2040a0">async_messages</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">ASYNC_LEGACY_OP_START</font> <font color="4444FF">|</font><font color="4444FF">|</font> 
<a name="4_line95">  95</a>       <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">getType</font><font color="4444FF">(</font><font color="4444FF">)</font> <font color="4444FF">=</font><font color="4444FF">=</font> <font color="#2040a0">async_messages</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">ASYNC_LEGACY_OP_RESULT</font><font color="4444FF">)</font>
<a name="4_line96">  96</a>    <font color="4444FF"><strong>{</strong></font>        
<a name="4_line97">  97</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="4_line98">  98</a> 		       <font color="#008000">&quot;Processing ASYNC_LEGACY_OP_* Message.&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line99">  99</a>       <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">op</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">processing</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line100"> 100</a>       <font color="#2040a0">try</font>
<a name="4_line101"> 101</a>       <font color="4444FF"><strong>{</strong></font>
<a name="4_line102"> 102</a> 	 <font color="#2040a0">_msg_q</font>.<font color="#2040a0">insert_last</font><font color="4444FF">(</font><font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">op</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line103"> 103</a>       <font color="4444FF"><strong>}</strong></font>
<a name="4_line104"> 104</a>       <strong>catch</strong><font color="4444FF">(</font><font color="#2040a0">ListFull</font> <font color="4444FF">&amp;</font> <font color="4444FF">)</font>
<a name="4_line105"> 105</a>       <font color="4444FF"><strong>{</strong></font>
<a name="4_line106"> 106</a> 	 <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="4_line107"> 107</a> 			  <font color="#008000">&quot;Internal DQueue Full.&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line108"> 108</a> 	 <font color="#2040a0">Base</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_handle_async_request</font><font color="4444FF">(</font><font color="#2040a0">request</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line109"> 109</a> 	 <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line110"> 110</a> 	 <strong>return</strong><font color="4444FF">;</font>
<a name="4_line111"> 111</a>       <font color="4444FF"><strong>}</strong></font>
<a name="4_line112"> 112</a>        
<a name="4_line113"> 113</a>       <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="4_line114"> 114</a>       <font color="4444FF"><strong>{</strong></font>
<a name="4_line115"> 115</a> 	 <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="4_line116"> 116</a> 			  <font color="#008000">&quot;Internal DQueue Error.&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line117"> 117</a> 	 <font color="#2040a0">Base</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_handle_async_request</font><font color="4444FF">(</font><font color="#2040a0">request</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line118"> 118</a> 	 <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line119"> 119</a> 	 <strong>return</strong><font color="4444FF">;</font>
<a name="4_line120"> 120</a>       <font color="4444FF"><strong>}</strong></font>
<a name="4_line121"> 121</a>        
<a name="4_line122"> 122</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="4_line123"> 123</a> 		       <font color="#008000">&quot;Allocating pooled thread to handle binary message.&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line124"> 124</a>       <font color="#2040a0">_thread_pool</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">allocate_and_awaken</font><font color="4444FF">(</font>
<a name="4_line125"> 125</a> 	 <font color="4444FF">(</font><strong>void</strong> <font color="4444FF">*</font><font color="4444FF">)</font><strong>this</strong>, <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handle_binary_message</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line126"> 126</a>    <font color="4444FF"><strong>}</strong></font>
<a name="4_line127"> 127</a>    <strong>else</strong> <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">getType</font><font color="4444FF">(</font><font color="4444FF">)</font> <font color="4444FF">=</font><font color="4444FF">=</font> <font color="#2040a0">async_messages</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">CIMSERVICE_STOP</font><font color="4444FF">)</font>
<a name="4_line128"> 128</a>    <font color="4444FF"><strong>{</strong></font>
<a name="4_line129"> 129</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="4_line130"> 130</a> 		       <font color="#008000">&quot;Handling CIMServer Stop Message&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line131"> 131</a>       <font color="#2040a0">_serverTerminating</font> <font color="4444FF">=</font> <strong>true</strong><font color="4444FF">;</font>
<a name="4_line132"> 132</a>       <font color="#2040a0">Base</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_handle_async_request</font><font color="4444FF">(</font><font color="#2040a0">request</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line133"> 133</a>    <font color="4444FF"><strong>}</strong></font>
<a name="4_line134"> 134</a>    <strong>else</strong>
<a name="4_line135"> 135</a>    <font color="4444FF"><strong>{</strong></font>
<a name="4_line136"> 136</a>       <font color="#444444">// pass all other operations to the default handler</font>
<a name="4_line137"> 137</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="4_line138"> 138</a> 		       <font color="#008000">&quot;Passing message to parent.&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line139"> 139</a> 
<a name="4_line140"> 140</a>       <font color="#2040a0">PEGASUS_STD</font><font color="4444FF">(</font><font color="#2040a0">cout</font><font color="4444FF">)</font> <font color="4444FF">&lt;</font><font color="4444FF">&lt;</font> <font color="#008000">&quot;Unexpected Message: type &quot;</font> <font color="4444FF">&lt;</font><font color="4444FF">&lt;</font> <font color="#2040a0">request</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">getType</font><font color="4444FF">(</font><font color="4444FF">)</font> <font color="4444FF">&lt;</font><font color="4444FF">&lt;</font> <font color="#2040a0">PEGASUS_STD</font><font color="4444FF">(</font><font color="#2040a0">endl</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line141"> 141</a> 
<a name="4_line142"> 142</a>       <font color="#2040a0">Base</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_handle_async_request</font><font color="4444FF">(</font><font color="#2040a0">request</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line143"> 143</a>    <font color="4444FF"><strong>}</strong></font>
<a name="4_line144"> 144</a> 
<a name="4_line145"> 145</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line146"> 146</a> 
<a name="4_line147"> 147</a>    <strong>return</strong><font color="4444FF">;</font>
<a name="4_line148"> 148</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line149"> 149</a> 
<a name="4_line150"> 150</a> <font color="#2040a0">PEGASUS_THREAD_RETURN</font> <font color="#2040a0">PEGASUS_THREAD_CDECL</font> 
<a name="4_line151"> 151</a> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handle_binary_message</font><font color="4444FF">(</font><strong>void</strong> <font color="4444FF">*</font><font color="#2040a0">parm</font><font color="4444FF">)</font>
<a name="4_line152"> 152</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line153"> 153</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line154"> 154</a> 		    <font color="#008000">&quot;BinaryMessageHandler::_handle_async_request&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line155"> 155</a>    
<a name="4_line156"> 156</a>    <font color="#2040a0">BinaryMessageHandler</font> <font color="4444FF">*</font><font color="#2040a0">myself</font> <font color="4444FF">=</font> 
<a name="4_line157"> 157</a>       <strong>reinterpret_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">BinaryMessageHandler</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font><font color="#2040a0">parm</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line158"> 158</a>    
<a name="4_line159"> 159</a>    <font color="#2040a0">PEGASUS_ASSERT</font><font color="4444FF">(</font><font color="#2040a0">myself</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line160"> 160</a>    
<a name="4_line161"> 161</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font><font color="4444FF">;</font>
<a name="4_line162"> 162</a>    <font color="#2040a0">try</font>
<a name="4_line163"> 163</a>    <font color="4444FF"><strong>{</strong></font>
<a name="4_line164"> 164</a>       <font color="#2040a0">op</font> <font color="4444FF">=</font> <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_msg_q</font>.<font color="#2040a0">remove_first</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line165"> 165</a>    <font color="4444FF"><strong>}</strong></font>
<a name="4_line166"> 166</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="4_line167"> 167</a>    <font color="4444FF"><strong>{</strong></font>
<a name="4_line168"> 168</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="4_line169"> 169</a> 		       <font color="#008000">&quot;Internal DQueue Error.&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line170"> 170</a>       <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line171"> 171</a>       <strong>return</strong><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line172"> 172</a>    <font color="4444FF"><strong>}</strong></font>
<a name="4_line173"> 173</a>    <font color="#2040a0">Uint32</font> <font color="#2040a0">msg_type</font><font color="4444FF">;</font>
<a name="4_line174"> 174</a>    
<a name="4_line175"> 175</a>    <font color="#2040a0">PEGASUS_ASSERT</font><font color="4444FF">(</font><font color="#2040a0">op</font> <font color="4444FF">!</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line176"> 176</a> 
<a name="4_line177"> 177</a>    <font color="#444444">// we only receive ASYNC_LEGACY_OP_START and</font>
<a name="4_line178"> 178</a>    <font color="#444444">// ASYNC_LEGACY_OP_RESULT messages </font>
<a name="4_line179"> 179</a>    
<a name="4_line180"> 180</a>    <font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="#2040a0">legacy</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="4_line181"> 181</a>    <font color="#2040a0">AsyncMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="4_line182"> 182</a>    
<a name="4_line183"> 183</a>    <font color="#444444">// if there is a response, dispatch the response</font>
<a name="4_line184"> 184</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">op</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_response</font>.<font color="#2040a0">count</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font>
<a name="4_line185"> 185</a>    <font color="4444FF"><strong>{</strong></font>
<a name="4_line186"> 186</a>       <font color="#2040a0">msg</font> <font color="4444FF">=</font> <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">AsyncMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font><font color="#2040a0">op</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_response</font>.<font color="#2040a0">next</font><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line187"> 187</a>       <font color="#2040a0">legacy</font> <font color="4444FF">=</font>  
<a name="4_line188"> 188</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">AsyncLegacyOperationResult</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font><font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_result</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line189"> 189</a>    <font color="4444FF"><strong>}</strong></font>
<a name="4_line190"> 190</a>    <strong>else</strong> 
<a name="4_line191"> 191</a>    <font color="4444FF"><strong>{</strong></font>
<a name="4_line192"> 192</a>       <font color="#444444">// there is no response so there has to be a request</font>
<a name="4_line193"> 193</a>       <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">op</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_request</font>.<font color="#2040a0">count</font><font color="4444FF">(</font><font color="4444FF">)</font> <font color="4444FF">=</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="4_line194"> 194</a>       <font color="4444FF"><strong>{</strong></font>
<a name="4_line195"> 195</a> 	 <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="4_line196"> 196</a> 			  <font color="#008000">&quot;Received OpNode with no messages.&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line197"> 197</a> 	 <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line198"> 198</a> 	 <strong>return</strong><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line199"> 199</a>       <font color="4444FF"><strong>}</strong></font>
<a name="4_line200"> 200</a>       <font color="#444444">// dispatch the request</font>
<a name="4_line201"> 201</a>       <font color="#2040a0">msg</font> <font color="4444FF">=</font> <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">AsyncMessage</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font><font color="#2040a0">op</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_request</font>.<font color="#2040a0">next</font><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line202"> 202</a>       <font color="#2040a0">legacy</font> <font color="4444FF">=</font>  
<a name="4_line203"> 203</a> 	 <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">AsyncLegacyOperationStart</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font><font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_action</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font> 
<a name="4_line204"> 204</a>    <font color="4444FF"><strong>}</strong></font>
<a name="4_line205"> 205</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">msg</font> <font color="4444FF">&amp;</font><font color="4444FF">&amp;</font> <font color="#2040a0">legacy</font><font color="4444FF">)</font>
<a name="4_line206"> 206</a>    <font color="4444FF"><strong>{</strong></font>
<a name="4_line207"> 207</a>       <font color="#2040a0">legacy</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_async</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="4_line208"> 208</a>       
<a name="4_line209"> 209</a>       <strong>switch</strong><font color="4444FF">(</font><font color="#2040a0">legacy</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">getType</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font>
<a name="4_line210"> 210</a>       <font color="4444FF"><strong>{</strong></font>
<a name="4_line211"> 211</a> 
<a name="4_line212"> 212</a> 	 <strong>case</strong> <font color="#2040a0">CIM_CREATE_CLASS_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line213"> 213</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleCreateClassRequest</font><font color="4444FF">(</font>
<a name="4_line214"> 214</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMCreateClassRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line215"> 215</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line216"> 216</a> 	 <strong>case</strong> <font color="#2040a0">CIM_CREATE_INSTANCE_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line217"> 217</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleCreateInstanceRequest</font><font color="4444FF">(</font>
<a name="4_line218"> 218</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMCreateInstanceRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line219"> 219</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line220"> 220</a> 	 <strong>case</strong> <font color="#2040a0">CIM_MODIFY_CLASS_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line221"> 221</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleModifyClassRequest</font><font color="4444FF">(</font>
<a name="4_line222"> 222</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMModifyClassRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line223"> 223</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line224"> 224</a> 	 <strong>case</strong> <font color="#2040a0">CIM_MODIFY_INSTANCE_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line225"> 225</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleModifyInstanceRequest</font><font color="4444FF">(</font>
<a name="4_line226"> 226</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMModifyInstanceRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line227"> 227</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line228"> 228</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENUMERATE_CLASSES_REQUEST_MESSAGE</font><font color="4444FF">:</font> <font color="#444444">//10</font>
<a name="4_line229"> 229</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleEnumerateClassesRequest</font><font color="4444FF">(</font>
<a name="4_line230"> 230</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMEnumerateClassesRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line231"> 231</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line232"> 232</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENUMERATE_CLASS_NAMES_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line233"> 233</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleEnumerateClassNamesRequest</font><font color="4444FF">(</font>
<a name="4_line234"> 234</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMEnumerateClassNamesRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line235"> 235</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line236"> 236</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENUMERATE_INSTANCES_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line237"> 237</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleEnumerateInstancesRequest</font><font color="4444FF">(</font>
<a name="4_line238"> 238</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMEnumerateInstancesRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line239"> 239</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line240"> 240</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENUMERATE_INSTANCE_NAMES_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line241"> 241</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleEnumerateInstanceNamesRequest</font><font color="4444FF">(</font>
<a name="4_line242"> 242</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMEnumerateInstanceNamesRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line243"> 243</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line244"> 244</a> 	 <strong>case</strong> <font color="#2040a0">CIM_EXEC_QUERY_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line245"> 245</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleExecQueryRequest</font><font color="4444FF">(</font>
<a name="4_line246"> 246</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMExecQueryRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line247"> 247</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line248"> 248</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ASSOCIATORS_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line249"> 249</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleAssociatorsRequest</font><font color="4444FF">(</font>
<a name="4_line250"> 250</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMAssociatorsRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line251"> 251</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line252"> 252</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ASSOCIATOR_NAMES_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line253"> 253</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleAssociatorNamesRequest</font><font color="4444FF">(</font>
<a name="4_line254"> 254</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMAssociatorNamesRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line255"> 255</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line256"> 256</a> 	 <strong>case</strong> <font color="#2040a0">CIM_REFERENCES_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line257"> 257</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleReferencesRequest</font><font color="4444FF">(</font>
<a name="4_line258"> 258</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMReferencesRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line259"> 259</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line260"> 260</a> 	 <strong>case</strong> <font color="#2040a0">CIM_REFERENCE_NAMES_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line261"> 261</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleReferenceNamesRequest</font><font color="4444FF">(</font>
<a name="4_line262"> 262</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMReferenceNamesRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line263"> 263</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line264"> 264</a> 	 <strong>case</strong> <font color="#2040a0">CIM_GET_PROPERTY_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line265"> 265</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleGetPropertyRequest</font><font color="4444FF">(</font>
<a name="4_line266"> 266</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMGetPropertyRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line267"> 267</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line268"> 268</a> 	 <strong>case</strong> <font color="#2040a0">CIM_SET_PROPERTY_REQUEST_MESSAGE</font><font color="4444FF">:</font> <font color="#444444">//20</font>
<a name="4_line269"> 269</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleSetPropertyRequest</font><font color="4444FF">(</font>
<a name="4_line270"> 270</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMSetPropertyRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line271"> 271</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line272"> 272</a> 	 <strong>case</strong> <font color="#2040a0">CIM_GET_QUALIFIER_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line273"> 273</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleGetQualifierRequest</font><font color="4444FF">(</font>
<a name="4_line274"> 274</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMGetQualifierRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line275"> 275</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line276"> 276</a> 	 <strong>case</strong> <font color="#2040a0">CIM_SET_QUALIFIER_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line277"> 277</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleSetQualifierRequest</font><font color="4444FF">(</font>
<a name="4_line278"> 278</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMSetQualifierRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line279"> 279</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line280"> 280</a> 	 <strong>case</strong> <font color="#2040a0">CIM_DELETE_QUALIFIER_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line281"> 281</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleDeleteQualifiersRequest</font><font color="4444FF">(</font>
<a name="4_line282"> 282</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMDeleteQualifierRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line283"> 283</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line284"> 284</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENUMERATE_QUALIFIERS_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line285"> 285</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleEnumerateQualifiersRequest</font><font color="4444FF">(</font>
<a name="4_line286"> 286</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMEnumerateQualifiersRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line287"> 287</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line288"> 288</a> 	 <strong>case</strong> <font color="#2040a0">CIM_INVOKE_METHOD_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line289"> 289</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleInvokeMethodRequest</font><font color="4444FF">(</font>
<a name="4_line290"> 290</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMInvokeMethodRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line291"> 291</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line292"> 292</a> 	    <font color="#444444">//**** response messages ****//</font>
<a name="4_line293"> 293</a>          <strong>case</strong> <font color="#2040a0">CIM_GET_CLASS_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line294"> 294</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleGetClassResponse</font><font color="4444FF">(</font>
<a name="4_line295"> 295</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMGetClassResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line296"> 296</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line297"> 297</a> 	 <strong>case</strong> <font color="#2040a0">CIM_GET_INSTANCE_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line298"> 298</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleGetInstanceResponse</font><font color="4444FF">(</font>
<a name="4_line299"> 299</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMGetInstanceResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line300"> 300</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line301"> 301</a> 	 <strong>case</strong> <font color="#2040a0">CIM_DELETE_CLASS_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line302"> 302</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleDeleteClassResponse</font><font color="4444FF">(</font>
<a name="4_line303"> 303</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMDeleteClassResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line304"> 304</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line305"> 305</a> 	 <strong>case</strong> <font color="#2040a0">CIM_DELETE_INSTANCE_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line306"> 306</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleDeleteInstanceResponse</font><font color="4444FF">(</font>
<a name="4_line307"> 307</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMDeleteInstanceResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line308"> 308</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line309"> 309</a> 	 <strong>case</strong> <font color="#2040a0">CIM_CREATE_CLASS_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line310"> 310</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleCreateClassResponse</font><font color="4444FF">(</font>
<a name="4_line311"> 311</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMCreateClassResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line312"> 312</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line313"> 313</a> 	 <strong>case</strong> <font color="#2040a0">CIM_CREATE_INSTANCE_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line314"> 314</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleCreateInstanceResponse</font><font color="4444FF">(</font>
<a name="4_line315"> 315</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMCreateInstanceResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line316"> 316</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line317"> 317</a> 	 <strong>case</strong> <font color="#2040a0">CIM_MODIFY_CLASS_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line318"> 318</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleModifyClassResponse</font><font color="4444FF">(</font>
<a name="4_line319"> 319</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMModifyClassResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line320"> 320</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line321"> 321</a> 	 <strong>case</strong> <font color="#2040a0">CIM_MODIFY_INSTANCE_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line322"> 322</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleModifyInstanceResponse</font><font color="4444FF">(</font>
<a name="4_line323"> 323</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMModifyInstanceResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line324"> 324</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line325"> 325</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENUMERATE_CLASSES_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line326"> 326</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleEnumerateClassesResponse</font><font color="4444FF">(</font>
<a name="4_line327"> 327</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMEnumerateClassesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line328"> 328</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line329"> 329</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENUMERATE_CLASS_NAMES_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line330"> 330</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleEnumerateClassNamesResponse</font><font color="4444FF">(</font>
<a name="4_line331"> 331</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMEnumerateClassNamesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line332"> 332</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line333"> 333</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENUMERATE_INSTANCES_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line334"> 334</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleEnumerateInstancesResponse</font><font color="4444FF">(</font>
<a name="4_line335"> 335</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMEnumerateInstancesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line336"> 336</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line337"> 337</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENUMERATE_INSTANCE_NAMES_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line338"> 338</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleEnumerateInstanceNamesResponse</font><font color="4444FF">(</font>
<a name="4_line339"> 339</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMEnumerateInstanceNamesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line340"> 340</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line341"> 341</a> 	 <strong>case</strong> <font color="#2040a0">CIM_EXEC_QUERY_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line342"> 342</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleExecQueryResponse</font><font color="4444FF">(</font>
<a name="4_line343"> 343</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMExecQueryResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line344"> 344</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line345"> 345</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ASSOCIATORS_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line346"> 346</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleAssociatorsResponse</font><font color="4444FF">(</font>
<a name="4_line347"> 347</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMAssociatorsResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line348"> 348</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line349"> 349</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ASSOCIATOR_NAMES_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line350"> 350</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleAssociatorNamesResponse</font><font color="4444FF">(</font>
<a name="4_line351"> 351</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMAssociatorNamesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line352"> 352</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line353"> 353</a> 	 <strong>case</strong> <font color="#2040a0">CIM_REFERENCES_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line354"> 354</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleReferencesResponse</font><font color="4444FF">(</font>
<a name="4_line355"> 355</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMReferencesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line356"> 356</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line357"> 357</a> 	 <strong>case</strong> <font color="#2040a0">CIM_REFERENCE_NAMES_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line358"> 358</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleReferenceNamesResponse</font><font color="4444FF">(</font>
<a name="4_line359"> 359</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMReferenceNamesResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line360"> 360</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line361"> 361</a> 	 <strong>case</strong> <font color="#2040a0">CIM_GET_PROPERTY_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line362"> 362</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleGetPropertyResponse</font><font color="4444FF">(</font>
<a name="4_line363"> 363</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMGetPropertyResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line364"> 364</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line365"> 365</a> 	 <strong>case</strong> <font color="#2040a0">CIM_SET_PROPERTY_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line366"> 366</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleSetPropertyResponse</font><font color="4444FF">(</font>
<a name="4_line367"> 367</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMSetPropertyResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line368"> 368</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line369"> 369</a> 	 <strong>case</strong> <font color="#2040a0">CIM_GET_QUALIFIER_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line370"> 370</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleGetQualifierResponse</font><font color="4444FF">(</font>
<a name="4_line371"> 371</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMGetQualifierResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line372"> 372</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line373"> 373</a> 	 <strong>case</strong> <font color="#2040a0">CIM_SET_QUALIFIER_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line374"> 374</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleSetQualifierResponse</font><font color="4444FF">(</font>
<a name="4_line375"> 375</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMSetQualifierResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line376"> 376</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line377"> 377</a> 	 <strong>case</strong> <font color="#2040a0">CIM_DELETE_QUALIFIER_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line378"> 378</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleDeleteQualifierResponse</font><font color="4444FF">(</font>
<a name="4_line379"> 379</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMDeleteQualifierResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line380"> 380</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line381"> 381</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENUMERATE_QUALIFIERS_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line382"> 382</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleEnumerateQualifiersResponse</font><font color="4444FF">(</font>
<a name="4_line383"> 383</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMEnumerateQualifiersResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line384"> 384</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line385"> 385</a> 	 <strong>case</strong> <font color="#2040a0">CIM_INVOKE_METHOD_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line386"> 386</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">handleInvokeMethodResponse</font><font color="4444FF">(</font>
<a name="4_line387"> 387</a> 	       <font color="#2040a0">op</font>, <font color="4444FF">(</font><font color="#2040a0">CIMInvokeMethodResponseMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line388"> 388</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line389"> 389</a> 
<a name="4_line390"> 390</a> 	    <font color="#444444">// unexpected requests </font>
<a name="4_line391"> 391</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENABLE_INDICATION_SUBSCRIPTION_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line392"> 392</a> 	 <strong>case</strong> <font color="#2040a0">CIM_MODIFY_INDICATION_SUBSCRIPTION_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line393"> 393</a> 	 <strong>case</strong> <font color="#2040a0">CIM_DISABLE_INDICATION_SUBSCRIPTION_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line394"> 394</a> 	 <strong>case</strong> <font color="#2040a0">CIM_PROCESS_INDICATION_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line395"> 395</a> 	 <strong>case</strong> <font color="#2040a0">CIM_HANDLE_INDICATION_REQUEST_MESSAGE</font><font color="4444FF">:</font> <font color="#444444">// 30</font>
<a name="4_line396"> 396</a> 	 <strong>case</strong> <font color="#2040a0">CIM_NOTIFY_PROVIDER_REGISTRATION_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line397"> 397</a> 	 <strong>case</strong> <font color="#2040a0">CIM_NOTIFY_PROVIDER_TERMINATION_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line398"> 398</a> 
<a name="4_line399"> 399</a> 	    <font color="#444444">// new</font>
<a name="4_line400"> 400</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENABLE_INDICATIONS_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line401"> 401</a> 	 <strong>case</strong> <font color="#2040a0">CIM_DISABLE_INDICATIONS_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line402"> 402</a> 	 <strong>case</strong> <font color="#2040a0">CIM_CREATE_SUBSCRIPTION_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line403"> 403</a> 	 <strong>case</strong> <font color="#2040a0">CIM_MODIFY_SUBSCRIPTION_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line404"> 404</a> 	 <strong>case</strong> <font color="#2040a0">CIM_DELETE_SUBSCRIPTION_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line405"> 405</a> 
<a name="4_line406"> 406</a> 	    <font color="#444444">// new</font>
<a name="4_line407"> 407</a> 	 <strong>case</strong> <font color="#2040a0">CIM_DISABLE_MODULE_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line408"> 408</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENABLE_MODULE_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line409"> 409</a> 
<a name="4_line410"> 410</a> 	 <strong>case</strong> <font color="#2040a0">CIM_STOP_ALL_PROVIDERS_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line411"> 411</a> 	 <strong>case</strong> <font color="#2040a0">CIM_GET_CLASS_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line412"> 412</a> 	 <strong>case</strong> <font color="#2040a0">CIM_GET_INSTANCE_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line413"> 413</a> 	 <strong>case</strong> <font color="#2040a0">CIM_EXPORT_INDICATION_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line414"> 414</a> 	 <strong>case</strong> <font color="#2040a0">CIM_DELETE_CLASS_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line415"> 415</a> 	 <strong>case</strong> <font color="#2040a0">CIM_DELETE_INSTANCE_REQUEST_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line416"> 416</a> 	    <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="4_line417"> 417</a> 			     <font color="#008000">&quot;Received Unexpected legacy request message.&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line418"> 418</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line419"> 419</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line420"> 420</a> 	    
<a name="4_line421"> 421</a> 	    <font color="#444444">// unexpected replies</font>
<a name="4_line422"> 422</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENABLE_INDICATION_SUBSCRIPTION_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line423"> 423</a> 	 <strong>case</strong> <font color="#2040a0">CIM_MODIFY_INDICATION_SUBSCRIPTION_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line424"> 424</a> 	 <strong>case</strong> <font color="#2040a0">CIM_DISABLE_INDICATION_SUBSCRIPTION_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line425"> 425</a> 	 <strong>case</strong> <font color="#2040a0">CIM_PROCESS_INDICATION_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line426"> 426</a> 	 <strong>case</strong> <font color="#2040a0">CIM_NOTIFY_PROVIDER_REGISTRATION_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line427"> 427</a> 	 <strong>case</strong> <font color="#2040a0">CIM_NOTIFY_PROVIDER_TERMINATION_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line428"> 428</a> 	 <strong>case</strong> <font color="#2040a0">CIM_HANDLE_INDICATION_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line429"> 429</a> 	    <font color="#444444">// new</font>
<a name="4_line430"> 430</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENABLE_INDICATIONS_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line431"> 431</a> 	 <strong>case</strong> <font color="#2040a0">CIM_DISABLE_INDICATIONS_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line432"> 432</a> 	 <strong>case</strong> <font color="#2040a0">CIM_CREATE_SUBSCRIPTION_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line433"> 433</a> 	 <strong>case</strong> <font color="#2040a0">CIM_MODIFY_SUBSCRIPTION_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line434"> 434</a> 	 <strong>case</strong> <font color="#2040a0">CIM_DELETE_SUBSCRIPTION_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line435"> 435</a> 	    <font color="#444444">// new</font>
<a name="4_line436"> 436</a> 	 <strong>case</strong> <font color="#2040a0">CIM_DISABLE_MODULE_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line437"> 437</a> 	 <strong>case</strong> <font color="#2040a0">CIM_ENABLE_MODULE_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line438"> 438</a> 	 <strong>case</strong> <font color="#2040a0">CIM_STOP_ALL_PROVIDERS_RESPONSE_MESSAGE</font><font color="4444FF">:</font>
<a name="4_line439"> 439</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line440"> 440</a> 	 <strong>default</strong><font color="4444FF">:</font>
<a name="4_line441"> 441</a> 	 <strong>case</strong> <font color="#2040a0">CIM_EXPORT_INDICATION_RESPONSE_MESSAGE</font><font color="4444FF">:</font> <font color="#444444">// 42</font>
<a name="4_line442"> 442</a> 
<a name="4_line443"> 443</a> 	    <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="4_line444"> 444</a> 			     <font color="#008000">&quot;Received Unexpected legacy response message.&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line445"> 445</a> 	    <font color="#2040a0">myself</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">legacy</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line446"> 446</a> 	    <strong>break</strong><font color="4444FF">;</font>
<a name="4_line447"> 447</a>       <font color="4444FF"><strong>}</strong></font>
<a name="4_line448"> 448</a>    <font color="4444FF"><strong>}</strong></font>
<a name="4_line449"> 449</a>    <strong>else</strong> 
<a name="4_line450"> 450</a>    <font color="4444FF"><strong>{</strong></font>
<a name="4_line451"> 451</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="4_line452"> 452</a> 		       <font color="#008000">&quot;Damaged or uninitialized AsyncOpNode recieved.&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line453"> 453</a>    <font color="4444FF"><strong>}</strong></font>
<a name="4_line454"> 454</a> 
<a name="4_line455"> 455</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line456"> 456</a>    <strong>return</strong><font color="4444FF">(</font><font color="#FF0000">0</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line457"> 457</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line458"> 458</a> 
<a name="4_line459"> 459</a> <font color="#444444">// requests always go to the output queue </font>
<a name="4_line460"> 460</a> <strong>void</strong> 
<a name="4_line461"> 461</a> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>, <font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> 
<a name="4_line462"> 462</a>    <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line463"> 463</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line464"> 464</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line465"> 465</a> 		    <font color="#008000">&quot;BinaryMessageHandler::_handleRequest(AsyncOpNode *, Message *)&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line466"> 466</a> 
<a name="4_line467"> 467</a>    <font color="#2040a0">AsyncRequest</font> <font color="4444FF">*</font><font color="#2040a0">async_request</font> <font color="4444FF">=</font> <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">AsyncRequest</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font><font color="#2040a0">op</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_request</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line468"> 468</a>    
<a name="4_line469"> 469</a>    <font color="#2040a0">msg</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_async</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="4_line470"> 470</a>    <font color="#2040a0">try</font> 
<a name="4_line471"> 471</a>    <font color="4444FF"><strong>{</strong></font>
<a name="4_line472"> 472</a>       <font color="#2040a0">_outputQueue</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">enqueue</font><font color="4444FF">(</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <font color="4444FF">;</font>
<a name="4_line473"> 473</a>    <font color="4444FF"><strong>}</strong></font>
<a name="4_line474"> 474</a>    <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="4_line475"> 475</a>    <font color="4444FF"><strong>{</strong></font>
<a name="4_line476"> 476</a> 
<a name="4_line477"> 477</a>    <font color="4444FF"><strong>}</strong></font>
<a name="4_line478"> 478</a>    
<a name="4_line479"> 479</a>    <strong>delete</strong> <font color="#2040a0">async_request</font><font color="4444FF">;</font>
<a name="4_line480"> 480</a>    
<a name="4_line481"> 481</a>    <font color="#2040a0">_complete_op_node</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">ASYNC_OPSTATE_COMPLETE</font>, <font color="#FF0000">0</font>, <font color="#FF0000">0</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line482"> 482</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line483"> 483</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line484"> 484</a> 
<a name="4_line485"> 485</a> <font color="#444444">// responses have their destination queue id in the message</font>
<a name="4_line486"> 486</a> <strong>void</strong> 
<a name="4_line487"> 487</a> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>, <font color="#2040a0">Message</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font>
<a name="4_line488"> 488</a>    <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line489"> 489</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line490"> 490</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line491"> 491</a> 		    <font color="#008000">&quot;BinaryMessageHandler::_handleResponse(AsyncOpNode *, Message *)&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line492"> 492</a>    <font color="#2040a0">AsyncReply</font> <font color="4444FF">*</font><font color="#2040a0">async_reply</font> <font color="4444FF">=</font> <strong>static_cast</strong><font color="4444FF">&lt;</font><font color="#2040a0">AsyncReply</font> <font color="4444FF">*</font><font color="4444FF">&gt;</font><font color="4444FF">(</font><font color="#2040a0">op</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">get_response</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line493"> 493</a>    <font color="#2040a0">msg</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">_async</font> <font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">;</font>
<a name="4_line494"> 494</a>    <strong>delete</strong> <font color="#2040a0">async_reply</font><font color="4444FF">;</font>
<a name="4_line495"> 495</a>    
<a name="4_line496"> 496</a>    <font color="#2040a0">MessageQueue</font> <font color="4444FF">*</font><font color="#2040a0">dest</font> <font color="4444FF">=</font> <font color="#2040a0">MessageQueue</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">lookup</font><font color="4444FF">(</font><font color="4444FF">(</font><font color="4444FF">(</font><font color="#2040a0">CIMRequestMessage</font> <font color="4444FF">*</font><font color="4444FF">)</font><font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">queueIds</font>.<font color="#2040a0">top</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line497"> 497</a>    <strong>if</strong><font color="4444FF">(</font><font color="#2040a0">dest</font> <font color="4444FF">=</font><font color="4444FF">=</font> <font color="#FF0000">0</font><font color="4444FF">)</font>
<a name="4_line498"> 498</a>    <font color="4444FF"><strong>{</strong></font>
<a name="4_line499"> 499</a>       <font color="#2040a0">PEG_TRACE_STRING</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>, <font color="#2040a0">Tracer</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">LEVEL4</font>,
<a name="4_line500"> 500</a> 		       <font color="#008000">&quot;Bad or non-existent Queue ID for desination in legacy message.&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line501"> 501</a>       <strong>delete</strong> <font color="#2040a0">msg</font><font color="4444FF">;</font>
<a name="4_line502"> 502</a>    <font color="4444FF"><strong>}</strong></font>
<a name="4_line503"> 503</a>    <strong>else</strong>
<a name="4_line504"> 504</a>    <font color="4444FF"><strong>{</strong></font>
<a name="4_line505"> 505</a>       <font color="#2040a0">try</font>
<a name="4_line506"> 506</a>       <font color="4444FF"><strong>{</strong></font>
<a name="4_line507"> 507</a> 	 
<a name="4_line508"> 508</a> 	 <font color="#2040a0">dest</font><font color="4444FF">-</font><font color="4444FF">&gt;</font><font color="#2040a0">enqueue</font><font color="4444FF">(</font><font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line509"> 509</a>       <font color="4444FF"><strong>}</strong></font>
<a name="4_line510"> 510</a>       <strong>catch</strong><font color="4444FF">(</font>...<font color="4444FF">)</font>
<a name="4_line511"> 511</a>       <font color="4444FF"><strong>{</strong></font>
<a name="4_line512"> 512</a>       <font color="4444FF"><strong>}</strong></font>
<a name="4_line513"> 513</a>       
<a name="4_line514"> 514</a>    <font color="4444FF"><strong>}</strong></font>
<a name="4_line515"> 515</a>    <font color="#2040a0">_complete_op_node</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">ASYNC_OPSTATE_COMPLETE</font>, <font color="#FF0000">0</font>, <font color="#FF0000">0</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line516"> 516</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line517"> 517</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line518"> 518</a> 
<a name="4_line519"> 519</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleCreateClassRequest</font><font color="4444FF">(</font>
<a name="4_line520"> 520</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>, 
<a name="4_line521"> 521</a>    <font color="#2040a0">CIMCreateClassRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line522"> 522</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line523"> 523</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line524"> 524</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleCreateClassRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line525"> 525</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line526"> 526</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line527"> 527</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line528"> 528</a> 
<a name="4_line529"> 529</a>       
<a name="4_line530"> 530</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleGetClassRequest</font><font color="4444FF">(</font>
<a name="4_line531"> 531</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line532"> 532</a>    <font color="#2040a0">CIMGetClassRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line533"> 533</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line534"> 534</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line535"> 535</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleGetClassRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line536"> 536</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line537"> 537</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line538"> 538</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line539"> 539</a> 
<a name="4_line540"> 540</a>       
<a name="4_line541"> 541</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleModifyClassRequest</font><font color="4444FF">(</font>
<a name="4_line542"> 542</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>, 
<a name="4_line543"> 543</a>    <font color="#2040a0">CIMModifyClassRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line544"> 544</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line545"> 545</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line546"> 546</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleModifyClassRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line547"> 547</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line548"> 548</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line549"> 549</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line550"> 550</a> 
<a name="4_line551"> 551</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleEnumerateClassNamesRequest</font><font color="4444FF">(</font>
<a name="4_line552"> 552</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line553"> 553</a>    <font color="#2040a0">CIMEnumerateClassNamesRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line554"> 554</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line555"> 555</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line556"> 556</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleEnumerateClassNamesRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line557"> 557</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line558"> 558</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line559"> 559</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line560"> 560</a> 
<a name="4_line561"> 561</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleEnumerateClassesRequest</font><font color="4444FF">(</font>
<a name="4_line562"> 562</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line563"> 563</a>    <font color="#2040a0">CIMEnumerateClassesRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line564"> 564</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line565"> 565</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line566"> 566</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleEnumerateClassRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line567"> 567</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line568"> 568</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line569"> 569</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line570"> 570</a> 
<a name="4_line571"> 571</a> 
<a name="4_line572"> 572</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleDeleteClassRequest</font><font color="4444FF">(</font>
<a name="4_line573"> 573</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line574"> 574</a>    <font color="#2040a0">CIMDeleteClassRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line575"> 575</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line576"> 576</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line577"> 577</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleDeleteClassRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line578"> 578</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line579"> 579</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line580"> 580</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line581"> 581</a> 
<a name="4_line582"> 582</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleCreateInstanceRequest</font><font color="4444FF">(</font>
<a name="4_line583"> 583</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line584"> 584</a>    <font color="#2040a0">CIMCreateInstanceRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line585"> 585</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line586"> 586</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line587"> 587</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleCreateInstanceRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line588"> 588</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line589"> 589</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line590"> 590</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line591"> 591</a> 
<a name="4_line592"> 592</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleGetInstanceRequest</font><font color="4444FF">(</font>
<a name="4_line593"> 593</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line594"> 594</a>    <font color="#2040a0">CIMGetInstanceRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line595"> 595</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line596"> 596</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line597"> 597</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleGetInstanceRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line598"> 598</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line599"> 599</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line600"> 600</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line601"> 601</a> 
<a name="4_line602"> 602</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleModifyInstanceRequest</font><font color="4444FF">(</font>
<a name="4_line603"> 603</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line604"> 604</a>    <font color="#2040a0">CIMModifyInstanceRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line605"> 605</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line606"> 606</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line607"> 607</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleModifyInstanceRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line608"> 608</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line609"> 609</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line610"> 610</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line611"> 611</a> 
<a name="4_line612"> 612</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleEnumerateInstanceNamesRequest</font><font color="4444FF">(</font>
<a name="4_line613"> 613</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line614"> 614</a>    <font color="#2040a0">CIMEnumerateInstanceNamesRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line615"> 615</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line616"> 616</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line617"> 617</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleEnumerateInstanceNamesRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line618"> 618</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line619"> 619</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line620"> 620</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line621"> 621</a> 
<a name="4_line622"> 622</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleEnumerateInstancesRequest</font><font color="4444FF">(</font>
<a name="4_line623"> 623</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line624"> 624</a>    <font color="#2040a0">CIMEnumerateInstancesRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line625"> 625</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line626"> 626</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line627"> 627</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleEnumerateInstancesRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line628"> 628</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line629"> 629</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line630"> 630</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line631"> 631</a> 
<a name="4_line632"> 632</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleDeleteInstanceRequest</font><font color="4444FF">(</font>
<a name="4_line633"> 633</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line634"> 634</a>    <font color="#2040a0">CIMDeleteInstanceRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line635"> 635</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line636"> 636</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line637"> 637</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleDeleteInstanceRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line638"> 638</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line639"> 639</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line640"> 640</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line641"> 641</a>       
<a name="4_line642"> 642</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleSetQualifierRequest</font><font color="4444FF">(</font>
<a name="4_line643"> 643</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line644"> 644</a>    <font color="#2040a0">CIMSetQualifierRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line645"> 645</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line646"> 646</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line647"> 647</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleSetQualifierRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line648"> 648</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line649"> 649</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line650"> 650</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line651"> 651</a>       
<a name="4_line652"> 652</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleGetQualifierRequest</font><font color="4444FF">(</font>
<a name="4_line653"> 653</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line654"> 654</a>    <font color="#2040a0">CIMGetQualifierRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line655"> 655</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line656"> 656</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line657"> 657</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleGetQualifierRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line658"> 658</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line659"> 659</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line660"> 660</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line661"> 661</a>       
<a name="4_line662"> 662</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleEnumerateQualifiersRequest</font><font color="4444FF">(</font>
<a name="4_line663"> 663</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line664"> 664</a>    <font color="#2040a0">CIMEnumerateQualifiersRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line665"> 665</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line666"> 666</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line667"> 667</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleEnumerateQualifiersRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line668"> 668</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line669"> 669</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line670"> 670</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line671"> 671</a>       
<a name="4_line672"> 672</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleDeleteQualifiersRequest</font><font color="4444FF">(</font>
<a name="4_line673"> 673</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line674"> 674</a>    <font color="#2040a0">CIMDeleteQualifierRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line675"> 675</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line676"> 676</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line677"> 677</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleDeleteQualifiersRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line678"> 678</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line679"> 679</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line680"> 680</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line681"> 681</a>       
<a name="4_line682"> 682</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleReferenceNamesRequest</font><font color="4444FF">(</font>
<a name="4_line683"> 683</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line684"> 684</a>    <font color="#2040a0">CIMReferenceNamesRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line685"> 685</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line686"> 686</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line687"> 687</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleReferenceNamesRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line688"> 688</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line689"> 689</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line690"> 690</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line691"> 691</a> 
<a name="4_line692"> 692</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleReferencesRequest</font><font color="4444FF">(</font>
<a name="4_line693"> 693</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line694"> 694</a>    <font color="#2040a0">CIMReferencesRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line695"> 695</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line696"> 696</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line697"> 697</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleReferencesRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line698"> 698</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line699"> 699</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line700"> 700</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line701"> 701</a> 
<a name="4_line702"> 702</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleAssociatorNamesRequest</font><font color="4444FF">(</font>
<a name="4_line703"> 703</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line704"> 704</a>    <font color="#2040a0">CIMAssociatorNamesRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line705"> 705</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line706"> 706</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line707"> 707</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleAssociatorNamesRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line708"> 708</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line709"> 709</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line710"> 710</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line711"> 711</a> 
<a name="4_line712"> 712</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleAssociatorsRequest</font><font color="4444FF">(</font>
<a name="4_line713"> 713</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line714"> 714</a>    <font color="#2040a0">CIMAssociatorsRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line715"> 715</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line716"> 716</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line717"> 717</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleAssociatorsRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line718"> 718</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line719"> 719</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line720"> 720</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line721"> 721</a> 
<a name="4_line722"> 722</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleGetPropertyRequest</font><font color="4444FF">(</font>
<a name="4_line723"> 723</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line724"> 724</a>    <font color="#2040a0">CIMGetPropertyRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line725"> 725</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line726"> 726</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line727"> 727</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleGetPropertyRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line728"> 728</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line729"> 729</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line730"> 730</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line731"> 731</a> 
<a name="4_line732"> 732</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleSetPropertyRequest</font><font color="4444FF">(</font>
<a name="4_line733"> 733</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line734"> 734</a>    <font color="#2040a0">CIMSetPropertyRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line735"> 735</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line736"> 736</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line737"> 737</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleSetPropertyRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line738"> 738</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line739"> 739</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line740"> 740</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line741"> 741</a> 
<a name="4_line742"> 742</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleExecQueryRequest</font><font color="4444FF">(</font>
<a name="4_line743"> 743</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line744"> 744</a>    <font color="#2040a0">CIMExecQueryRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line745"> 745</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line746"> 746</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line747"> 747</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleExecQueryRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line748"> 748</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line749"> 749</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line750"> 750</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line751"> 751</a>  
<a name="4_line752"> 752</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleInvokeMethodRequest</font><font color="4444FF">(</font>
<a name="4_line753"> 753</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line754"> 754</a>    <font color="#2040a0">CIMInvokeMethodRequestMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line755"> 755</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line756"> 756</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line757"> 757</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleInvokeMethodRequest()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line758"> 758</a>    <font color="#2040a0">_handleRequest</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line759"> 759</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line760"> 760</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line761"> 761</a>       
<a name="4_line762"> 762</a> <font color="#444444">// **** Response Messages **** //</font>
<a name="4_line763"> 763</a>       
<a name="4_line764"> 764</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleCreateClassResponse</font><font color="4444FF">(</font>
<a name="4_line765"> 765</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line766"> 766</a>    <font color="#2040a0">CIMCreateClassResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line767"> 767</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line768"> 768</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line769"> 769</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleCreateClassResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line770"> 770</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line771"> 771</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line772"> 772</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line773"> 773</a> 
<a name="4_line774"> 774</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleGetClassResponse</font><font color="4444FF">(</font>
<a name="4_line775"> 775</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line776"> 776</a>    <font color="#2040a0">CIMGetClassResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line777"> 777</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line778"> 778</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line779"> 779</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleGetClassResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line780"> 780</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line781"> 781</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line782"> 782</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line783"> 783</a> 
<a name="4_line784"> 784</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleModifyClassResponse</font><font color="4444FF">(</font>
<a name="4_line785"> 785</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line786"> 786</a>    <font color="#2040a0">CIMModifyClassResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line787"> 787</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line788"> 788</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line789"> 789</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleModifyClassResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line790"> 790</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line791"> 791</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line792"> 792</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line793"> 793</a>       
<a name="4_line794"> 794</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleEnumerateClassNamesResponse</font><font color="4444FF">(</font>
<a name="4_line795"> 795</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line796"> 796</a>    <font color="#2040a0">CIMEnumerateClassNamesResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line797"> 797</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line798"> 798</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line799"> 799</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleEnumerateClassNamesResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line800"> 800</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line801"> 801</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line802"> 802</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line803"> 803</a> 
<a name="4_line804"> 804</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleEnumerateClassesResponse</font><font color="4444FF">(</font>
<a name="4_line805"> 805</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line806"> 806</a>    <font color="#2040a0">CIMEnumerateClassesResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line807"> 807</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line808"> 808</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line809"> 809</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleEnumerateClassesResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line810"> 810</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line811"> 811</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line812"> 812</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line813"> 813</a> 
<a name="4_line814"> 814</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleDeleteClassResponse</font><font color="4444FF">(</font>
<a name="4_line815"> 815</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line816"> 816</a>    <font color="#2040a0">CIMDeleteClassResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line817"> 817</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line818"> 818</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line819"> 819</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleDeleteClassResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line820"> 820</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line821"> 821</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line822"> 822</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line823"> 823</a> 
<a name="4_line824"> 824</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleCreateInstanceResponse</font><font color="4444FF">(</font>
<a name="4_line825"> 825</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line826"> 826</a>    <font color="#2040a0">CIMCreateInstanceResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line827"> 827</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line828"> 828</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line829"> 829</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleCreateInstanceResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line830"> 830</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line831"> 831</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line832"> 832</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line833"> 833</a> 
<a name="4_line834"> 834</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleGetInstanceResponse</font><font color="4444FF">(</font>
<a name="4_line835"> 835</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line836"> 836</a>    <font color="#2040a0">CIMGetInstanceResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line837"> 837</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line838"> 838</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line839"> 839</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleGetInstanceResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line840"> 840</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line841"> 841</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line842"> 842</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line843"> 843</a> 
<a name="4_line844"> 844</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleModifyInstanceResponse</font><font color="4444FF">(</font>
<a name="4_line845"> 845</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line846"> 846</a>    <font color="#2040a0">CIMModifyInstanceResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line847"> 847</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line848"> 848</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line849"> 849</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleModifyInstanceResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line850"> 850</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line851"> 851</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line852"> 852</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line853"> 853</a> 
<a name="4_line854"> 854</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleEnumerateInstanceNamesResponse</font><font color="4444FF">(</font>
<a name="4_line855"> 855</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line856"> 856</a>    <font color="#2040a0">CIMEnumerateInstanceNamesResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line857"> 857</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line858"> 858</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line859"> 859</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleEnumerateInstanceNamesResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line860"> 860</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line861"> 861</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line862"> 862</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line863"> 863</a> 
<a name="4_line864"> 864</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleEnumerateInstancesResponse</font><font color="4444FF">(</font>
<a name="4_line865"> 865</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line866"> 866</a>    <font color="#2040a0">CIMEnumerateInstancesResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line867"> 867</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line868"> 868</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line869"> 869</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleEnumerateInstancesResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line870"> 870</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line871"> 871</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line872"> 872</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line873"> 873</a> 
<a name="4_line874"> 874</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleDeleteInstanceResponse</font><font color="4444FF">(</font>
<a name="4_line875"> 875</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line876"> 876</a>    <font color="#2040a0">CIMDeleteInstanceResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line877"> 877</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line878"> 878</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line879"> 879</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleDeleteInstanceResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line880"> 880</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line881"> 881</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line882"> 882</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line883"> 883</a> 
<a name="4_line884"> 884</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleGetPropertyResponse</font><font color="4444FF">(</font>
<a name="4_line885"> 885</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line886"> 886</a>    <font color="#2040a0">CIMGetPropertyResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line887"> 887</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line888"> 888</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line889"> 889</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleGetPropertyResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line890"> 890</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line891"> 891</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line892"> 892</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line893"> 893</a> 
<a name="4_line894"> 894</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleSetPropertyResponse</font><font color="4444FF">(</font>
<a name="4_line895"> 895</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line896"> 896</a>    <font color="#2040a0">CIMSetPropertyResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line897"> 897</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line898"> 898</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line899"> 899</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleSetPropertyResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line900"> 900</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line901"> 901</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line902"> 902</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line903"> 903</a> 
<a name="4_line904"> 904</a> 
<a name="4_line905"> 905</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleSetQualifierResponse</font><font color="4444FF">(</font>
<a name="4_line906"> 906</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line907"> 907</a>    <font color="#2040a0">CIMSetQualifierResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line908"> 908</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line909"> 909</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line910"> 910</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleSetQualifierResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line911"> 911</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line912"> 912</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line913"> 913</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line914"> 914</a> 
<a name="4_line915"> 915</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleGetQualifierResponse</font><font color="4444FF">(</font>
<a name="4_line916"> 916</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line917"> 917</a>    <font color="#2040a0">CIMGetQualifierResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line918"> 918</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line919"> 919</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line920"> 920</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleGetQualifierResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line921"> 921</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line922"> 922</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line923"> 923</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line924"> 924</a>       
<a name="4_line925"> 925</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleEnumerateQualifiersResponse</font><font color="4444FF">(</font>
<a name="4_line926"> 926</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line927"> 927</a>    <font color="#2040a0">CIMEnumerateQualifiersResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line928"> 928</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line929"> 929</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line930"> 930</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleEnumerateQualifiersResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line931"> 931</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line932"> 932</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line933"> 933</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line934"> 934</a> 
<a name="4_line935"> 935</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleDeleteQualifierResponse</font><font color="4444FF">(</font>
<a name="4_line936"> 936</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line937"> 937</a>    <font color="#2040a0">CIMDeleteQualifierResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line938"> 938</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line939"> 939</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line940"> 940</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleDeleteQualifierResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line941"> 941</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line942"> 942</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line943"> 943</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line944"> 944</a> 
<a name="4_line945"> 945</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleReferenceNamesResponse</font><font color="4444FF">(</font>
<a name="4_line946"> 946</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line947"> 947</a>    <font color="#2040a0">CIMReferenceNamesResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line948"> 948</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line949"> 949</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line950"> 950</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleReferenceNamesResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line951"> 951</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line952"> 952</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line953"> 953</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line954"> 954</a> 
<a name="4_line955"> 955</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleReferencesResponse</font><font color="4444FF">(</font>
<a name="4_line956"> 956</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line957"> 957</a>    <font color="#2040a0">CIMReferencesResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line958"> 958</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line959"> 959</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line960"> 960</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleReferencesResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line961"> 961</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line962"> 962</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line963"> 963</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line964"> 964</a> 
<a name="4_line965"> 965</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleAssociatorNamesResponse</font><font color="4444FF">(</font>
<a name="4_line966"> 966</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line967"> 967</a>    <font color="#2040a0">CIMAssociatorNamesResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line968"> 968</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line969"> 969</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line970"> 970</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleAssociatorNamesResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line971"> 971</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line972"> 972</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line973"> 973</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line974"> 974</a> 
<a name="4_line975"> 975</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleAssociatorsResponse</font><font color="4444FF">(</font>
<a name="4_line976"> 976</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line977"> 977</a>    <font color="#2040a0">CIMAssociatorsResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line978"> 978</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line979"> 979</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line980"> 980</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleAssociatorsResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line981"> 981</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line982"> 982</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line983"> 983</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line984"> 984</a> 
<a name="4_line985"> 985</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleExecQueryResponse</font><font color="4444FF">(</font>
<a name="4_line986"> 986</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line987"> 987</a>    <font color="#2040a0">CIMExecQueryResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line988"> 988</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line989"> 989</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line990"> 990</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleExecQueryResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line991"> 991</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line992"> 992</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line993"> 993</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line994"> 994</a> 
<a name="4_line995"> 995</a> 
<a name="4_line996"> 996</a> <strong>void</strong> <font color="#2040a0">BinaryMessageHandler</font><font color="4444FF">:</font><font color="4444FF">:</font><font color="#2040a0">handleInvokeMethodResponse</font><font color="4444FF">(</font>
<a name="4_line997"> 997</a>    <font color="#2040a0">AsyncOpNode</font> <font color="4444FF">*</font><font color="#2040a0">op</font>,
<a name="4_line998"> 998</a>    <font color="#2040a0">CIMInvokeMethodResponseMessage</font> <font color="4444FF">*</font><font color="#2040a0">msg</font><font color="4444FF">)</font> <strong>throw</strong><font color="4444FF">(</font><font color="4444FF">)</font>
<a name="4_line999"> 999</a> <font color="4444FF"><strong>{</strong></font>
<a name="4_line1000">1000</a>    <font color="#2040a0">PEG_METHOD_ENTER</font><font color="4444FF">(</font><font color="#2040a0">TRC_BINARY_MSG_HANDLER</font>,
<a name="4_line1001">1001</a> 		    <font color="#008000">&quot;BinaryMessageHandler::handleInvokeMethodResponse()&quot;</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line1002">1002</a>    <font color="#2040a0">_handleResponse</font><font color="4444FF">(</font><font color="#2040a0">op</font>, <font color="#2040a0">msg</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line1003">1003</a>    <font color="#2040a0">PEG_METHOD_EXIT</font><font color="4444FF">(</font><font color="4444FF">)</font><font color="4444FF">;</font>
<a name="4_line1004">1004</a> <font color="4444FF"><strong>}</strong></font>
<a name="4_line1005">1005</a> 
<a name="4_line1006">1006</a> <font color="#2040a0">PEGASUS_NAMESPACE_END</font>
</pre><!-- code2html delete stop -->
    <hr>
    <address><a href="mailto:mdday@us.ibm.com">Michael Day</a></address>
<!-- Created: Thu Feb 13 11:44:30 EST 2003 -->
<!-- hhmts start -->
Last modified: Thu Feb 13 15:21:16 EST 2003
<!-- hhmts end -->
  </body>
</html>

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2