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

  1 karl  1.20 //%2006////////////////////////////////////////////////////////////////////////
  2 mike  1.1  //
  3 karl  1.12 // 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.6  // IBM Corp.; EMC Corporation, The Open Group.
  7 karl  1.12 // 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.15 // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 10            // EMC Corporation; VERITAS Software Corporation; The Open Group.
 11 karl  1.20 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 12            // EMC Corporation; Symantec Corporation; The Open Group.
 13 mike  1.1  //
 14            // Permission is hereby granted, free of charge, to any person obtaining a copy
 15 chip  1.3  // of this software and associated documentation files (the "Software"), to
 16            // deal in the Software without restriction, including without limitation the
 17            // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 18 mike  1.1  // sell copies of the Software, and to permit persons to whom the Software is
 19            // furnished to do so, subject to the following conditions:
 20 kumpf 1.5  // 
 21 chip  1.3  // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 22 mike  1.1  // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED
 23            // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT
 24 chip  1.3  // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
 25            // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 26            // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
 27 mike  1.1  // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
 28            // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 29            //
 30            //==============================================================================
 31            //
 32            //%/////////////////////////////////////////////////////////////////////////////
 33            
 34 kumpf 1.7  #include <Pegasus/Common/AutoPtr.h>
 35 kumpf 1.31 #include <Pegasus/Common/StatisticalData.h>
 36 mike  1.1  #include "CIMMessage.h"
 37            
 38 mike  1.2  PEGASUS_USING_STD;
 39            
 40 mike  1.1  PEGASUS_NAMESPACE_BEGIN
 41            
 42 kumpf 1.22 void CIMResponseMessage::syncAttributes(const CIMRequestMessage* request)
 43 kumpf 1.7  {
 44                // Propagate request attributes to the response, as necessary
 45                setMask(request->getMask());
 46                setHttpMethod(request->getHttpMethod());
 47 j.alex 1.17     setCloseConnect(request->getCloseConnect());
 48 kumpf  1.27 #ifndef PEGASUS_DISABLE_PERFINST
 49 kumpf  1.28     setServerStartTime(request->getServerStartTime());
 50 kumpf  1.27 #endif
 51 kumpf  1.7  }
 52             
 53 kumpf  1.22 CIMResponseMessage* CIMGetClassRequestMessage::buildResponse() const
 54 kumpf  1.7  {
 55 kumpf  1.11     AutoPtr<CIMGetClassResponseMessage> response(
 56                     new CIMGetClassResponseMessage(
 57                         messageId,
 58                         CIMException(),
 59                         queueIds.copyAndPop(),
 60                         CIMClass()));
 61 kumpf  1.7      response->syncAttributes(this);
 62 kumpf  1.11     return response.release();
 63 kumpf  1.7  }
 64             
 65 kumpf  1.22 CIMResponseMessage* CIMGetInstanceRequestMessage::buildResponse() const
 66 kumpf  1.7  {
 67 kumpf  1.11     AutoPtr<CIMGetInstanceResponseMessage> response(
 68                     new CIMGetInstanceResponseMessage(
 69                         messageId,
 70                         CIMException(),
 71                         queueIds.copyAndPop(),
 72                         CIMInstance()));
 73 kumpf  1.7      response->syncAttributes(this);
 74 kumpf  1.11     return response.release();
 75 kumpf  1.7  }
 76             
 77 kumpf  1.22 CIMResponseMessage* CIMExportIndicationRequestMessage::buildResponse() const
 78 kumpf  1.7  {
 79 kumpf  1.11     AutoPtr<CIMExportIndicationResponseMessage> response(
 80                     new CIMExportIndicationResponseMessage(
 81                         messageId,
 82                         CIMException(),
 83                         queueIds.copyAndPop()));
 84 kumpf  1.7      response->syncAttributes(this);
 85 kumpf  1.11     return response.release();
 86 kumpf  1.7  }
 87             
 88 kumpf  1.22 CIMResponseMessage* CIMDeleteClassRequestMessage::buildResponse() const
 89 kumpf  1.7  {
 90 kumpf  1.11     AutoPtr<CIMDeleteClassResponseMessage> response(
 91                     new CIMDeleteClassResponseMessage(
 92                         messageId,
 93                         CIMException(),
 94                         queueIds.copyAndPop()));
 95 kumpf  1.7      response->syncAttributes(this);
 96 kumpf  1.11     return response.release();
 97 kumpf  1.7  }
 98             
 99 kumpf  1.22 CIMResponseMessage* CIMDeleteInstanceRequestMessage::buildResponse() const
100 kumpf  1.7  {
101 kumpf  1.11     AutoPtr<CIMDeleteInstanceResponseMessage> response(
102                     new CIMDeleteInstanceResponseMessage(
103                         messageId,
104                         CIMException(),
105                         queueIds.copyAndPop()));
106 kumpf  1.7      response->syncAttributes(this);
107 kumpf  1.11     return response.release();
108 kumpf  1.7  }
109             
110 kumpf  1.22 CIMResponseMessage* CIMCreateClassRequestMessage::buildResponse() const
111 kumpf  1.7  {
112 kumpf  1.11     AutoPtr<CIMCreateClassResponseMessage> response(
113                     new CIMCreateClassResponseMessage(
114                         messageId,
115                         CIMException(),
116                         queueIds.copyAndPop()));
117 kumpf  1.7      response->syncAttributes(this);
118 kumpf  1.11     return response.release();
119 kumpf  1.7  }
120             
121 kumpf  1.22 CIMResponseMessage* CIMCreateInstanceRequestMessage::buildResponse() const
122 kumpf  1.7  {
123 kumpf  1.11     AutoPtr<CIMCreateInstanceResponseMessage> response(
124                     new CIMCreateInstanceResponseMessage(
125                         messageId,
126                         CIMException(),
127                         queueIds.copyAndPop(),
128                         CIMObjectPath()));
129 kumpf  1.7      response->syncAttributes(this);
130 kumpf  1.11     return response.release();
131 kumpf  1.7  }
132             
133 kumpf  1.22 CIMResponseMessage* CIMModifyClassRequestMessage::buildResponse() const
134 kumpf  1.7  {
135 kumpf  1.11     AutoPtr<CIMModifyClassResponseMessage> response(
136                     new CIMModifyClassResponseMessage(
137                         messageId,
138                         CIMException(),
139                         queueIds.copyAndPop()));
140 kumpf  1.7      response->syncAttributes(this);
141 kumpf  1.11     return response.release();
142 kumpf  1.7  }
143             
144 kumpf  1.22 CIMResponseMessage* CIMModifyInstanceRequestMessage::buildResponse() const
145 kumpf  1.7  {
146 kumpf  1.11     AutoPtr<CIMModifyInstanceResponseMessage> response(
147                     new CIMModifyInstanceResponseMessage(
148                         messageId,
149                         CIMException(),
150                         queueIds.copyAndPop()));
151 kumpf  1.7      response->syncAttributes(this);
152 kumpf  1.11     return response.release();
153 kumpf  1.7  }
154             
155 kumpf  1.22 CIMResponseMessage* CIMEnumerateClassesRequestMessage::buildResponse() const
156 kumpf  1.7  {
157 kumpf  1.11     AutoPtr<CIMEnumerateClassesResponseMessage> response(
158                     new CIMEnumerateClassesResponseMessage(
159                         messageId,
160                         CIMException(),
161                         queueIds.copyAndPop(),
162                         Array<CIMClass>()));
163 kumpf  1.7      response->syncAttributes(this);
164 kumpf  1.11     return response.release();
165 kumpf  1.7  }
166             
167 kumpf  1.22 CIMResponseMessage* CIMEnumerateClassNamesRequestMessage::buildResponse() const
168 kumpf  1.7  {
169 kumpf  1.11     AutoPtr<CIMEnumerateClassNamesResponseMessage> response(
170                     new CIMEnumerateClassNamesResponseMessage(
171                         messageId,
172                         CIMException(),
173                         queueIds.copyAndPop(),
174                         Array<CIMName>()));
175 kumpf  1.7      response->syncAttributes(this);
176 kumpf  1.11     return response.release();
177 kumpf  1.7  }
178             
179 kumpf  1.22 CIMResponseMessage* CIMEnumerateInstancesRequestMessage::buildResponse() const
180 kumpf  1.7  {
181 kumpf  1.11     AutoPtr<CIMEnumerateInstancesResponseMessage> response(
182                     new CIMEnumerateInstancesResponseMessage(
183                         messageId,
184                         CIMException(),
185                         queueIds.copyAndPop(),
186                         Array<CIMInstance>()));
187 kumpf  1.7      response->syncAttributes(this);
188 kumpf  1.11     return response.release();
189 kumpf  1.7  }
190             
191 kumpf  1.29 CIMResponseMessage*
192                 CIMEnumerateInstanceNamesRequestMessage::buildResponse() const
193 kumpf  1.7  {
194 kumpf  1.11     AutoPtr<CIMEnumerateInstanceNamesResponseMessage> response(
195                     new CIMEnumerateInstanceNamesResponseMessage(
196                         messageId,
197                         CIMException(),
198                         queueIds.copyAndPop(),
199                         Array<CIMObjectPath>()));
200 kumpf  1.7      response->syncAttributes(this);
201 kumpf  1.11     return response.release();
202 kumpf  1.7  }
203             
204 kumpf  1.22 CIMResponseMessage* CIMExecQueryRequestMessage::buildResponse() const
205 kumpf  1.7  {
206 kumpf  1.11     AutoPtr<CIMExecQueryResponseMessage> response(
207                     new CIMExecQueryResponseMessage(
208                         messageId,
209                         CIMException(),
210                         queueIds.copyAndPop(),
211                         Array<CIMObject>()));
212 kumpf  1.7      response->syncAttributes(this);
213 kumpf  1.11     return response.release();
214 kumpf  1.7  }
215             
216 kumpf  1.22 CIMResponseMessage* CIMAssociatorsRequestMessage::buildResponse() const
217 kumpf  1.7  {
218 kumpf  1.11     AutoPtr<CIMAssociatorsResponseMessage> response(
219                     new CIMAssociatorsResponseMessage(
220                         messageId,
221                         CIMException(),
222                         queueIds.copyAndPop(),
223                         Array<CIMObject>()));
224 kumpf  1.7      response->syncAttributes(this);
225 kumpf  1.11     return response.release();
226 kumpf  1.7  }
227             
228 kumpf  1.22 CIMResponseMessage* CIMAssociatorNamesRequestMessage::buildResponse() const
229 kumpf  1.7  {
230 kumpf  1.11     AutoPtr<CIMAssociatorNamesResponseMessage> response(
231                     new CIMAssociatorNamesResponseMessage(
232                         messageId,
233                         CIMException(),
234                         queueIds.copyAndPop(),
235                         Array<CIMObjectPath>()));
236 kumpf  1.7      response->syncAttributes(this);
237 kumpf  1.11     return response.release();
238 kumpf  1.7  }
239             
240 kumpf  1.22 CIMResponseMessage* CIMReferencesRequestMessage::buildResponse() const
241 kumpf  1.7  {
242 kumpf  1.11     AutoPtr<CIMReferencesResponseMessage> response(
243                     new CIMReferencesResponseMessage(
244                         messageId,
245                         CIMException(),
246                         queueIds.copyAndPop(),
247                         Array<CIMObject>()));
248 kumpf  1.7      response->syncAttributes(this);
249 kumpf  1.11     return response.release();
250 kumpf  1.7  }
251             
252 kumpf  1.22 CIMResponseMessage* CIMReferenceNamesRequestMessage::buildResponse() const
253 kumpf  1.7  {
254 kumpf  1.11     AutoPtr<CIMReferenceNamesResponseMessage> response(
255                     new CIMReferenceNamesResponseMessage(
256                         messageId,
257                         CIMException(),
258                         queueIds.copyAndPop(),
259                         Array<CIMObjectPath>()));
260 kumpf  1.7      response->syncAttributes(this);
261 kumpf  1.11     return response.release();
262 kumpf  1.7  }
263             
264 kumpf  1.22 CIMResponseMessage* CIMGetPropertyRequestMessage::buildResponse() const
265 kumpf  1.7  {
266 kumpf  1.11     AutoPtr<CIMGetPropertyResponseMessage> response(
267                     new CIMGetPropertyResponseMessage(
268                         messageId,
269                         CIMException(),
270                         queueIds.copyAndPop(),
271                         CIMValue()));
272 kumpf  1.7      response->syncAttributes(this);
273 kumpf  1.11     return response.release();
274 kumpf  1.7  }
275             
276 kumpf  1.22 CIMResponseMessage* CIMSetPropertyRequestMessage::buildResponse() const
277 kumpf  1.7  {
278 kumpf  1.11     AutoPtr<CIMSetPropertyResponseMessage> response(
279                     new CIMSetPropertyResponseMessage(
280                         messageId,
281                         CIMException(),
282                         queueIds.copyAndPop()));
283 kumpf  1.7      response->syncAttributes(this);
284 kumpf  1.11     return response.release();
285 kumpf  1.7  }
286             
287 kumpf  1.22 CIMResponseMessage* CIMGetQualifierRequestMessage::buildResponse() const
288 kumpf  1.7  {
289 kumpf  1.11     AutoPtr<CIMGetQualifierResponseMessage> response(
290                     new CIMGetQualifierResponseMessage(
291                         messageId,
292                         CIMException(),
293                         queueIds.copyAndPop(),
294                         CIMQualifierDecl()));
295 kumpf  1.7      response->syncAttributes(this);
296 kumpf  1.11     return response.release();
297 kumpf  1.7  }
298             
299 kumpf  1.22 CIMResponseMessage* CIMSetQualifierRequestMessage::buildResponse() const
300 kumpf  1.7  {
301 kumpf  1.11     AutoPtr<CIMSetQualifierResponseMessage> response(
302                     new CIMSetQualifierResponseMessage(
303                         messageId,
304                         CIMException(),
305                         queueIds.copyAndPop()));
306 kumpf  1.7      response->syncAttributes(this);
307 kumpf  1.11     return response.release();
308 kumpf  1.7  }
309             
310 kumpf  1.22 CIMResponseMessage* CIMDeleteQualifierRequestMessage::buildResponse() const
311 kumpf  1.7  {
312 kumpf  1.11     AutoPtr<CIMDeleteQualifierResponseMessage> response(
313                     new CIMDeleteQualifierResponseMessage(
314                         messageId,
315                         CIMException(),
316                         queueIds.copyAndPop()));
317 kumpf  1.7      response->syncAttributes(this);
318 kumpf  1.11     return response.release();
319 kumpf  1.7  }
320             
321 kumpf  1.22 CIMResponseMessage* CIMEnumerateQualifiersRequestMessage::buildResponse() const
322 kumpf  1.7  {
323 kumpf  1.11     AutoPtr<CIMEnumerateQualifiersResponseMessage> response(
324                     new CIMEnumerateQualifiersResponseMessage(
325                         messageId,
326                         CIMException(),
327                         queueIds.copyAndPop(),
328                         Array<CIMQualifierDecl>()));
329 kumpf  1.7      response->syncAttributes(this);
330 kumpf  1.11     return response.release();
331 kumpf  1.7  }
332             
333 kumpf  1.22 CIMResponseMessage* CIMInvokeMethodRequestMessage::buildResponse() const
334 kumpf  1.7  {
335 kumpf  1.11     AutoPtr<CIMInvokeMethodResponseMessage> response(
336                     new CIMInvokeMethodResponseMessage(
337                         messageId,
338                         CIMException(),
339                         queueIds.copyAndPop(),
340                         CIMValue(),
341                         Array<CIMParamValue>(),
342                         methodName));
343 kumpf  1.7      response->syncAttributes(this);
344 kumpf  1.11     return response.release();
345 kumpf  1.7  }
346             
347 kumpf  1.22 CIMResponseMessage* CIMProcessIndicationRequestMessage::buildResponse() const
348 kumpf  1.7  {
349 kumpf  1.11     AutoPtr<CIMProcessIndicationResponseMessage> response(
350                     new CIMProcessIndicationResponseMessage(
351                         messageId,
352                         CIMException(),
353                         queueIds.copyAndPop()));
354 kumpf  1.7      response->syncAttributes(this);
355 kumpf  1.11     return response.release();
356 kumpf  1.7  }
357             
358 kumpf  1.29 CIMResponseMessage*
359                 CIMNotifyProviderRegistrationRequestMessage::buildResponse() const
360 kumpf  1.7  {
361 kumpf  1.11     AutoPtr<CIMNotifyProviderRegistrationResponseMessage> response(
362                     new CIMNotifyProviderRegistrationResponseMessage(
363                         messageId,
364                         CIMException(),
365                         queueIds.copyAndPop()));
366 kumpf  1.7      response->syncAttributes(this);
367 kumpf  1.11     return response.release();
368 kumpf  1.7  }
369             
370 kumpf  1.29 CIMResponseMessage*
371                 CIMNotifyProviderTerminationRequestMessage::buildResponse() const
372 kumpf  1.7  {
373 kumpf  1.11     AutoPtr<CIMNotifyProviderTerminationResponseMessage> response(
374                     new CIMNotifyProviderTerminationResponseMessage(
375                         messageId,
376                         CIMException(),
377                         queueIds.copyAndPop()));
378 kumpf  1.7      response->syncAttributes(this);
379 kumpf  1.11     return response.release();
380 kumpf  1.7  }
381             
382 kumpf  1.22 CIMResponseMessage* CIMHandleIndicationRequestMessage::buildResponse() const
383 kumpf  1.7  {
384 kumpf  1.11     AutoPtr<CIMHandleIndicationResponseMessage> response(
385                     new CIMHandleIndicationResponseMessage(
386                         messageId,
387                         CIMException(),
388                         queueIds.copyAndPop()));
389 kumpf  1.7      response->syncAttributes(this);
390 kumpf  1.11     return response.release();
391 kumpf  1.7  }
392             
393 kumpf  1.22 CIMResponseMessage* CIMCreateSubscriptionRequestMessage::buildResponse() const
394 kumpf  1.7  {
395 kumpf  1.11     AutoPtr<CIMCreateSubscriptionResponseMessage> response(
396                     new CIMCreateSubscriptionResponseMessage(
397                         messageId,
398                         CIMException(),
399                         queueIds.copyAndPop()));
400 kumpf  1.7      response->syncAttributes(this);
401 kumpf  1.11     return response.release();
402 kumpf  1.7  }
403             
404 kumpf  1.22 CIMResponseMessage* CIMModifySubscriptionRequestMessage::buildResponse() const
405 kumpf  1.7  {
406 kumpf  1.11     AutoPtr<CIMModifySubscriptionResponseMessage> response(
407                     new CIMModifySubscriptionResponseMessage(
408                         messageId,
409                         CIMException(),
410                         queueIds.copyAndPop()));
411 kumpf  1.7      response->syncAttributes(this);
412 kumpf  1.11     return response.release();
413 kumpf  1.7  }
414             
415 kumpf  1.22 CIMResponseMessage* CIMDeleteSubscriptionRequestMessage::buildResponse() const
416 kumpf  1.7  {
417 kumpf  1.11     AutoPtr<CIMDeleteSubscriptionResponseMessage> response(
418                     new CIMDeleteSubscriptionResponseMessage(
419                         messageId,
420                         CIMException(),
421                         queueIds.copyAndPop()));
422 kumpf  1.7      response->syncAttributes(this);
423 kumpf  1.11     return response.release();
424 kumpf  1.7  }
425             
426 kumpf  1.29 CIMResponseMessage*
427 kumpf  1.22     CIMSubscriptionInitCompleteRequestMessage::buildResponse() const
428 carolann.graves 1.16 {
429                          AutoPtr<CIMSubscriptionInitCompleteResponseMessage> response(
430                              new CIMSubscriptionInitCompleteResponseMessage(
431                                  messageId,
432                                  CIMException(),
433                                  queueIds.copyAndPop()));
434                          response->syncAttributes(this);
435                          return response.release();
436                      }
437                      
438 kumpf           1.22 CIMResponseMessage* CIMDisableModuleRequestMessage::buildResponse() const
439 kumpf           1.7  {
440 kumpf           1.11     AutoPtr<CIMDisableModuleResponseMessage> response(
441                              new CIMDisableModuleResponseMessage(
442                                  messageId,
443                                  CIMException(),
444                                  queueIds.copyAndPop(),
445                                  Array<Uint16>()));
446 kumpf           1.7      response->syncAttributes(this);
447 kumpf           1.11     return response.release();
448 kumpf           1.7  }
449                      
450 kumpf           1.22 CIMResponseMessage* CIMEnableModuleRequestMessage::buildResponse() const
451 kumpf           1.7  {
452 kumpf           1.11     AutoPtr<CIMEnableModuleResponseMessage> response(
453                              new CIMEnableModuleResponseMessage(
454                                  messageId,
455                                  CIMException(),
456                                  queueIds.copyAndPop(),
457                                  Array<Uint16>()));
458 kumpf           1.7      response->syncAttributes(this);
459 kumpf           1.11     return response.release();
460 kumpf           1.7  }
461                      
462 kumpf           1.22 CIMResponseMessage* CIMNotifyProviderEnableRequestMessage::buildResponse() const
463 kumpf           1.7  {
464 kumpf           1.11     AutoPtr<CIMNotifyProviderEnableResponseMessage> response(
465                              new CIMNotifyProviderEnableResponseMessage(
466                                  messageId,
467                                  CIMException(),
468                                  queueIds.copyAndPop()));
469 kumpf           1.7      response->syncAttributes(this);
470 kumpf           1.11     return response.release();
471 kumpf           1.7  }
472                      
473 carolann.graves 1.23 CIMResponseMessage* CIMNotifyProviderFailRequestMessage::buildResponse() const
474                      {
475                          AutoPtr<CIMNotifyProviderFailResponseMessage> response(
476                              new CIMNotifyProviderFailResponseMessage(
477                                  messageId,
478                                  CIMException(),
479                                  queueIds.copyAndPop()));
480                          response->syncAttributes(this);
481                          return response.release();
482                      }
483                      
484 kumpf           1.22 CIMResponseMessage* CIMStopAllProvidersRequestMessage::buildResponse() const
485 kumpf           1.7  {
486 kumpf           1.11     AutoPtr<CIMStopAllProvidersResponseMessage> response(
487                              new CIMStopAllProvidersResponseMessage(
488                                  messageId,
489                                  CIMException(),
490                                  queueIds.copyAndPop()));
491 kumpf           1.7      response->syncAttributes(this);
492 kumpf           1.11     return response.release();
493 kumpf           1.7  }
494                      
495 kumpf           1.22 CIMResponseMessage* CIMInitializeProviderRequestMessage::buildResponse() const
496 kumpf           1.7  {
497 kumpf           1.11     AutoPtr<CIMInitializeProviderResponseMessage> response(
498                              new CIMInitializeProviderResponseMessage(
499                                  messageId,
500                                  CIMException(),
501                                  queueIds.copyAndPop()));
502 kumpf           1.7      response->syncAttributes(this);
503 kumpf           1.11     return response.release();
504 kumpf           1.7  }
505                      
506 kumpf           1.29 CIMResponseMessage*
507                          CIMInitializeProviderAgentRequestMessage::buildResponse() const
508 kumpf           1.9  {
509 kumpf           1.11     AutoPtr<CIMInitializeProviderAgentResponseMessage> response(
510                              new CIMInitializeProviderAgentResponseMessage(
511                                  messageId,
512                                  CIMException(),
513                                  queueIds.copyAndPop()));
514 kumpf           1.9      response->syncAttributes(this);
515 kumpf           1.11     return response.release();
516 kumpf           1.9  }
517                      
518 kumpf           1.22 CIMResponseMessage* CIMNotifyConfigChangeRequestMessage::buildResponse() const
519 kumpf           1.10 {
520 kumpf           1.11     AutoPtr<CIMNotifyConfigChangeResponseMessage> response(
521                              new CIMNotifyConfigChangeResponseMessage(
522                                  messageId,
523                                  CIMException(),
524                                  queueIds.copyAndPop()));
525 kumpf           1.10     response->syncAttributes(this);
526 kumpf           1.11     return response.release();
527 kumpf           1.10 }
528                      
529 kumpf           1.30 CIMMessage::CIMMessage(
530                          MessageType type,
531                          const String& messageId_)
532 kumpf           1.31     : Message(type),
533                            messageId(messageId_)
534                      #ifndef PEGASUS_DISABLE_PERFINST
535                            ,_serverStartTimeMicroseconds(0),
536                            _providerTimeMicroseconds(0),
537                            _totalServerTimeMicroseconds(0)
538                      #endif
539 karl            1.13 {
540 kumpf           1.19     operationContext.insert(
541 kumpf           1.29         AcceptLanguageListContainer(AcceptLanguageList()));
542 kumpf           1.19     operationContext.insert(
543 kumpf           1.29         ContentLanguageListContainer(ContentLanguageList()));
544 karl            1.13 }
545                      
546 kumpf           1.31 #ifndef PEGASUS_DISABLE_PERFINST
547                      void CIMMessage::endServer()
548                      {
549                          PEGASUS_ASSERT(_serverStartTimeMicroseconds != 0);
550                      
551                          _totalServerTimeMicroseconds =
552                              TimeValue::getCurrentTime().toMicroseconds() -
553                                  _serverStartTimeMicroseconds;
554                      
555                          Uint64 serverTimeMicroseconds =
556                              _totalServerTimeMicroseconds - _providerTimeMicroseconds;
557                      
558                          Uint16 statType = (Uint16)((getType() >= CIM_GET_CLASS_RESPONSE_MESSAGE) ?
559                              getType() - CIM_GET_CLASS_RESPONSE_MESSAGE : getType() - 1);
560                      
561                          StatisticalData::current()->addToValue(serverTimeMicroseconds, statType,
562                              StatisticalData::PEGASUS_STATDATA_SERVER);
563                      
564                          StatisticalData::current()->addToValue(_providerTimeMicroseconds, statType,
565                              StatisticalData::PEGASUS_STATDATA_PROVIDER);
566                      
567 kumpf           1.31     /* This adds the number of bytes read to the total.the request size
568                             value must be stored (requSize) and passed to the StatisticalData
569                             object at the end of processingm otherwise it will be the ONLY value
570                             that is passed to the client which reports the current state of the
571                             object, not the previous (one command ago) state */
572                      
573                          StatisticalData::current()->addToValue(
574                              StatisticalData::current()->requSize,
575                              statType,
576                              StatisticalData::PEGASUS_STATDATA_BYTES_READ);
577                      }
578                      #endif
579                      
580 karl            1.13 CIMRequestMessage::CIMRequestMessage(
581 kumpf           1.30     MessageType type_,
582                          const String& messageId_,
583                          const QueueIdStack& queueIds_)
584 kumpf           1.21     : CIMMessage(type_, messageId_), queueIds(queueIds_)
585 karl            1.13 {
586                      }
587                      
588                      CIMResponseMessage::CIMResponseMessage(
589 kumpf           1.30     MessageType type_,
590 karl            1.13     const String& messageId_,
591                          const CIMException& cimException_,
592                          const QueueIdStack& queueIds_)
593 kumpf           1.29     :
594 karl            1.13     CIMMessage(type_, messageId_),
595                          queueIds(queueIds_),
596                          cimException(cimException_)
597                      {
598                      }
599                      
600                      CIMOperationRequestMessage::CIMOperationRequestMessage(
601 kumpf           1.30     MessageType type_,
602 karl            1.13     const String& messageId_,
603                          const QueueIdStack& queueIds_,
604 kumpf           1.24     const String& authType_,
605                          const String& userName_,
606 karl            1.13     const CIMNamespaceName& nameSpace_,
607                          const CIMName& className_,
608                          Uint32 providerType_)
609 kumpf           1.29     :
610 karl            1.13     CIMRequestMessage(type_, messageId_, queueIds_),
611 kumpf           1.24     authType(authType_),
612                          userName(userName_),
613 karl            1.13     nameSpace(nameSpace_),
614                          className(className_),
615                          providerType(providerType_)
616                      {
617                      }
618                      
619 mike            1.1  PEGASUS_NAMESPACE_END

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2