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

   1 martin 1.3 //%LICENSE////////////////////////////////////////////////////////////////
   2 martin 1.4 //
   3 martin 1.3 // Licensed to The Open Group (TOG) under one or more contributor license
   4            // agreements.  Refer to the OpenPegasusNOTICE.txt file distributed with
   5            // this work for additional information regarding copyright ownership.
   6            // Each contributor licenses this file to you under the OpenPegasus Open
   7            // Source License; you may not use this file except in compliance with the
   8            // License.
   9 martin 1.4 //
  10 martin 1.3 // Permission is hereby granted, free of charge, to any person obtaining a
  11            // copy of this software and associated documentation files (the "Software"),
  12            // to deal in the Software without restriction, including without limitation
  13            // the rights to use, copy, modify, merge, publish, distribute, sublicense,
  14            // and/or sell copies of the Software, and to permit persons to whom the
  15            // Software is furnished to do so, subject to the following conditions:
  16 martin 1.4 //
  17 martin 1.3 // The above copyright notice and this permission notice shall be included
  18            // in all copies or substantial portions of the Software.
  19 martin 1.4 //
  20 martin 1.3 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
  21 martin 1.4 // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
  22 martin 1.3 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
  23            // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
  24            // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
  25            // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
  26            // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  27 martin 1.4 //
  28 martin 1.3 //////////////////////////////////////////////////////////////////////////
  29 mike   1.1 //
  30            //%/////////////////////////////////////////////////////////////////////////////
  31            
  32            #include <Pegasus/Common/OperationContextInternal.h>
  33            #include "CIMBinMsgSerializer.h"
  34 thilo.boehm 1.9 #include "CIMInternalXmlEncoder.h"
  35 karl        1.19 #include <Pegasus/Common/Tracer.h>
  36 mike        1.1  
  37                  PEGASUS_NAMESPACE_BEGIN
  38                  
  39                  void CIMBinMsgSerializer::serialize(
  40 kumpf       1.5      CIMBuffer& out,
  41 mike        1.1      CIMMessage* cimMessage)
  42                  {
  43 karl        1.19     PEG_METHOD_ENTER(TRC_DISPATCHER, "CIMBinMsgSerializer::serialize");
  44                  
  45 mike        1.1      if (cimMessage == 0)
  46                          return;
  47                  
  48 karl        1.21     PEGASUS_DEBUG_ASSERT(cimMessage->valid());
  49                  
  50 karl        1.19     PEG_TRACE((TRC_DISPATCHER,  Tracer::LEVEL4,
  51 karl        1.20         "Serialize MessageId=%s type=%s binaryReq=%s"
  52                                         " binaryResp=%s iscomplete=%s internal=%s",
  53 karl        1.19         (const char*)cimMessage->messageId.getCString(),
  54                          MessageTypeToString(cimMessage->getType()),
  55                          boolToString(cimMessage->binaryRequest),
  56                          boolToString(cimMessage->binaryResponse),
  57                          boolToString(cimMessage->isComplete()),
  58                          boolToString(cimMessage->internalOperation)
  59                          ));
  60                  
  61 mike        1.1      // [messageId]
  62                      out.putString(cimMessage->messageId);
  63                  
  64 mike        1.2      // [binaryRequest]
  65                      out.putBoolean(cimMessage->binaryRequest);
  66                  
  67                      // [binaryResponse]
  68                      out.putBoolean(cimMessage->binaryResponse);
  69                  
  70 karl        1.19     // [internalOperation]
  71                      out.putBoolean(cimMessage->internalOperation);
  72                  
  73 mike        1.1      // [type]
  74                      out.putUint32(Uint32(cimMessage->getType()));
  75                  
  76                  #ifndef PEGASUS_DISABLE_PERFINST
  77                      // [serverStartTimeMicroseconds]
  78                      out.putUint64(cimMessage->getServerStartTime());
  79                      // [providerTimeMicroseconds]
  80                      out.putUint64(cimMessage->getProviderTime());
  81                  #endif
  82                  
  83                      // [isComplete]
  84                      out.putBoolean(cimMessage->isComplete());
  85                  
  86                      // [index]
  87                      out.putUint32(cimMessage->getIndex());
  88                  
  89                      // [operationContext]
  90                  
  91                      _serializeOperationContext(out, cimMessage->operationContext);
  92                  
  93                      // [CIMRequestMessage]
  94 mike        1.1  
  95                      CIMRequestMessage* req;
  96                  
  97                      if ((req = dynamic_cast<CIMRequestMessage*>(cimMessage)))
  98                      {
  99                          out.putPresent(true);
 100                          _putRequestMessage(out, req);
 101                      }
 102                      else
 103                          out.putPresent(false);
 104                  
 105                      // [CIMResponseMessage]
 106                  
 107                      CIMResponseMessage* rsp;
 108                  
 109                      if ((rsp = dynamic_cast<CIMResponseMessage*>(cimMessage)))
 110                      {
 111                          out.putPresent(true);
 112                          _putResponseMessage(out, rsp);
 113                      }
 114                      else
 115 mike        1.1          out.putPresent(false);
 116 karl        1.19 
 117                      PEG_METHOD_EXIT();
 118 mike        1.1  }
 119                  
 120                  void CIMBinMsgSerializer::_putRequestMessage(
 121                      CIMBuffer& out,
 122                      CIMRequestMessage* msg)
 123                  {
 124                      PEGASUS_ASSERT(msg != 0);
 125                  
 126                      // [queueIdStack]
 127                  
 128                      _serializeQueueIdStack(out, msg->queueIds);
 129                  
 130                      // [CIMOperationRequestMessage]
 131                  
 132                      CIMOperationRequestMessage* oreq;
 133                  
 134                      if ((oreq = dynamic_cast<CIMOperationRequestMessage*>(msg)))
 135                      {
 136                          out.putPresent(true);
 137                  
 138                          // [userInfo]
 139 mike        1.1          _serializeUserInfo(out, oreq->authType, oreq->userName);
 140                  
 141                          // [nameSpace]
 142                          _putNamespaceName(out, oreq->nameSpace);
 143                  
 144                          // [className]
 145                          _putName(out, oreq->className);
 146                  
 147                          // [providerType]
 148                          out.putUint32(oreq->providerType);
 149                  
 150                          // [message]
 151                  
 152                          switch (msg->getType())
 153                          {
 154                              case CIM_GET_INSTANCE_REQUEST_MESSAGE:
 155                                  _putGetInstanceRequestMessage(
 156                                      out, (CIMGetInstanceRequestMessage*)msg);
 157                                  break;
 158                              case CIM_DELETE_INSTANCE_REQUEST_MESSAGE:
 159                                  _putDeleteInstanceRequestMessage(
 160 mike        1.1                      out, (CIMDeleteInstanceRequestMessage*)msg);
 161                                  break;
 162                              case CIM_CREATE_INSTANCE_REQUEST_MESSAGE:
 163                                  _putCreateInstanceRequestMessage(
 164                                      out, (CIMCreateInstanceRequestMessage*)msg);
 165                                  break;
 166                              case CIM_MODIFY_INSTANCE_REQUEST_MESSAGE:
 167                                  _putModifyInstanceRequestMessage(
 168                                      out, (CIMModifyInstanceRequestMessage*)msg);
 169                                  break;
 170                              case CIM_ENUMERATE_INSTANCES_REQUEST_MESSAGE:
 171                                  _putEnumerateInstancesRequestMessage(
 172                                      out, (CIMEnumerateInstancesRequestMessage*)msg);
 173                                  break;
 174                              case CIM_ENUMERATE_INSTANCE_NAMES_REQUEST_MESSAGE:
 175 thilo.boehm 1.10                 // not implemented
 176 mike        1.1                  break;
 177                              case CIM_EXEC_QUERY_REQUEST_MESSAGE:
 178                                  _putExecQueryRequestMessage(
 179                                      out, (CIMExecQueryRequestMessage*)msg);
 180                                  break;
 181                              case CIM_GET_PROPERTY_REQUEST_MESSAGE:
 182                                  _putGetPropertyRequestMessage(
 183                                      out, (CIMGetPropertyRequestMessage*)msg);
 184                                  break;
 185                              case CIM_SET_PROPERTY_REQUEST_MESSAGE:
 186                                  _putSetPropertyRequestMessage(
 187                                      out, (CIMSetPropertyRequestMessage*)msg);
 188                                  break;
 189                              case CIM_ASSOCIATORS_REQUEST_MESSAGE:
 190                                  _putAssociatorsRequestMessage(
 191                                      out, (CIMAssociatorsRequestMessage*)msg);
 192                                  break;
 193                              case CIM_ASSOCIATOR_NAMES_REQUEST_MESSAGE:
 194                                  _putAssociatorNamesRequestMessage(
 195                                      out, (CIMAssociatorNamesRequestMessage*)msg);
 196                                  break;
 197 mike        1.1              case CIM_REFERENCES_REQUEST_MESSAGE:
 198                                  _putReferencesRequestMessage(
 199                                      out, (CIMReferencesRequestMessage*)msg);
 200                                  break;
 201                              case CIM_REFERENCE_NAMES_REQUEST_MESSAGE:
 202                                  _putReferenceNamesRequestMessage(
 203                                      out, (CIMReferenceNamesRequestMessage*)msg);
 204                                  break;
 205                              case CIM_INVOKE_METHOD_REQUEST_MESSAGE:
 206                                  _putInvokeMethodRequestMessage(
 207                                      out, (CIMInvokeMethodRequestMessage*)msg);
 208                                  break;
 209                  
 210                              default:
 211 dl.meetei   1.16                 PEGASUS_UNREACHABLE(PEGASUS_ASSERT(0);)
 212 mike        1.1          }
 213                      }
 214                      else
 215                          out.putPresent(false);
 216                  
 217                      // [CIMIndicationRequestMessage]
 218                  
 219                      CIMIndicationRequestMessage* ireq;
 220                  
 221                      if ((ireq = dynamic_cast<CIMIndicationRequestMessage*>(msg)))
 222                      {
 223                          out.putPresent(true);
 224                  
 225                          // [userInfo]
 226                          _serializeUserInfo(out, ireq->authType, ireq->userName);
 227                  
 228                          // [message]
 229                  
 230                          switch (msg->getType())
 231                          {
 232                              case CIM_CREATE_SUBSCRIPTION_REQUEST_MESSAGE:
 233 mike        1.1                  _putCreateSubscriptionRequestMessage(
 234                                      out, (CIMCreateSubscriptionRequestMessage*)msg);
 235                                  break;
 236                              case CIM_MODIFY_SUBSCRIPTION_REQUEST_MESSAGE:
 237                                  _putModifySubscriptionRequestMessage(
 238                                      out, (CIMModifySubscriptionRequestMessage*)msg);
 239                                  break;
 240                              case CIM_DELETE_SUBSCRIPTION_REQUEST_MESSAGE:
 241                                  _putDeleteSubscriptionRequestMessage(
 242                                      out, (CIMDeleteSubscriptionRequestMessage*)msg);
 243                                  break;
 244                              default:
 245 dl.meetei   1.16                 PEGASUS_UNREACHABLE(PEGASUS_ASSERT(0);)
 246 mike        1.1          }
 247                      }
 248                      else
 249                          out.putPresent(false);
 250                  
 251                      // [Other]
 252                  
 253                      if (!oreq && !ireq)
 254                      {
 255                          out.putPresent(true);
 256                  
 257                          switch (msg->getType())
 258                          {
 259                          case CIM_EXPORT_INDICATION_REQUEST_MESSAGE:
 260                              _putExportIndicationRequestMessage(
 261                                  out, (CIMExportIndicationRequestMessage*)msg);
 262                              break;
 263                          case CIM_PROCESS_INDICATION_REQUEST_MESSAGE:
 264                              _putProcessIndicationRequestMessage(
 265                                  out, (CIMProcessIndicationRequestMessage*)msg);
 266                              break;
 267 mike        1.1          case CIM_DISABLE_MODULE_REQUEST_MESSAGE:
 268                              _putDisableModuleRequestMessage(
 269                                  out, (CIMDisableModuleRequestMessage*)msg);
 270                              break;
 271                          case CIM_ENABLE_MODULE_REQUEST_MESSAGE:
 272                              _putEnableModuleRequestMessage(
 273                                  out, (CIMEnableModuleRequestMessage*)msg);
 274                              break;
 275                          case CIM_STOP_ALL_PROVIDERS_REQUEST_MESSAGE:
 276 venkat.puvvada 1.14             _putStopAllProvidersRequestMessage(
 277                                      out, (CIMStopAllProvidersRequestMessage*)msg);
 278 mike           1.1              break;
 279                             case CIM_INITIALIZE_PROVIDER_AGENT_REQUEST_MESSAGE:
 280                                 _putInitializeProviderAgentRequestMessage(
 281                                     out, (CIMInitializeProviderAgentRequestMessage*)msg);
 282                                 break;
 283                     
 284                             case CIM_NOTIFY_CONFIG_CHANGE_REQUEST_MESSAGE:
 285                                 _putNotifyConfigChangeRequestMessage(
 286                                     out, (CIMNotifyConfigChangeRequestMessage*)msg);
 287                                 break;
 288                     
 289                             case CIM_SUBSCRIPTION_INIT_COMPLETE_REQUEST_MESSAGE:
 290 thilo.boehm    1.10             // not implemented
 291 mike           1.1              break;
 292                     
 293 venkat.puvvada 1.7          case CIM_INDICATION_SERVICE_DISABLED_REQUEST_MESSAGE:
 294 thilo.boehm    1.10             // not implemented
 295 venkat.puvvada 1.7              break;
 296 thilo.boehm    1.9          case PROVAGT_GET_SCMOCLASS_REQUEST_MESSAGE:
 297                                 _putProvAgtGetScmoClassRequestMessage(
 298                                     out,(ProvAgtGetScmoClassRequestMessage *)msg);
 299                                 break;
 300 venkat.puvvada 1.7  
 301 mike           1.1          default:
 302 dl.meetei      1.16             PEGASUS_UNREACHABLE(PEGASUS_ASSERT(0);)
 303 mike           1.1          }
 304                         }
 305                         else
 306                             out.putPresent(false);
 307                     }
 308                     
 309                     void CIMBinMsgSerializer::_putResponseMessage(
 310                         CIMBuffer& out,
 311                         CIMResponseMessage* cimMessage)
 312                     {
 313                         PEGASUS_ASSERT(cimMessage != 0);
 314                     
 315                         // [queueIdStack]
 316                         _serializeQueueIdStack(out, cimMessage->queueIds);
 317                     
 318                         // [cimException]
 319                         _putException(out, cimMessage->cimException);
 320                     
 321                         // [message]
 322                     
 323                         switch (cimMessage->getType())
 324 mike           1.1      {
 325                             case CIM_GET_INSTANCE_RESPONSE_MESSAGE:
 326                                 _putGetInstanceResponseMessage(
 327                                     out, (CIMGetInstanceResponseMessage*)cimMessage);
 328                                 break;
 329                             case CIM_DELETE_INSTANCE_RESPONSE_MESSAGE:
 330 thilo.boehm    1.10             // not implemented
 331 mike           1.1              break;
 332                             case CIM_CREATE_INSTANCE_RESPONSE_MESSAGE:
 333                                 _putCreateInstanceResponseMessage(
 334                                     out, (CIMCreateInstanceResponseMessage*)cimMessage);
 335                                 break;
 336                             case CIM_MODIFY_INSTANCE_RESPONSE_MESSAGE:
 337 thilo.boehm    1.10             // not implemented
 338 mike           1.1              break;
 339                             case CIM_ENUMERATE_INSTANCES_RESPONSE_MESSAGE:
 340                                 _putEnumerateInstancesResponseMessage(
 341                                     out, (CIMEnumerateInstancesResponseMessage*)cimMessage);
 342                                 break;
 343                             case CIM_ENUMERATE_INSTANCE_NAMES_RESPONSE_MESSAGE:
 344                                 _putEnumerateInstanceNamesResponseMessage(
 345                                     out, (CIMEnumerateInstanceNamesResponseMessage*)cimMessage);
 346                                 break;
 347                             case CIM_EXEC_QUERY_RESPONSE_MESSAGE:
 348                                 _putExecQueryResponseMessage(
 349                                     out, (CIMExecQueryResponseMessage*)cimMessage);
 350                                 break;
 351                             case CIM_GET_PROPERTY_RESPONSE_MESSAGE:
 352                                 _putGetPropertyResponseMessage(
 353                                     out, (CIMGetPropertyResponseMessage*)cimMessage);
 354                                 break;
 355                             case CIM_SET_PROPERTY_RESPONSE_MESSAGE:
 356 thilo.boehm    1.10             // not implemented
 357 mike           1.1              break;
 358                             case CIM_ASSOCIATORS_RESPONSE_MESSAGE:
 359                                 _putAssociatorsResponseMessage(
 360                                     out, (CIMAssociatorsResponseMessage*)cimMessage);
 361                                 break;
 362                             case CIM_ASSOCIATOR_NAMES_RESPONSE_MESSAGE:
 363                                 _putAssociatorNamesResponseMessage(
 364                                     out, (CIMAssociatorNamesResponseMessage*)cimMessage);
 365                                 break;
 366                             case CIM_REFERENCES_RESPONSE_MESSAGE:
 367                                 _putReferencesResponseMessage(
 368                                     out, (CIMReferencesResponseMessage*)cimMessage);
 369                                 break;
 370                             case CIM_REFERENCE_NAMES_RESPONSE_MESSAGE:
 371                                 _putReferenceNamesResponseMessage(
 372                                     out, (CIMReferenceNamesResponseMessage*)cimMessage);
 373                                 break;
 374                             case CIM_INVOKE_METHOD_RESPONSE_MESSAGE:
 375                                 _putInvokeMethodResponseMessage(
 376                                     out, (CIMInvokeMethodResponseMessage*)cimMessage);
 377                                 break;
 378 mike           1.1          case CIM_CREATE_SUBSCRIPTION_RESPONSE_MESSAGE:
 379 thilo.boehm    1.10             // not implemented
 380 mike           1.1              break;
 381                             case CIM_MODIFY_SUBSCRIPTION_RESPONSE_MESSAGE:
 382 thilo.boehm    1.10             // not implemented
 383 mike           1.1              break;
 384                             case CIM_DELETE_SUBSCRIPTION_RESPONSE_MESSAGE:
 385 thilo.boehm    1.10             // not implemented
 386 mike           1.1              break;
 387                             case CIM_EXPORT_INDICATION_RESPONSE_MESSAGE:
 388 thilo.boehm    1.10             // not implemented
 389 mike           1.1              break;
 390                             case CIM_PROCESS_INDICATION_RESPONSE_MESSAGE:
 391 thilo.boehm    1.10             // not implemented
 392 mike           1.1              break;
 393                             case CIM_DISABLE_MODULE_RESPONSE_MESSAGE:
 394                                 _putDisableModuleResponseMessage(
 395                                     out, (CIMDisableModuleResponseMessage*)cimMessage);
 396                                 break;
 397                             case CIM_ENABLE_MODULE_RESPONSE_MESSAGE:
 398                                 _putEnableModuleResponseMessage(
 399                                     out, (CIMEnableModuleResponseMessage*)cimMessage);
 400                                 break;
 401                             case CIM_STOP_ALL_PROVIDERS_RESPONSE_MESSAGE:
 402 thilo.boehm    1.10             // not implemented
 403 mike           1.1              break;
 404                             case CIM_INITIALIZE_PROVIDER_AGENT_RESPONSE_MESSAGE:
 405 thilo.boehm    1.10             // not implemented
 406 mike           1.1              break;
 407                             case CIM_NOTIFY_CONFIG_CHANGE_RESPONSE_MESSAGE:
 408 thilo.boehm    1.10             // not implemented
 409 mike           1.1              break;
 410                             case CIM_SUBSCRIPTION_INIT_COMPLETE_RESPONSE_MESSAGE:
 411 thilo.boehm    1.10             // not implemented
 412 mike           1.1              break;
 413 venkat.puvvada 1.7          case CIM_INDICATION_SERVICE_DISABLED_RESPONSE_MESSAGE:
 414 thilo.boehm    1.10             // not implemented
 415 venkat.puvvada 1.7              break;
 416 thilo.boehm    1.9          case PROVAGT_GET_SCMOCLASS_RESPONSE_MESSAGE:
 417                                 _putProvAgtGetScmoClassResponseMessage(
 418                                     out,
 419                                     (ProvAgtGetScmoClassResponseMessage *)
 420                                     cimMessage);
 421                                 break;
 422 mike           1.1  
 423                             default:
 424 dl.meetei      1.16             PEGASUS_UNREACHABLE(PEGASUS_ASSERT(0);)
 425 mike           1.1      }
 426                     }
 427                     
 428                     void CIMBinMsgSerializer::_serializeUserInfo(
 429                         CIMBuffer& out,
 430                         const String& authType,
 431                         const String& userName)
 432                     {
 433                         out.putString(authType);
 434                         out.putString(userName);
 435                     }
 436                     
 437                     void CIMBinMsgSerializer::_serializeQueueIdStack(
 438                         CIMBuffer& out,
 439                         const QueueIdStack& stack)
 440                     {
 441                         out.putUint32(stack.size());
 442                     
 443                         for (Uint32 i = 0; i < stack.size(); i++)
 444                             out.putUint32(stack[i]);
 445                     }
 446 mike           1.1  
 447                     void CIMBinMsgSerializer::_serializeOperationContext(
 448                         CIMBuffer& out,
 449                         const OperationContext& operationContext)
 450                     {
 451                         // [IdentityContainer]
 452                     
 453                         if (operationContext.contains(IdentityContainer::NAME))
 454                         {
 455                             out.putPresent(true);
 456                     
 457                             const IdentityContainer container =
 458                                 operationContext.get(IdentityContainer::NAME);
 459                     
 460                             out.putString(container.getUserName());
 461                         }
 462                         else
 463                             out.putPresent(false);
 464                     
 465                         // [SubscriptionInstanceContainer]
 466                     
 467 mike           1.1      if (operationContext.contains(SubscriptionInstanceContainer::NAME))
 468                         {
 469                             out.putPresent(true);
 470                     
 471                             const SubscriptionInstanceContainer container =
 472                                 operationContext.get(SubscriptionInstanceContainer::NAME);
 473                     
 474                             _putInstance(out, container.getInstance());
 475                         }
 476                         else
 477                             out.putPresent(false);
 478                     
 479                         // [SubscriptionFilterConditionContainer]
 480                     
 481                         if (operationContext.contains(SubscriptionFilterConditionContainer::NAME))
 482                         {
 483                             out.putPresent(true);
 484                     
 485                             const SubscriptionFilterConditionContainer container =
 486                                 operationContext.get(SubscriptionFilterConditionContainer::NAME);
 487                     
 488 mike           1.1          out.putString(container.getFilterCondition());
 489                             out.putString(container.getQueryLanguage());
 490                         }
 491                         else
 492                             out.putPresent(false);
 493                     
 494                         // [SubscriptionFilterQueryContainer]
 495                     
 496                         if (operationContext.contains(SubscriptionFilterQueryContainer::NAME))
 497                         {
 498                             out.putPresent(true);
 499                     
 500                             const SubscriptionFilterQueryContainer container =
 501                                 operationContext.get(SubscriptionFilterQueryContainer::NAME);
 502                     
 503                             out.putString(container.getFilterQuery());
 504                             out.putString(container.getQueryLanguage());
 505                             out.putString(container.getSourceNameSpace().getString());
 506                         }
 507                         else
 508                             out.putPresent(false);
 509 mike           1.1  
 510                         // [SubscriptionInstanceNamesContainer]
 511                     
 512                         if (operationContext.contains(SubscriptionInstanceNamesContainer::NAME))
 513                         {
 514                             out.putPresent(true);
 515                     
 516                             const SubscriptionInstanceNamesContainer container =
 517                                 operationContext.get(SubscriptionInstanceNamesContainer::NAME);
 518                     
 519                             out.putObjectPathA(container.getInstanceNames());
 520                         }
 521                         else
 522                             out.putPresent(false);
 523                     
 524                         // [TimeoutContainer]
 525                     
 526                         if (operationContext.contains(TimeoutContainer::NAME))
 527                         {
 528                             out.putPresent(true);
 529                     
 530 mike           1.1          const TimeoutContainer container =
 531                                 operationContext.get(TimeoutContainer::NAME);
 532                     
 533                             out.putUint32(container.getTimeOut());
 534                         }
 535                         else
 536                             out.putPresent(false);
 537                     
 538                         // [AcceptLanguageListContainer]
 539                     
 540                         if (operationContext.contains(AcceptLanguageListContainer::NAME))
 541                         {
 542                             out.putPresent(true);
 543                     
 544                             const AcceptLanguageListContainer container =
 545                                 operationContext.get(AcceptLanguageListContainer::NAME);
 546                     
 547                             _serializeAcceptLanguageList(out, container.getLanguages());
 548                         }
 549                         else
 550                             out.putPresent(false);
 551 mike           1.1  
 552                         // [ContentLanguageListContainer]
 553                     
 554                         if (operationContext.contains(ContentLanguageListContainer::NAME))
 555                         {
 556                             out.putPresent(true);
 557                     
 558                             const ContentLanguageListContainer container =
 559                                 operationContext.get(ContentLanguageListContainer::NAME);
 560                     
 561                             _serializeContentLanguageList(out, container.getLanguages());
 562                         }
 563                         else
 564                             out.putPresent(false);
 565                     
 566                         // [SnmpTrapOidContainer]
 567                     
 568                         if (operationContext.contains(SnmpTrapOidContainer::NAME))
 569                         {
 570                             out.putPresent(true);
 571                     
 572 mike           1.1          const SnmpTrapOidContainer container =
 573                                 operationContext.get(SnmpTrapOidContainer::NAME);
 574                     
 575                             out.putString(container.getSnmpTrapOid());
 576                         }
 577                         else
 578                             out.putPresent(false);
 579                     
 580                         // [LocaleContainer]
 581                     
 582                         if (operationContext.contains(LocaleContainer::NAME))
 583                         {
 584                             out.putPresent(true);
 585                     
 586                             const LocaleContainer container =
 587                                 operationContext.get(LocaleContainer::NAME);
 588                     
 589                             out.putString(container.getLanguageId());
 590                         }
 591                         else
 592                             out.putPresent(false);
 593 mike           1.1  
 594                         // [ProviderIdContainer]
 595                     
 596                         if (operationContext.contains(ProviderIdContainer::NAME))
 597                         {
 598                             out.putPresent(true);
 599                     
 600                             const ProviderIdContainer container =
 601                                 operationContext.get(ProviderIdContainer::NAME);
 602                     
 603                             _putInstance(out, container.getModule());
 604                             _putInstance(out, container.getProvider());
 605                             out.putBoolean(container.isRemoteNameSpace());
 606                             out.putString(container.getRemoteInfo());
 607                             out.putString(container.getProvMgrPath());
 608                         }
 609                         else
 610                             out.putPresent(false);
 611                     
 612                         // [CachedClassDefinitionContainer]
 613                     
 614 mike           1.1      if (operationContext.contains(CachedClassDefinitionContainer::NAME))
 615                         {
 616                             out.putPresent(true);
 617                     
 618                             const CachedClassDefinitionContainer container =
 619                                 operationContext.get(CachedClassDefinitionContainer::NAME);
 620                     
 621                             CIMConstClass ccc = container.getClass();
 622                             out.putClass(*((CIMClass*)(void*)&ccc));
 623                         }
 624                         else
 625                             out.putPresent(false);
 626 karl           1.18 
 627 marek          1.17     // [UserRoleContainer]
 628                     
 629                         if (operationContext.contains(UserRoleContainer::NAME))
 630                         {
 631                             out.putPresent(true);
 632                     
 633                             const UserRoleContainer container =
 634                                 operationContext.get(UserRoleContainer::NAME);
 635                     
 636                             out.putString(container.getUserRole());
 637                         }
 638                         else
 639                             out.putPresent(false);
 640                     
 641 mike           1.1  }
 642                     
 643                     void CIMBinMsgSerializer::_serializeContentLanguageList(
 644                         CIMBuffer& out,
 645                         const ContentLanguageList& contentLanguages)
 646                     {
 647                         out.putUint32(contentLanguages.size());
 648                     
 649                         for (Uint32 i = 0; i < contentLanguages.size(); i++)
 650                             out.putString(contentLanguages.getLanguageTag(i).toString());
 651                     }
 652                     
 653                     void CIMBinMsgSerializer::_serializeAcceptLanguageList(
 654                         CIMBuffer& out,
 655                         const AcceptLanguageList& acceptLanguages)
 656                     {
 657                         out.putUint32(acceptLanguages.size());
 658                     
 659                         for (Uint32 i = 0; i < acceptLanguages.size(); i++)
 660                         {
 661                             out.putString(acceptLanguages.getLanguageTag(i).toString());
 662 mike           1.1          out.putReal32(acceptLanguages.getQualityValue(i));
 663                         }
 664                     }
 665                     
 666                     void CIMBinMsgSerializer::_putException(
 667                         CIMBuffer& out,
 668                         const CIMException& cimException)
 669                     {
 670                         TraceableCIMException e(cimException);
 671                     
 672                         out.putUint32(Uint32(e.getCode()));
 673                         out.putString(e.getMessage());
 674                         out.putString(e.getCIMMessage());
 675                         out.putString(e.getFile());
 676                         out.putUint32(e.getLine());
 677                         _serializeContentLanguageList(out, e.getContentLanguages());
 678                     }
 679                     
 680                     void CIMBinMsgSerializer::_putPropertyList(
 681                         CIMBuffer& out,
 682                         const CIMPropertyList& cimPropertyList)
 683 mike           1.1  {
 684                         out.putPropertyList(cimPropertyList);
 685                     }
 686                     
 687                     void CIMBinMsgSerializer::_putObjectPath(
 688                         CIMBuffer& out,
 689                         const CIMObjectPath& cimObjectPath)
 690                     {
 691                         out.putObjectPath(cimObjectPath);
 692                     }
 693                     
 694                     void CIMBinMsgSerializer::_putInstance(
 695                         CIMBuffer& out,
 696                         const CIMInstance& cimInstance)
 697                     {
 698                         out.putInstance(cimInstance);
 699                     }
 700                     
 701                     void CIMBinMsgSerializer::_putNamespaceName(
 702                         CIMBuffer& out,
 703                         const CIMNamespaceName& cimNamespaceName)
 704 mike           1.1  {
 705                         out.putString(cimNamespaceName.getString());
 706                     }
 707                     
 708                     void CIMBinMsgSerializer::_putName(
 709                         CIMBuffer& out,
 710                         const CIMName& cimName)
 711                     {
 712                         out.putString(cimName.getString());
 713                     }
 714                     
 715                     void CIMBinMsgSerializer::_putObject(
 716                         CIMBuffer& out,
 717                         const CIMObject& object)
 718                     {
 719                         if (object.isUninitialized())
 720                             out.putPresent(false);
 721                         else
 722                         {
 723                             out.putPresent(true);
 724                             out.putObject(object);
 725 mike           1.1      }
 726                     }
 727                     
 728                     void CIMBinMsgSerializer::_putParamValue(
 729                         CIMBuffer& out,
 730                         const CIMParamValue& paramValue)
 731                     {
 732                         out.putParamValue(paramValue);
 733                     }
 734                     
 735                     void CIMBinMsgSerializer::_putGetInstanceRequestMessage(
 736                         CIMBuffer& out,
 737                         CIMGetInstanceRequestMessage* msg)
 738                     {
 739                         _putObjectPath(out, msg->instanceName);
 740                         out.putBoolean(msg->includeQualifiers);
 741                         out.putBoolean(msg->includeClassOrigin);
 742                         _putPropertyList(out, msg->propertyList);
 743                     }
 744                     
 745                     void CIMBinMsgSerializer::_putDeleteInstanceRequestMessage(
 746 mike           1.1      CIMBuffer& out,
 747                         CIMDeleteInstanceRequestMessage* msg)
 748                     {
 749                         _putObjectPath(out, msg->instanceName);
 750                     }
 751                     
 752                     void CIMBinMsgSerializer::_putCreateInstanceRequestMessage(
 753                         CIMBuffer& out,
 754                         CIMCreateInstanceRequestMessage* msg)
 755                     {
 756                         _putInstance(out, msg->newInstance);
 757                     }
 758                     
 759                     void CIMBinMsgSerializer::_putModifyInstanceRequestMessage(
 760                         CIMBuffer& out,
 761                         CIMModifyInstanceRequestMessage* msg)
 762                     {
 763                         _putInstance(out, msg->modifiedInstance);
 764                         out.putBoolean(msg->includeQualifiers);
 765                         _putPropertyList(out, msg->propertyList);
 766                     }
 767 mike           1.1  
 768                     void CIMBinMsgSerializer::_putEnumerateInstancesRequestMessage(
 769                         CIMBuffer& out,
 770                         CIMEnumerateInstancesRequestMessage* msg)
 771                     {
 772                         out.putBoolean(msg->deepInheritance);
 773                         out.putBoolean(msg->includeQualifiers);
 774                         out.putBoolean(msg->includeClassOrigin);
 775                         _putPropertyList(out, msg->propertyList);
 776                     }
 777                     
 778                     void CIMBinMsgSerializer::_putExecQueryRequestMessage(
 779                         CIMBuffer& out,
 780                         CIMExecQueryRequestMessage* msg)
 781                     {
 782                         out.putString(msg->queryLanguage);
 783                         out.putString(msg->query);
 784                     }
 785                     
 786                     void CIMBinMsgSerializer::_putAssociatorsRequestMessage(
 787                         CIMBuffer& out,
 788 mike           1.1      CIMAssociatorsRequestMessage* msg)
 789                     {
 790                         _putObjectPath(out, msg->objectName);
 791                         _putName(out, msg->assocClass);
 792                         _putName(out, msg->resultClass);
 793                         out.putString(msg->role);
 794                         out.putString(msg->resultRole);
 795                         out.putBoolean(msg->includeQualifiers);
 796                         out.putBoolean(msg->includeClassOrigin);
 797                         _putPropertyList(out, msg->propertyList);
 798                     }
 799                     
 800                     void CIMBinMsgSerializer::_putAssociatorNamesRequestMessage(
 801                         CIMBuffer& out,
 802                         CIMAssociatorNamesRequestMessage* msg)
 803                     {
 804                         _putObjectPath(out, msg->objectName);
 805                         _putName(out, msg->assocClass);
 806                         _putName(out, msg->resultClass);
 807                         out.putString(msg->role);
 808                         out.putString(msg->resultRole);
 809 mike           1.1  }
 810                     
 811                     void CIMBinMsgSerializer::_putReferencesRequestMessage(
 812                         CIMBuffer& out,
 813                         CIMReferencesRequestMessage* msg)
 814                     {
 815                         _putObjectPath(out, msg->objectName);
 816                         _putName(out, msg->resultClass);
 817                         out.putString(msg->role);
 818                         out.putBoolean(msg->includeQualifiers);
 819                         out.putBoolean(msg->includeClassOrigin);
 820                         _putPropertyList(out, msg->propertyList);
 821                     }
 822                     
 823                     void CIMBinMsgSerializer::_putReferenceNamesRequestMessage(
 824                         CIMBuffer& out,
 825                         CIMReferenceNamesRequestMessage* msg)
 826                     {
 827                         _putObjectPath(out, msg->objectName);
 828                         _putName(out, msg->resultClass);
 829                         out.putString(msg->role);
 830 mike           1.1  }
 831                     
 832                     void CIMBinMsgSerializer::_putGetPropertyRequestMessage(
 833                         CIMBuffer& out,
 834                         CIMGetPropertyRequestMessage* msg)
 835                     {
 836                         _putObjectPath(out, msg->instanceName);
 837                         _putName(out, msg->propertyName);
 838                     }
 839                     
 840                     void CIMBinMsgSerializer::_putSetPropertyRequestMessage(
 841                         CIMBuffer& out,
 842                         CIMSetPropertyRequestMessage* msg)
 843                     {
 844                         _putObjectPath(out, msg->instanceName);
 845                     
 846                         _putParamValue(out,
 847                             CIMParamValue(msg->propertyName.getString(), msg->newValue, true));
 848                     }
 849                     
 850                     void CIMBinMsgSerializer::_putInvokeMethodRequestMessage(
 851 mike           1.1      CIMBuffer& out,
 852                         CIMInvokeMethodRequestMessage* msg)
 853                     {
 854                         _putObjectPath(out, msg->instanceName);
 855                         _putName(out, msg->methodName);
 856                         out.putParamValueA(msg->inParameters);
 857                     }
 858                     
 859                     void CIMBinMsgSerializer::_putCreateSubscriptionRequestMessage(
 860                         CIMBuffer& out,
 861                         CIMCreateSubscriptionRequestMessage* msg)
 862                     {
 863                         _putNamespaceName(out, msg->nameSpace);
 864                         _putInstance(out, msg->subscriptionInstance);
 865                         out.putNameA(msg->classNames);
 866                         _putPropertyList(out, msg->propertyList);
 867                         out.putUint16(msg->repeatNotificationPolicy);
 868                         out.putString(msg->query);
 869                     }
 870                     
 871                     void CIMBinMsgSerializer::_putModifySubscriptionRequestMessage(
 872 mike           1.1      CIMBuffer& out,
 873                         CIMModifySubscriptionRequestMessage* msg)
 874                     {
 875                         _putNamespaceName(out, msg->nameSpace);
 876                         _putInstance(out, msg->subscriptionInstance);
 877                         out.putNameA(msg->classNames);
 878                         _putPropertyList(out, msg->propertyList);
 879                         out.putUint16(msg->repeatNotificationPolicy);
 880                         out.putString(msg->query);
 881                     }
 882                     
 883                     void CIMBinMsgSerializer::_putDeleteSubscriptionRequestMessage(
 884                         CIMBuffer& out,
 885                         CIMDeleteSubscriptionRequestMessage* msg)
 886                     {
 887                         _putNamespaceName(out, msg->nameSpace);
 888                         _putInstance(out, msg->subscriptionInstance);
 889                         out.putNameA(msg->classNames);
 890                     }
 891                     
 892                     void CIMBinMsgSerializer::_putExportIndicationRequestMessage(
 893 mike           1.1      CIMBuffer& out,
 894                         CIMExportIndicationRequestMessage* msg)
 895                     {
 896                         _serializeUserInfo(out, msg->authType, msg->userName);
 897                         out.putString(msg->destinationPath);
 898                         _putInstance(out, msg->indicationInstance);
 899                     }
 900                     
 901                     void CIMBinMsgSerializer::_putProcessIndicationRequestMessage(
 902                         CIMBuffer& out,
 903                         CIMProcessIndicationRequestMessage* msg)
 904                     {
 905                         _putNamespaceName(out, msg->nameSpace);
 906                         _putInstance(out, msg->indicationInstance);
 907                         out.putObjectPathA(msg->subscriptionInstanceNames);
 908                         _putInstance(out, msg->provider);
 909 venkat.puvvada 1.15     out.putUint32(msg->timeoutMilliSec);
 910 mike           1.1  }
 911                     
 912                     void CIMBinMsgSerializer::_putDisableModuleRequestMessage(
 913                         CIMBuffer& out,
 914                         CIMDisableModuleRequestMessage* msg)
 915                     {
 916                         _serializeUserInfo(out, msg->authType, msg->userName);
 917                         _putInstance(out, msg->providerModule);
 918                         out.putInstanceA(msg->providers);
 919                         out.putBoolean(msg->disableProviderOnly);
 920                         out.putBooleanA(msg->indicationProviders);
 921                     }
 922                     
 923                     void CIMBinMsgSerializer::_putEnableModuleRequestMessage(
 924                         CIMBuffer& out,
 925                         CIMEnableModuleRequestMessage* msg)
 926                     {
 927                         _serializeUserInfo(out, msg->authType, msg->userName);
 928                         _putInstance(out, msg->providerModule);
 929                     }
 930                     
 931 mike           1.1  void CIMBinMsgSerializer::_putInitializeProviderAgentRequestMessage(
 932                         CIMBuffer& out,
 933                         CIMInitializeProviderAgentRequestMessage* msg)
 934                     {
 935                         out.putString(msg->pegasusHome);
 936                         out.putUint32(msg->configProperties.size());
 937                     
 938                         for (Uint32 i = 0; i < msg->configProperties.size(); i++)
 939                         {
 940                             out.putString(msg->configProperties[i].first);
 941                             out.putString(msg->configProperties[i].second);
 942                         }
 943                     
 944                         out.putBoolean(msg->bindVerbose);
 945                         out.putBoolean(msg->subscriptionInitComplete);
 946                     }
 947                     
 948                     void CIMBinMsgSerializer::_putNotifyConfigChangeRequestMessage(
 949                         CIMBuffer& out,
 950                         CIMNotifyConfigChangeRequestMessage* msg)
 951                     {
 952 mike           1.1      out.putString(msg->propertyName);
 953                         out.putString(msg->newPropertyValue);
 954                         out.putBoolean(msg->currentValueModified);
 955                     }
 956                     
 957 thilo.boehm    1.9  void CIMBinMsgSerializer::_putProvAgtGetScmoClassRequestMessage(
 958                         CIMBuffer& out,
 959                         ProvAgtGetScmoClassRequestMessage* msg)
 960                     {
 961 venkat.puvvada 1.13     out.putString(msg->messageId);
 962 thilo.boehm    1.9      out.putNamespaceName(msg->nameSpace);
 963 karl           1.18     out.putName(msg->className);
 964 thilo.boehm    1.9  }
 965                     
 966 venkat.puvvada 1.14 void CIMBinMsgSerializer::_putStopAllProvidersRequestMessage(
 967                         CIMBuffer& out,
 968                         CIMStopAllProvidersRequestMessage *msg)
 969                     {
 970                         out.putUint32(msg->shutdownTimeout);
 971                     }
 972 thilo.boehm    1.9  
 973 mike           1.1  void CIMBinMsgSerializer::_putGetInstanceResponseMessage(
 974                         CIMBuffer& out,
 975                         CIMGetInstanceResponseMessage* msg)
 976                     {
 977 mike           1.2      if (msg->binaryResponse)
 978                         {
 979                             CIMBuffer data(4096);
 980 thilo.boehm    1.9          msg->getResponseData().encodeBinaryResponse(data);
 981 karl           1.12         out.putUint32((Uint32)data.size());
 982 mike           1.2          out.putBytes(data.getData(), data.size());
 983                         }
 984                         else
 985                         {
 986 thilo.boehm    1.9          msg->getResponseData().encodeInternalXmlResponse(out);
 987 mike           1.2      }
 988 mike           1.1  }
 989                     
 990                     void CIMBinMsgSerializer::_putCreateInstanceResponseMessage(
 991                         CIMBuffer& out,
 992                         CIMCreateInstanceResponseMessage* msg)
 993                     {
 994                         _putObjectPath(out, msg->instanceName);
 995                     }
 996                     
 997                     void CIMBinMsgSerializer::_putEnumerateInstancesResponseMessage(
 998                         CIMBuffer& out,
 999                         CIMEnumerateInstancesResponseMessage* msg)
1000                     {
1001 mike           1.2      if (msg->binaryResponse)
1002 mike           1.1      {
1003 mike           1.2          CIMBuffer data(16 * 4096);
1004 thilo.boehm    1.9          msg->getResponseData().encodeBinaryResponse(data);
1005 karl           1.12         out.putUint32((Uint32)data.size());
1006 mike           1.2          out.putBytes(data.getData(), data.size());
1007 mike           1.1      }
1008 mike           1.2      else
1009                         {
1010 thilo.boehm    1.9          msg->getResponseData().encodeInternalXmlResponse(out);
1011 mike           1.2      }
1012 mike           1.1  }
1013                     
1014                     void CIMBinMsgSerializer::_putEnumerateInstanceNamesResponseMessage(
1015                         CIMBuffer& out,
1016                         CIMEnumerateInstanceNamesResponseMessage* msg)
1017                     {
1018 thilo.boehm    1.9      CIMBuffer data(16 * 4096);
1019                         msg->getResponseData().encodeBinaryResponse(data);
1020 karl           1.12     out.putUint32((Uint32)data.size());
1021 thilo.boehm    1.9      out.putBytes(data.getData(), data.size());
1022 mike           1.1  }
1023                     
1024                     void CIMBinMsgSerializer::_putExecQueryResponseMessage(
1025                         CIMBuffer& out,
1026                         CIMExecQueryResponseMessage* msg)
1027                     {
1028 r.kieninger    1.8      if (msg->binaryResponse)
1029                         {
1030                             CIMBuffer data(16 * 4096);
1031 thilo.boehm    1.9          msg->getResponseData().encodeBinaryResponse(data);
1032 karl           1.12         out.putUint32((Uint32)data.size());
1033 r.kieninger    1.8          out.putBytes(data.getData(), data.size());
1034                         }
1035                         else
1036                         {
1037 thilo.boehm    1.9          msg->getResponseData().encodeInternalXmlResponse(out);
1038 r.kieninger    1.8      }
1039 mike           1.1  }
1040                     
1041                     void CIMBinMsgSerializer::_putAssociatorsResponseMessage(
1042                         CIMBuffer& out,
1043                         CIMAssociatorsResponseMessage* msg)
1044                     {
1045 r.kieninger    1.8      if (msg->binaryResponse)
1046                         {
1047                             CIMBuffer data(16 * 4096);
1048 thilo.boehm    1.9          msg->getResponseData().encodeBinaryResponse(data);
1049 karl           1.12         out.putUint32((Uint32)data.size());
1050 r.kieninger    1.8          out.putBytes(data.getData(), data.size());
1051                         }
1052                         else
1053                         {
1054 karl           1.19         msg->getResponseData().encodeInternalXmlResponse(out,
1055                                 msg->internalOperation);
1056 r.kieninger    1.8      }
1057 mike           1.1  }
1058                     
1059                     void CIMBinMsgSerializer::_putAssociatorNamesResponseMessage(
1060                         CIMBuffer& out,
1061                         CIMAssociatorNamesResponseMessage* msg)
1062                     {
1063 thilo.boehm    1.9      CIMBuffer data(16 * 4096);
1064                         msg->getResponseData().encodeBinaryResponse(data);
1065 karl           1.12     out.putUint32((Uint32)data.size());
1066 thilo.boehm    1.9      out.putBytes(data.getData(), data.size());
1067 mike           1.1  }
1068                     
1069                     void CIMBinMsgSerializer::_putReferencesResponseMessage(
1070                         CIMBuffer& out,
1071                         CIMReferencesResponseMessage* msg)
1072                     {
1073 venkat.puvvada 1.11     if (msg->binaryResponse)
1074                         {
1075                             CIMBuffer data(16 * 4096);
1076                             msg->getResponseData().encodeBinaryResponse(data);
1077 karl           1.12         out.putUint32((Uint32)data.size());
1078 venkat.puvvada 1.11         out.putBytes(data.getData(), data.size());
1079                         }
1080                         else
1081                         {
1082 karl           1.19         msg->getResponseData().encodeInternalXmlResponse(out,
1083                                 msg->internalOperation);
1084 venkat.puvvada 1.11     }
1085 mike           1.1  }
1086                     
1087                     void CIMBinMsgSerializer::_putReferenceNamesResponseMessage(
1088                         CIMBuffer& out,
1089                         CIMReferenceNamesResponseMessage* msg)
1090                     {
1091 thilo.boehm    1.9      CIMBuffer data(16 * 4096);
1092                         msg->getResponseData().encodeBinaryResponse(data);
1093 karl           1.12     out.putUint32((Uint32)data.size());
1094 thilo.boehm    1.9      out.putBytes(data.getData(), data.size());
1095 mike           1.1  }
1096                     
1097                     void CIMBinMsgSerializer::_putGetPropertyResponseMessage(
1098                         CIMBuffer& out,
1099                         CIMGetPropertyResponseMessage* msg)
1100                     {
1101 kumpf          1.5      _putParamValue(out, CIMParamValue(String("ignore"),
1102 mike           1.1          msg->value, true));
1103                     }
1104                     
1105                     void CIMBinMsgSerializer::_putInvokeMethodResponseMessage(
1106                         CIMBuffer& out,
1107                         CIMInvokeMethodResponseMessage* msg)
1108                     {
1109                         _putParamValue(out,
1110                             CIMParamValue(String("ignore"), msg->retValue, true));
1111                         out.putParamValueA(msg->outParameters);
1112                         _putName(out, msg->methodName);
1113                     }
1114                     
1115                     void CIMBinMsgSerializer::_putDisableModuleResponseMessage(
1116                         CIMBuffer& out,
1117                         CIMDisableModuleResponseMessage* msg)
1118                     {
1119                         out.putUint16A(msg->operationalStatus);
1120                     }
1121                     
1122                     void CIMBinMsgSerializer::_putEnableModuleResponseMessage(
1123 mike           1.1      CIMBuffer& out,
1124                         CIMEnableModuleResponseMessage* msg)
1125                     {
1126                         out.putUint16A(msg->operationalStatus);
1127                     }
1128                     
1129 thilo.boehm    1.9  void CIMBinMsgSerializer::_putProvAgtGetScmoClassResponseMessage(
1130                         CIMBuffer& out,
1131                         ProvAgtGetScmoClassResponseMessage* msg)
1132                     {
1133 venkat.puvvada 1.13     out.putString(msg->messageId);
1134 thilo.boehm    1.9      out.putSCMOClass(msg->scmoClass);
1135                     }
1136                     
1137                     
1138 mike           1.1  PEGASUS_NAMESPACE_END

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2