(file) Return to BinaryMessageHandler.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / Server

   1 karl  1.10 //%2005////////////////////////////////////////////////////////////////////////
   2 mday  1.2  //
   3 karl  1.9  // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development
   4            // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.
   5            // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;
   6 karl  1.5  // IBM Corp.; EMC Corporation, The Open Group.
   7 karl  1.9  // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;
   8            // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.
   9 karl  1.10 // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
  10            // EMC Corporation; VERITAS Software Corporation; The Open Group.
  11 mday  1.2  //
  12            // Permission is hereby granted, free of charge, to any person obtaining a copy
  13            // of this software and associated documentation files (the "Software"), to
  14            // deal in the Software without restriction, including without limitation the
  15            // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
  16            // sell copies of the Software, and to permit persons to whom the Software is
  17            // furnished to do so, subject to the following conditions:
  18            // 
  19            // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
  20            // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
  21            // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
  22            // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
  23            // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
  24            // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
  25            // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
  26            // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  27            //
  28            //==============================================================================
  29            //
  30            // Author: Mike Day (mdday@us.ibm.com)
  31            //
  32 carolann.graves 1.11 // Modified By: Carol Ann Krug Graves, Hewlett-Packard Company
  33                      //                  (carolann_graves@hp.com)
  34                      //
  35 mday            1.2  //%/////////////////////////////////////////////////////////////////////////////
  36                      
  37                      #include "BinaryMessageHandler.h"
  38                      #include <Pegasus/Common/IPC.h>
  39                      #include <Pegasus/Common/Thread.h>
  40                      
  41                      PEGASUS_NAMESPACE_BEGIN
  42                      
  43                      BinaryMessageHandler::BinaryMessageHandler(MessageQueueService *output_q)
  44                         : Base(PEGASUS_QUEUENAME_BINARY_HANDLER),
  45                           _outputQueue(output_q),
  46                           _msg_q(true, 0)
  47                      {
  48                      
  49                      }
  50                      
  51                      BinaryMessageHandler::~BinaryMessageHandler(void)
  52                      {
  53                         
  54                      }
  55                      
  56 mday            1.2  
  57                      Boolean BinaryMessageHandler::messageOK(const Message * msg)
  58                      {
  59                         return Base::messageOK(msg);
  60                      }
  61                      
  62                      void BinaryMessageHandler::handleEnqueue(void)
  63                      {
  64                         Message *msg = dequeue();
  65                         handleEnqueue(msg);
  66                      }
  67                      
  68                      void BinaryMessageHandler::handleEnqueue(Message * message)
  69                      {
  70                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
  71                      		    "BinaryMessageHandler::_handleEnqueue(Message *)");
  72                         PEGASUS_ASSERT(message != 0);
  73                      
  74                         AsyncRequest * asyncRequest;
  75                         AsyncOpNode * op;
  76                         
  77 mday            1.2     message->_async = 0;
  78                         
  79                         PEG_TRACE_STRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4, 
  80                      		    "Converting legacy message to AsyncLegacyOperationStart");
  81                         op = this->get_op();
  82                         asyncRequest = new AsyncLegacyOperationStart(
  83                            get_next_xid(),
  84                            op,
  85                            this->getQueueId(),
  86                            message,
  87                            this->getQueueId());
  88                         op->_flags |= ASYNC_OPFLAGS_FIRE_AND_FORGET;
  89                         
  90                      
  91                         _handle_async_request(asyncRequest);
  92                         PEG_METHOD_EXIT();
  93                      }
  94                      
  95                      void BinaryMessageHandler::_handle_async_request(AsyncRequest * request)
  96                      {
  97                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
  98 mday            1.2  		    "BinaryMessageHandler::_handle_async_request");
  99                      
 100                         PEGASUS_ASSERT(request != 0 && request->op != 0 );
 101                      
 102                         if(request->getType() == async_messages::ASYNC_LEGACY_OP_START || 
 103                            request->getType() == async_messages::ASYNC_LEGACY_OP_RESULT)
 104                         {        
 105                            PEG_TRACE_STRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
 106                      		       "Processing ASYNC_LEGACY_OP_* Message.");
 107                            request->op->processing();
 108                            try
 109                            {
 110                      	 _msg_q.insert_last(request->op);
 111                            }
 112                            catch(ListFull & )
 113                            {
 114                      	 PEG_TRACE_STRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
 115                      			  "Internal DQueue Full.");
 116                      	 Base::_handle_async_request(request);
 117                      	 PEG_METHOD_EXIT();
 118                      	 return;
 119 mday            1.2        }
 120                             
 121                            catch(...)
 122                            {
 123                      	 PEG_TRACE_STRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
 124                      			  "Internal DQueue Error.");
 125                      	 Base::_handle_async_request(request);
 126                      	 PEG_METHOD_EXIT();
 127                      	 return;
 128                            }
 129                             
 130                            PEG_TRACE_STRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
 131                      		       "Allocating pooled thread to handle binary message.");
 132 konrad.r        1.14       if (_thread_pool->allocate_and_awaken(
 133                      	 (void *)this, BinaryMessageHandler::handle_binary_message)!=PEGASUS_THREAD_OK)
 134                      	{
 135                       	    Logger::put(Logger::STANDARD_LOG, System::CIMSERVER, Logger::TRACE,
 136                                  	"Not enough threads to handle binary message.");
 137                       
 138                      	    Tracer::trace(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL2,
 139                      		"Could not allocate thread for %s. " \
 140                       		"Queue has %d messages waiting. ",
 141                                      getQueueName(),
 142                       		_msg_q.count());
 143                      	}	
 144 mday            1.2     }
 145                         else if(request->getType() == async_messages::CIMSERVICE_STOP)
 146                         {
 147                            PEG_TRACE_STRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
 148                      		       "Handling CIMServer Stop Message");
 149                            Base::_handle_async_request(request);
 150                         }
 151                         else
 152                         {
 153                            // pass all other operations to the default handler
 154                            PEG_TRACE_STRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
 155                      		       "Passing message to parent.");
 156 kumpf           1.3  #ifdef BINARYMESSAGEHANDLER_DEBUG
 157 mday            1.2        PEGASUS_STD(cout) << "Unexpected Message: type " << request->getType() << PEGASUS_STD(endl);
 158 kumpf           1.3  #endif
 159 mday            1.2  
 160                            Base::_handle_async_request(request);
 161                         }
 162                      
 163                         PEG_METHOD_EXIT();
 164                      
 165                         return;
 166                      }
 167                      
 168 kumpf           1.12 PEGASUS_THREAD_RETURN PEGASUS_THREAD_CDECL
 169                      BinaryMessageHandler::handle_binary_message(void* parm)
 170 mday            1.2  {
 171                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 172 kumpf           1.12       "BinaryMessageHandler::_handle_async_request");
 173                      
 174                         BinaryMessageHandler* myself =
 175                            reinterpret_cast<BinaryMessageHandler*>(parm);
 176 mday            1.2     PEGASUS_ASSERT(myself != 0);
 177 kumpf           1.12 
 178 mday            1.2     AsyncOpNode *op;
 179                         try
 180                         {
 181                            op = myself->_msg_q.remove_first();
 182                         }
 183                         catch(...)
 184                         {
 185 kumpf           1.12       PEG_TRACE_STRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL2,
 186                               "Internal DQueue Error.");
 187 mday            1.2        PEG_METHOD_EXIT();
 188                            return(0);
 189                         }
 190                         Uint32 msg_type;
 191 kumpf           1.12 
 192 mday            1.2     PEGASUS_ASSERT(op != 0);
 193                      
 194                         // we only receive ASYNC_LEGACY_OP_START and
 195 kumpf           1.12    // ASYNC_LEGACY_OP_RESULT messages
 196                      
 197 mday            1.2     Message *legacy = 0;
 198                         AsyncMessage *msg = 0;
 199 kumpf           1.12 
 200                         try
 201 mday            1.2     {
 202 kumpf           1.12       // if there is a response, dispatch the response
 203                            if(op->_response.count())
 204                            {
 205                               msg = static_cast<AsyncMessage *>(op->_response.next(0));
 206                               legacy = static_cast<AsyncLegacyOperationResult*>(msg)->get_result();
 207                            }
 208                            else
 209 mday            1.2        {
 210 kumpf           1.12          // there is no response so there has to be a request
 211                               if(op->_request.count() == 0)
 212                               {
 213                                  PEG_TRACE_STRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL2,
 214                                     "Received OpNode with no messages.");
 215                                  PEG_METHOD_EXIT();
 216                                  return(0);
 217                               }
 218                               // dispatch the request
 219                               msg = static_cast<AsyncMessage *>(op->_request.next(0));
 220                               legacy = static_cast<AsyncLegacyOperationStart *>(msg)->get_action();
 221 mday            1.2        }
 222 kumpf           1.12       if(msg && legacy)
 223 mday            1.2        {
 224 kumpf           1.12          legacy->_async = 0;
 225 mday            1.2  
 226 kumpf           1.12          switch(legacy->getType())
 227                               {
 228                                  case CIM_CREATE_CLASS_REQUEST_MESSAGE:
 229                                     myself->handleCreateClassRequest(
 230                                        op, (CIMCreateClassRequestMessage *)legacy);
 231                                     break;
 232                                  case CIM_CREATE_INSTANCE_REQUEST_MESSAGE:
 233                                     myself->handleCreateInstanceRequest(
 234                                        op, (CIMCreateInstanceRequestMessage *)legacy);
 235                                     break;
 236                                  case CIM_MODIFY_CLASS_REQUEST_MESSAGE:
 237                                     myself->handleModifyClassRequest(
 238                                        op, (CIMModifyClassRequestMessage *)legacy);
 239                                     break;
 240                                  case CIM_MODIFY_INSTANCE_REQUEST_MESSAGE:
 241                                     myself->handleModifyInstanceRequest(
 242                                        op, (CIMModifyInstanceRequestMessage *)legacy);
 243                                     break;
 244                                  case CIM_ENUMERATE_CLASSES_REQUEST_MESSAGE: //10
 245                                     myself->handleEnumerateClassesRequest(
 246                                        op, (CIMEnumerateClassesRequestMessage *)legacy);
 247 kumpf           1.12                break;
 248                                  case CIM_ENUMERATE_CLASS_NAMES_REQUEST_MESSAGE:
 249                                     myself->handleEnumerateClassNamesRequest(
 250                                        op, (CIMEnumerateClassNamesRequestMessage *)legacy);
 251                                     break;
 252                                  case CIM_ENUMERATE_INSTANCES_REQUEST_MESSAGE:
 253                                     myself->handleEnumerateInstancesRequest(
 254                                        op, (CIMEnumerateInstancesRequestMessage *)legacy);
 255                                     break;
 256                                  case CIM_ENUMERATE_INSTANCE_NAMES_REQUEST_MESSAGE:
 257                                     myself->handleEnumerateInstanceNamesRequest(
 258                                        op, (CIMEnumerateInstanceNamesRequestMessage *)legacy);
 259                                     break;
 260                                  case CIM_EXEC_QUERY_REQUEST_MESSAGE:
 261                                     myself->handleExecQueryRequest(
 262                                        op, (CIMExecQueryRequestMessage *)legacy);
 263                                     break;
 264                                  case CIM_ASSOCIATORS_REQUEST_MESSAGE:
 265                                     myself->handleAssociatorsRequest(
 266                                        op, (CIMAssociatorsRequestMessage *)legacy);
 267                                     break;
 268 kumpf           1.12             case CIM_ASSOCIATOR_NAMES_REQUEST_MESSAGE:
 269                                     myself->handleAssociatorNamesRequest(
 270                                        op, (CIMAssociatorNamesRequestMessage *)legacy);
 271                                     break;
 272                                  case CIM_REFERENCES_REQUEST_MESSAGE:
 273                                     myself->handleReferencesRequest(
 274                                        op, (CIMReferencesRequestMessage *)legacy);
 275                                     break;
 276                                  case CIM_REFERENCE_NAMES_REQUEST_MESSAGE:
 277                                     myself->handleReferenceNamesRequest(
 278                                        op, (CIMReferenceNamesRequestMessage *)legacy);
 279                                     break;
 280                                  case CIM_GET_PROPERTY_REQUEST_MESSAGE:
 281                                     myself->handleGetPropertyRequest(
 282                                        op, (CIMGetPropertyRequestMessage *)legacy);
 283                                     break;
 284                                  case CIM_SET_PROPERTY_REQUEST_MESSAGE: //20
 285                                     myself->handleSetPropertyRequest(
 286                                        op, (CIMSetPropertyRequestMessage *)legacy);
 287                                     break;
 288                                  case CIM_GET_QUALIFIER_REQUEST_MESSAGE:
 289 kumpf           1.12                myself->handleGetQualifierRequest(
 290                                        op, (CIMGetQualifierRequestMessage *)legacy);
 291                                     break;
 292                                  case CIM_SET_QUALIFIER_REQUEST_MESSAGE:
 293                                     myself->handleSetQualifierRequest(
 294                                        op, (CIMSetQualifierRequestMessage *)legacy);
 295                                     break;
 296                                  case CIM_DELETE_QUALIFIER_REQUEST_MESSAGE:
 297                                     myself->handleDeleteQualifiersRequest(
 298                                        op, (CIMDeleteQualifierRequestMessage *)legacy);
 299                                     break;
 300                                  case CIM_ENUMERATE_QUALIFIERS_REQUEST_MESSAGE:
 301                                     myself->handleEnumerateQualifiersRequest(
 302                                        op, (CIMEnumerateQualifiersRequestMessage *)legacy);
 303                                     break;
 304                                  case CIM_INVOKE_METHOD_REQUEST_MESSAGE:
 305                                     myself->handleInvokeMethodRequest(
 306                                        op, (CIMInvokeMethodRequestMessage *)legacy);
 307                                     break;
 308                                  //**** response messages ****//
 309                                  case CIM_GET_CLASS_RESPONSE_MESSAGE:
 310 kumpf           1.12                myself->handleGetClassResponse(
 311                                        op, (CIMGetClassResponseMessage *)legacy);
 312                                     break;
 313                                  case CIM_GET_INSTANCE_RESPONSE_MESSAGE:
 314                                     myself->handleGetInstanceResponse(
 315                                        op, (CIMGetInstanceResponseMessage *)legacy);
 316                                     break;
 317                                  case CIM_DELETE_CLASS_RESPONSE_MESSAGE:
 318                                     myself->handleDeleteClassResponse(
 319                                        op, (CIMDeleteClassResponseMessage *)legacy);
 320                                     break;
 321                                  case CIM_DELETE_INSTANCE_RESPONSE_MESSAGE:
 322                                     myself->handleDeleteInstanceResponse(
 323                                        op, (CIMDeleteInstanceResponseMessage *)legacy);
 324                                     break;
 325                                  case CIM_CREATE_CLASS_RESPONSE_MESSAGE:
 326                                     myself->handleCreateClassResponse(
 327                                        op, (CIMCreateClassResponseMessage *)legacy);
 328                                     break;
 329                                  case CIM_CREATE_INSTANCE_RESPONSE_MESSAGE:
 330                                     myself->handleCreateInstanceResponse(
 331 kumpf           1.12                   op, (CIMCreateInstanceResponseMessage *)legacy);
 332                                     break;
 333                                  case CIM_MODIFY_CLASS_RESPONSE_MESSAGE:
 334                                     myself->handleModifyClassResponse(
 335                                        op, (CIMModifyClassResponseMessage *)legacy);
 336                                     break;
 337                                  case CIM_MODIFY_INSTANCE_RESPONSE_MESSAGE:
 338                                     myself->handleModifyInstanceResponse(
 339                                        op, (CIMModifyInstanceResponseMessage *)legacy);
 340                                     break;
 341                                  case CIM_ENUMERATE_CLASSES_RESPONSE_MESSAGE:
 342                                     myself->handleEnumerateClassesResponse(
 343                                        op, (CIMEnumerateClassesResponseMessage *)legacy);
 344                                     break;
 345                                  case CIM_ENUMERATE_CLASS_NAMES_RESPONSE_MESSAGE:
 346                                     myself->handleEnumerateClassNamesResponse(
 347                                        op, (CIMEnumerateClassNamesResponseMessage *)legacy);
 348                                     break;
 349                                  case CIM_ENUMERATE_INSTANCES_RESPONSE_MESSAGE:
 350                                     myself->handleEnumerateInstancesResponse(
 351                                        op, (CIMEnumerateInstancesResponseMessage *)legacy);
 352 kumpf           1.12                break;
 353                                  case CIM_ENUMERATE_INSTANCE_NAMES_RESPONSE_MESSAGE:
 354                                     myself->handleEnumerateInstanceNamesResponse(
 355                                        op, (CIMEnumerateInstanceNamesResponseMessage *)legacy);
 356                                     break;
 357                                  case CIM_EXEC_QUERY_RESPONSE_MESSAGE:
 358                                     myself->handleExecQueryResponse(
 359                                        op, (CIMExecQueryResponseMessage *)legacy);
 360                                     break;
 361                                  case CIM_ASSOCIATORS_RESPONSE_MESSAGE:
 362                                     myself->handleAssociatorsResponse(
 363                                        op, (CIMAssociatorsResponseMessage *)legacy);
 364                                     break;
 365                                  case CIM_ASSOCIATOR_NAMES_RESPONSE_MESSAGE:
 366                                     myself->handleAssociatorNamesResponse(
 367                                        op, (CIMAssociatorNamesResponseMessage *)legacy);
 368                                     break;
 369                                  case CIM_REFERENCES_RESPONSE_MESSAGE:
 370                                     myself->handleReferencesResponse(
 371                                        op, (CIMReferencesResponseMessage *)legacy);
 372                                     break;
 373 kumpf           1.12             case CIM_REFERENCE_NAMES_RESPONSE_MESSAGE:
 374                                     myself->handleReferenceNamesResponse(
 375                                        op, (CIMReferenceNamesResponseMessage *)legacy);
 376                                     break;
 377                                  case CIM_GET_PROPERTY_RESPONSE_MESSAGE:
 378                                     myself->handleGetPropertyResponse(
 379                                        op, (CIMGetPropertyResponseMessage *)legacy);
 380                                     break;
 381                                  case CIM_SET_PROPERTY_RESPONSE_MESSAGE:
 382                                     myself->handleSetPropertyResponse(
 383                                        op, (CIMSetPropertyResponseMessage *)legacy);
 384                                     break;
 385                                  case CIM_GET_QUALIFIER_RESPONSE_MESSAGE:
 386                                     myself->handleGetQualifierResponse(
 387                                        op, (CIMGetQualifierResponseMessage *)legacy);
 388                                     break;
 389                                  case CIM_SET_QUALIFIER_RESPONSE_MESSAGE:
 390                                     myself->handleSetQualifierResponse(
 391                                        op, (CIMSetQualifierResponseMessage *)legacy);
 392                                     break;
 393                                  case CIM_DELETE_QUALIFIER_RESPONSE_MESSAGE:
 394 kumpf           1.12                myself->handleDeleteQualifierResponse(
 395                                        op, (CIMDeleteQualifierResponseMessage *)legacy);
 396                                     break;
 397                                  case CIM_ENUMERATE_QUALIFIERS_RESPONSE_MESSAGE:
 398                                     myself->handleEnumerateQualifiersResponse(
 399                                        op, (CIMEnumerateQualifiersResponseMessage *)legacy);
 400                                     break;
 401                                  case CIM_INVOKE_METHOD_RESPONSE_MESSAGE:
 402                                     myself->handleInvokeMethodResponse(
 403                                        op, (CIMInvokeMethodResponseMessage *)legacy);
 404                                     break;
 405                      
 406                                  // unexpected requests
 407                                  case CIM_ENABLE_INDICATION_SUBSCRIPTION_REQUEST_MESSAGE:
 408                                  case CIM_MODIFY_INDICATION_SUBSCRIPTION_REQUEST_MESSAGE:
 409                                  case CIM_DISABLE_INDICATION_SUBSCRIPTION_REQUEST_MESSAGE:
 410                                  case CIM_PROCESS_INDICATION_REQUEST_MESSAGE:
 411                                  case CIM_HANDLE_INDICATION_REQUEST_MESSAGE: // 30
 412                                  case CIM_NOTIFY_PROVIDER_REGISTRATION_REQUEST_MESSAGE:
 413                                  case CIM_NOTIFY_PROVIDER_TERMINATION_REQUEST_MESSAGE:
 414                                  case CIM_NOTIFY_PROVIDER_ENABLE_REQUEST_MESSAGE:
 415 kumpf           1.12 
 416                                  // new
 417                                  case CIM_CREATE_SUBSCRIPTION_REQUEST_MESSAGE:
 418                                  case CIM_MODIFY_SUBSCRIPTION_REQUEST_MESSAGE:
 419                                  case CIM_DELETE_SUBSCRIPTION_REQUEST_MESSAGE:
 420                                  case CIM_SUBSCRIPTION_INIT_COMPLETE_REQUEST_MESSAGE:
 421                      
 422                                  // new
 423                                  case CIM_DISABLE_MODULE_REQUEST_MESSAGE:
 424                                  case CIM_ENABLE_MODULE_REQUEST_MESSAGE:
 425                      
 426                                  case CIM_INITIALIZE_PROVIDER_REQUEST_MESSAGE:
 427                      
 428                                  case CIM_NOTIFY_CONFIG_CHANGE_REQUEST_MESSAGE:
 429                      
 430                                  case CIM_STOP_ALL_PROVIDERS_REQUEST_MESSAGE:
 431                                  case CIM_GET_CLASS_REQUEST_MESSAGE:
 432                                  case CIM_GET_INSTANCE_REQUEST_MESSAGE:
 433                                  case CIM_EXPORT_INDICATION_REQUEST_MESSAGE:
 434                                  case CIM_DELETE_CLASS_REQUEST_MESSAGE:
 435                                  case CIM_DELETE_INSTANCE_REQUEST_MESSAGE:
 436 kumpf           1.12                PEG_TRACE_STRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
 437                                        "Received Unexpected legacy request message.");
 438                                     myself->_handleRequest(op, legacy);
 439                                     break;
 440                      
 441                                  // unexpected replies
 442                                  case CIM_ENABLE_INDICATION_SUBSCRIPTION_RESPONSE_MESSAGE:
 443                                  case CIM_MODIFY_INDICATION_SUBSCRIPTION_RESPONSE_MESSAGE:
 444                                  case CIM_DISABLE_INDICATION_SUBSCRIPTION_RESPONSE_MESSAGE:
 445                                  case CIM_PROCESS_INDICATION_RESPONSE_MESSAGE:
 446                                  case CIM_NOTIFY_PROVIDER_REGISTRATION_RESPONSE_MESSAGE:
 447                                  case CIM_NOTIFY_PROVIDER_TERMINATION_RESPONSE_MESSAGE:
 448                                  case CIM_HANDLE_INDICATION_RESPONSE_MESSAGE:
 449                                  // new
 450                                  case CIM_CREATE_SUBSCRIPTION_RESPONSE_MESSAGE:
 451                                  case CIM_MODIFY_SUBSCRIPTION_RESPONSE_MESSAGE:
 452                                  case CIM_DELETE_SUBSCRIPTION_RESPONSE_MESSAGE:
 453                                  case CIM_SUBSCRIPTION_INIT_COMPLETE_RESPONSE_MESSAGE:
 454                                  // new
 455                                  case CIM_DISABLE_MODULE_RESPONSE_MESSAGE:
 456                                  case CIM_ENABLE_MODULE_RESPONSE_MESSAGE:
 457 kumpf           1.12             case CIM_STOP_ALL_PROVIDERS_RESPONSE_MESSAGE:
 458                                  case CIM_NOTIFY_PROVIDER_ENABLE_RESPONSE_MESSAGE:
 459                                  case CIM_INITIALIZE_PROVIDER_RESPONSE_MESSAGE:
 460                                  case CIM_NOTIFY_CONFIG_CHANGE_RESPONSE_MESSAGE:
 461                                     break;
 462                                  case CIM_EXPORT_INDICATION_RESPONSE_MESSAGE: // 42
 463                                  default:
 464                                     PEG_TRACE_STRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
 465                                        "Received Unexpected legacy response message.");
 466                                     myself->_handleResponse(op, legacy);
 467                                     break;
 468                               }
 469                            }
 470                            else
 471                            {
 472                               PEG_TRACE_STRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
 473                                  "Damaged or uninitialized AsyncOpNode received.");
 474 mday            1.2        }
 475                         }
 476 kumpf           1.12    catch (const Exception& e)
 477 mday            1.2     {
 478 kumpf           1.12       PEG_TRACE_STRING(TRC_DISCARDED_DATA, Tracer::LEVEL2,
 479                               "Caught exception: \"" + e.getMessage() +
 480                                  "\".  Exiting handle_binary_message.");
 481                         }
 482                         catch (...)
 483                         {
 484                            PEG_TRACE_STRING(TRC_DISCARDED_DATA, Tracer::LEVEL2,
 485                               "Caught unrecognized exception.  Exiting handle_binary_message.");
 486 mday            1.2     }
 487                      
 488                         PEG_METHOD_EXIT();
 489                         return(0);
 490                      }
 491                      
 492                      // requests always go to the output queue 
 493                      void 
 494                      BinaryMessageHandler::_handleRequest(AsyncOpNode *op, Message *msg) 
 495                         throw()
 496                      {
 497                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 498 kumpf           1.12       "BinaryMessageHandler::_handleRequest(AsyncOpNode *, Message *)");
 499 mday            1.2  
 500                         AsyncRequest *async_request = static_cast<AsyncRequest *>(op->get_request());
 501                         
 502                         msg->_async = 0;
 503                         try 
 504                         {
 505                            _outputQueue->enqueue(msg) ;
 506                         }
 507                         catch(...)
 508                         {
 509                      
 510                         }
 511                         
 512                         delete async_request;
 513                         
 514                         _complete_op_node(op, ASYNC_OPSTATE_COMPLETE, 0, 0);
 515                         PEG_METHOD_EXIT();
 516                      }
 517                      
 518                      // responses have their destination queue id in the message
 519                      void 
 520 mday            1.2  BinaryMessageHandler::_handleResponse(AsyncOpNode *op, Message *msg)
 521                         throw()
 522                      {
 523                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 524                      		    "BinaryMessageHandler::_handleResponse(AsyncOpNode *, Message *)");
 525                         AsyncReply *async_reply = static_cast<AsyncReply *>(op->get_response());
 526                         msg->_async = 0;
 527                         delete async_reply;
 528                         
 529                         MessageQueue *dest = MessageQueue::lookup(((CIMRequestMessage *)msg)->queueIds.top());
 530                         if(dest == 0)
 531                         {
 532                            PEG_TRACE_STRING(TRC_BINARY_MSG_HANDLER, Tracer::LEVEL4,
 533                      		       "Bad or non-existent Queue ID for desination in legacy message.");
 534                            delete msg;
 535                         }
 536                         else
 537                         {
 538                            try
 539                            {
 540                      	 
 541 mday            1.2  	 dest->enqueue(msg);
 542                            }
 543                            catch(...)
 544                            {
 545                            }
 546                            
 547                         }
 548                         _complete_op_node(op, ASYNC_OPSTATE_COMPLETE, 0, 0);
 549                         PEG_METHOD_EXIT();
 550                      }
 551                      
 552                      void BinaryMessageHandler::handleCreateClassRequest(
 553                         AsyncOpNode *op, 
 554                         CIMCreateClassRequestMessage *msg) throw()
 555                      {
 556                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 557                      		    "BinaryMessageHandler::handleCreateClassRequest()");
 558                         _handleRequest(op, msg);
 559                         PEG_METHOD_EXIT();
 560                      }
 561                      
 562 mday            1.2        
 563                      void BinaryMessageHandler::handleGetClassRequest(
 564                         AsyncOpNode *op,
 565                         CIMGetClassRequestMessage *msg) throw()
 566                      {
 567                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 568                      		    "BinaryMessageHandler::handleGetClassRequest()");
 569                         _handleRequest(op, msg);
 570                         PEG_METHOD_EXIT();
 571                      }
 572                      
 573                            
 574                      void BinaryMessageHandler::handleModifyClassRequest(
 575                         AsyncOpNode *op, 
 576                         CIMModifyClassRequestMessage *msg) throw()
 577                      {
 578                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 579                      		    "BinaryMessageHandler::handleModifyClassRequest()");
 580                         _handleRequest(op, msg);
 581                         PEG_METHOD_EXIT();
 582                      }
 583 mday            1.2  
 584                      void BinaryMessageHandler::handleEnumerateClassNamesRequest(
 585                         AsyncOpNode *op,
 586                         CIMEnumerateClassNamesRequestMessage *msg) throw()
 587                      {
 588                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 589                      		    "BinaryMessageHandler::handleEnumerateClassNamesRequest()");
 590                         _handleRequest(op, msg);
 591                         PEG_METHOD_EXIT();
 592                      }
 593                      
 594                      void BinaryMessageHandler::handleEnumerateClassesRequest(
 595                         AsyncOpNode *op,
 596                         CIMEnumerateClassesRequestMessage *msg) throw()
 597                      {
 598                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 599                      		    "BinaryMessageHandler::handleEnumerateClassRequest()");
 600                         _handleRequest(op, msg);
 601                         PEG_METHOD_EXIT();
 602                      }
 603                      
 604 mday            1.2  
 605                      void BinaryMessageHandler::handleDeleteClassRequest(
 606                         AsyncOpNode *op,
 607                         CIMDeleteClassRequestMessage *msg) throw()
 608                      {
 609                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 610                      		    "BinaryMessageHandler::handleDeleteClassRequest()");
 611                         _handleRequest(op, msg);
 612                         PEG_METHOD_EXIT();
 613                      }
 614                      
 615                      void BinaryMessageHandler::handleCreateInstanceRequest(
 616                         AsyncOpNode *op,
 617                         CIMCreateInstanceRequestMessage *msg) throw()
 618                      {
 619                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 620                      		    "BinaryMessageHandler::handleCreateInstanceRequest()");
 621                         _handleRequest(op, msg);
 622                         PEG_METHOD_EXIT();
 623                      }
 624                      
 625 mday            1.2  void BinaryMessageHandler::handleGetInstanceRequest(
 626                         AsyncOpNode *op,
 627                         CIMGetInstanceRequestMessage *msg) throw()
 628                      {
 629                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 630                      		    "BinaryMessageHandler::handleGetInstanceRequest()");
 631                         _handleRequest(op, msg);
 632                         PEG_METHOD_EXIT();
 633                      }
 634                      
 635                      void BinaryMessageHandler::handleModifyInstanceRequest(
 636                         AsyncOpNode *op,
 637                         CIMModifyInstanceRequestMessage *msg) throw()
 638                      {
 639                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 640                      		    "BinaryMessageHandler::handleModifyInstanceRequest()");
 641                         _handleRequest(op, msg);
 642                         PEG_METHOD_EXIT();
 643                      }
 644                      
 645                      void BinaryMessageHandler::handleEnumerateInstanceNamesRequest(
 646 mday            1.2     AsyncOpNode *op,
 647                         CIMEnumerateInstanceNamesRequestMessage *msg) throw()
 648                      {
 649                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 650                      		    "BinaryMessageHandler::handleEnumerateInstanceNamesRequest()");
 651                         _handleRequest(op, msg);
 652                         PEG_METHOD_EXIT();
 653                      }
 654                      
 655                      void BinaryMessageHandler::handleEnumerateInstancesRequest(
 656                         AsyncOpNode *op,
 657                         CIMEnumerateInstancesRequestMessage *msg) throw()
 658                      {
 659                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 660                      		    "BinaryMessageHandler::handleEnumerateInstancesRequest()");
 661                         _handleRequest(op, msg);
 662                         PEG_METHOD_EXIT();
 663                      }
 664                      
 665                      void BinaryMessageHandler::handleDeleteInstanceRequest(
 666                         AsyncOpNode *op,
 667 mday            1.2     CIMDeleteInstanceRequestMessage *msg) throw()
 668                      {
 669                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 670                      		    "BinaryMessageHandler::handleDeleteInstanceRequest()");
 671                         _handleRequest(op, msg);
 672                         PEG_METHOD_EXIT();
 673                      }
 674                            
 675                      void BinaryMessageHandler::handleSetQualifierRequest(
 676                         AsyncOpNode *op,
 677                         CIMSetQualifierRequestMessage *msg) throw()
 678                      {
 679                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 680                      		    "BinaryMessageHandler::handleSetQualifierRequest()");
 681                         _handleRequest(op, msg);
 682                         PEG_METHOD_EXIT();
 683                      }
 684                            
 685                      void BinaryMessageHandler::handleGetQualifierRequest(
 686                         AsyncOpNode *op,
 687                         CIMGetQualifierRequestMessage *msg) throw()
 688 mday            1.2  {
 689                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 690                      		    "BinaryMessageHandler::handleGetQualifierRequest()");
 691                         _handleRequest(op, msg);
 692                         PEG_METHOD_EXIT();
 693                      }
 694                            
 695                      void BinaryMessageHandler::handleEnumerateQualifiersRequest(
 696                         AsyncOpNode *op,
 697                         CIMEnumerateQualifiersRequestMessage *msg) throw()
 698                      {
 699                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 700                      		    "BinaryMessageHandler::handleEnumerateQualifiersRequest()");
 701                         _handleRequest(op, msg);
 702                         PEG_METHOD_EXIT();
 703                      }
 704                            
 705                      void BinaryMessageHandler::handleDeleteQualifiersRequest(
 706                         AsyncOpNode *op,
 707                         CIMDeleteQualifierRequestMessage *msg) throw()
 708                      {
 709 mday            1.2     PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 710                      		    "BinaryMessageHandler::handleDeleteQualifiersRequest()");
 711                         _handleRequest(op, msg);
 712                         PEG_METHOD_EXIT();
 713                      }
 714                            
 715                      void BinaryMessageHandler::handleReferenceNamesRequest(
 716                         AsyncOpNode *op,
 717                         CIMReferenceNamesRequestMessage *msg) throw()
 718                      {
 719                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 720                      		    "BinaryMessageHandler::handleReferenceNamesRequest()");
 721                         _handleRequest(op, msg);
 722                         PEG_METHOD_EXIT();
 723                      }
 724                      
 725                      void BinaryMessageHandler::handleReferencesRequest(
 726                         AsyncOpNode *op,
 727                         CIMReferencesRequestMessage *msg) throw()
 728                      {
 729                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 730 mday            1.2  		    "BinaryMessageHandler::handleReferencesRequest()");
 731                         _handleRequest(op, msg);
 732                         PEG_METHOD_EXIT();
 733                      }
 734                      
 735                      void BinaryMessageHandler::handleAssociatorNamesRequest(
 736                         AsyncOpNode *op,
 737                         CIMAssociatorNamesRequestMessage *msg) throw()
 738                      {
 739                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 740                      		    "BinaryMessageHandler::handleAssociatorNamesRequest()");
 741                         _handleRequest(op, msg);
 742                         PEG_METHOD_EXIT();
 743                      }
 744                      
 745                      void BinaryMessageHandler::handleAssociatorsRequest(
 746                         AsyncOpNode *op,
 747                         CIMAssociatorsRequestMessage *msg) throw()
 748                      {
 749                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 750                      		    "BinaryMessageHandler::handleAssociatorsRequest()");
 751 mday            1.2     _handleRequest(op, msg);
 752                         PEG_METHOD_EXIT();
 753                      }
 754                      
 755                      void BinaryMessageHandler::handleGetPropertyRequest(
 756                         AsyncOpNode *op,
 757                         CIMGetPropertyRequestMessage *msg) throw()
 758                      {
 759                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 760                      		    "BinaryMessageHandler::handleGetPropertyRequest()");
 761                         _handleRequest(op, msg);
 762                         PEG_METHOD_EXIT();
 763                      }
 764                      
 765                      void BinaryMessageHandler::handleSetPropertyRequest(
 766                         AsyncOpNode *op,
 767                         CIMSetPropertyRequestMessage *msg) throw()
 768                      {
 769                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 770                      		    "BinaryMessageHandler::handleSetPropertyRequest()");
 771                         _handleRequest(op, msg);
 772 mday            1.2     PEG_METHOD_EXIT();
 773                      }
 774                      
 775                      void BinaryMessageHandler::handleExecQueryRequest(
 776                         AsyncOpNode *op,
 777                         CIMExecQueryRequestMessage *msg) throw()
 778                      {
 779                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 780                      		    "BinaryMessageHandler::handleExecQueryRequest()");
 781                         _handleRequest(op, msg);
 782                         PEG_METHOD_EXIT();
 783                      }
 784                       
 785                      void BinaryMessageHandler::handleInvokeMethodRequest(
 786                         AsyncOpNode *op,
 787                         CIMInvokeMethodRequestMessage *msg) throw()
 788                      {
 789                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 790                      		    "BinaryMessageHandler::handleInvokeMethodRequest()");
 791                         _handleRequest(op, msg);
 792                         PEG_METHOD_EXIT();
 793 mday            1.2  }
 794                            
 795                      // **** Response Messages **** //
 796                            
 797                      void BinaryMessageHandler::handleCreateClassResponse(
 798                         AsyncOpNode *op,
 799                         CIMCreateClassResponseMessage *msg) throw()
 800                      {
 801                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 802                      		    "BinaryMessageHandler::handleCreateClassResponse()");
 803                         _handleResponse(op, msg);
 804                         PEG_METHOD_EXIT();
 805                      }
 806                      
 807                      void BinaryMessageHandler::handleGetClassResponse(
 808                         AsyncOpNode *op,
 809                         CIMGetClassResponseMessage *msg) throw()
 810                      {
 811                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 812                      		    "BinaryMessageHandler::handleGetClassResponse()");
 813                         _handleResponse(op, msg);
 814 mday            1.2     PEG_METHOD_EXIT();
 815                      }
 816                      
 817                      void BinaryMessageHandler::handleModifyClassResponse(
 818                         AsyncOpNode *op,
 819                         CIMModifyClassResponseMessage *msg) throw()
 820                      {
 821                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 822                      		    "BinaryMessageHandler::handleModifyClassResponse()");
 823                         _handleResponse(op, msg);
 824                         PEG_METHOD_EXIT();
 825                      }
 826                            
 827                      void BinaryMessageHandler::handleEnumerateClassNamesResponse(
 828                         AsyncOpNode *op,
 829                         CIMEnumerateClassNamesResponseMessage *msg) throw()
 830                      {
 831                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 832                      		    "BinaryMessageHandler::handleEnumerateClassNamesResponse()");
 833                         _handleResponse(op, msg);
 834                         PEG_METHOD_EXIT();
 835 mday            1.2  }
 836                      
 837                      void BinaryMessageHandler::handleEnumerateClassesResponse(
 838                         AsyncOpNode *op,
 839                         CIMEnumerateClassesResponseMessage *msg) throw()
 840                      {
 841                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 842                      		    "BinaryMessageHandler::handleEnumerateClassesResponse()");
 843                         _handleResponse(op, msg);
 844                         PEG_METHOD_EXIT();
 845                      }
 846                      
 847                      void BinaryMessageHandler::handleDeleteClassResponse(
 848                         AsyncOpNode *op,
 849                         CIMDeleteClassResponseMessage *msg) throw()
 850                      {
 851                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 852                      		    "BinaryMessageHandler::handleDeleteClassResponse()");
 853                         _handleResponse(op, msg);
 854                         PEG_METHOD_EXIT();
 855                      }
 856 mday            1.2  
 857                      void BinaryMessageHandler::handleCreateInstanceResponse(
 858                         AsyncOpNode *op,
 859                         CIMCreateInstanceResponseMessage *msg) throw()
 860                      {
 861                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 862                      		    "BinaryMessageHandler::handleCreateInstanceResponse()");
 863                         _handleResponse(op, msg);
 864                         PEG_METHOD_EXIT();
 865                      }
 866                      
 867                      void BinaryMessageHandler::handleGetInstanceResponse(
 868                         AsyncOpNode *op,
 869                         CIMGetInstanceResponseMessage *msg) throw()
 870                      {
 871                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 872                      		    "BinaryMessageHandler::handleGetInstanceResponse()");
 873                         _handleResponse(op, msg);
 874                         PEG_METHOD_EXIT();
 875                      }
 876                      
 877 mday            1.2  void BinaryMessageHandler::handleModifyInstanceResponse(
 878                         AsyncOpNode *op,
 879                         CIMModifyInstanceResponseMessage *msg) throw()
 880                      {
 881                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 882                      		    "BinaryMessageHandler::handleModifyInstanceResponse()");
 883                         _handleResponse(op, msg);
 884                         PEG_METHOD_EXIT();
 885                      }
 886                      
 887                      void BinaryMessageHandler::handleEnumerateInstanceNamesResponse(
 888                         AsyncOpNode *op,
 889                         CIMEnumerateInstanceNamesResponseMessage *msg) throw()
 890                      {
 891                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 892                      		    "BinaryMessageHandler::handleEnumerateInstanceNamesResponse()");
 893                         _handleResponse(op, msg);
 894                         PEG_METHOD_EXIT();
 895                      }
 896                      
 897                      void BinaryMessageHandler::handleEnumerateInstancesResponse(
 898 mday            1.2     AsyncOpNode *op,
 899                         CIMEnumerateInstancesResponseMessage *msg) throw()
 900                      {
 901                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 902                      		    "BinaryMessageHandler::handleEnumerateInstancesResponse()");
 903                         _handleResponse(op, msg);
 904                         PEG_METHOD_EXIT();
 905                      }
 906                      
 907                      void BinaryMessageHandler::handleDeleteInstanceResponse(
 908                         AsyncOpNode *op,
 909                         CIMDeleteInstanceResponseMessage *msg) throw()
 910                      {
 911                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 912                      		    "BinaryMessageHandler::handleDeleteInstanceResponse()");
 913                         _handleResponse(op, msg);
 914                         PEG_METHOD_EXIT();
 915                      }
 916                      
 917                      void BinaryMessageHandler::handleGetPropertyResponse(
 918                         AsyncOpNode *op,
 919 mday            1.2     CIMGetPropertyResponseMessage *msg) throw()
 920                      {
 921                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 922                      		    "BinaryMessageHandler::handleGetPropertyResponse()");
 923                         _handleResponse(op, msg);
 924                         PEG_METHOD_EXIT();
 925                      }
 926                      
 927                      void BinaryMessageHandler::handleSetPropertyResponse(
 928                         AsyncOpNode *op,
 929                         CIMSetPropertyResponseMessage *msg) throw()
 930                      {
 931                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 932                      		    "BinaryMessageHandler::handleSetPropertyResponse()");
 933                         _handleResponse(op, msg);
 934                         PEG_METHOD_EXIT();
 935                      }
 936                      
 937                      
 938                      void BinaryMessageHandler::handleSetQualifierResponse(
 939                         AsyncOpNode *op,
 940 mday            1.2     CIMSetQualifierResponseMessage *msg) throw()
 941                      {
 942                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 943                      		    "BinaryMessageHandler::handleSetQualifierResponse()");
 944                         _handleResponse(op, msg);
 945                         PEG_METHOD_EXIT();
 946                      }
 947                      
 948                      void BinaryMessageHandler::handleGetQualifierResponse(
 949                         AsyncOpNode *op,
 950                         CIMGetQualifierResponseMessage *msg) throw()
 951                      {
 952                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 953                      		    "BinaryMessageHandler::handleGetQualifierResponse()");
 954                         _handleResponse(op, msg);
 955                         PEG_METHOD_EXIT();
 956                      }
 957                            
 958                      void BinaryMessageHandler::handleEnumerateQualifiersResponse(
 959                         AsyncOpNode *op,
 960                         CIMEnumerateQualifiersResponseMessage *msg) throw()
 961 mday            1.2  {
 962                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 963                      		    "BinaryMessageHandler::handleEnumerateQualifiersResponse()");
 964                         _handleResponse(op, msg);
 965                         PEG_METHOD_EXIT();
 966                      }
 967                      
 968                      void BinaryMessageHandler::handleDeleteQualifierResponse(
 969                         AsyncOpNode *op,
 970                         CIMDeleteQualifierResponseMessage *msg) throw()
 971                      {
 972                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 973                      		    "BinaryMessageHandler::handleDeleteQualifierResponse()");
 974                         _handleResponse(op, msg);
 975                         PEG_METHOD_EXIT();
 976                      }
 977                      
 978                      void BinaryMessageHandler::handleReferenceNamesResponse(
 979                         AsyncOpNode *op,
 980                         CIMReferenceNamesResponseMessage *msg) throw()
 981                      {
 982 mday            1.2     PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 983                      		    "BinaryMessageHandler::handleReferenceNamesResponse()");
 984                         _handleResponse(op, msg);
 985                         PEG_METHOD_EXIT();
 986                      }
 987                      
 988                      void BinaryMessageHandler::handleReferencesResponse(
 989                         AsyncOpNode *op,
 990                         CIMReferencesResponseMessage *msg) throw()
 991                      {
 992                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
 993                      		    "BinaryMessageHandler::handleReferencesResponse()");
 994                         _handleResponse(op, msg);
 995                         PEG_METHOD_EXIT();
 996                      }
 997                      
 998                      void BinaryMessageHandler::handleAssociatorNamesResponse(
 999                         AsyncOpNode *op,
1000                         CIMAssociatorNamesResponseMessage *msg) throw()
1001                      {
1002                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
1003 mday            1.2  		    "BinaryMessageHandler::handleAssociatorNamesResponse()");
1004                         _handleResponse(op, msg);
1005                         PEG_METHOD_EXIT();
1006                      }
1007                      
1008                      void BinaryMessageHandler::handleAssociatorsResponse(
1009                         AsyncOpNode *op,
1010                         CIMAssociatorsResponseMessage *msg) throw()
1011                      {
1012                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
1013                      		    "BinaryMessageHandler::handleAssociatorsResponse()");
1014                         _handleResponse(op, msg);
1015                         PEG_METHOD_EXIT();
1016                      }
1017                      
1018                      void BinaryMessageHandler::handleExecQueryResponse(
1019                         AsyncOpNode *op,
1020                         CIMExecQueryResponseMessage *msg) throw()
1021                      {
1022                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
1023                      		    "BinaryMessageHandler::handleExecQueryResponse()");
1024 mday            1.2     _handleResponse(op, msg);
1025                         PEG_METHOD_EXIT();
1026                      }
1027                      
1028                      
1029                      void BinaryMessageHandler::handleInvokeMethodResponse(
1030                         AsyncOpNode *op,
1031                         CIMInvokeMethodResponseMessage *msg) throw()
1032                      {
1033                         PEG_METHOD_ENTER(TRC_BINARY_MSG_HANDLER,
1034                      		    "BinaryMessageHandler::handleInvokeMethodResponse()");
1035                         _handleResponse(op, msg);
1036                         PEG_METHOD_EXIT();
1037                      }
1038                      
1039                      PEGASUS_NAMESPACE_END

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2