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

  1 karl  1.8 //%2006////////////////////////////////////////////////////////////////////////
  2 schuur 1.1 //
  3 karl   1.2 // 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 schuur 1.1 // IBM Corp.; EMC Corporation, The Open Group.
  7 karl   1.2 // 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.4 // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 10            // EMC Corporation; VERITAS Software Corporation; The Open Group.
 11 karl   1.8 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;
 12            // EMC Corporation; Symantec Corporation; The Open Group.
 13 schuur 1.1 //
 14            // Permission is hereby granted, free of charge, to any person obtaining a copy
 15            // 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            // 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 karl   1.8 // 
 21 schuur 1.1 // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN
 22            // 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            // 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            // 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 chip   1.5 #include "SimpleResponseHandler.h"
 35            
 36            #include <Pegasus/ProviderManager2/OperationResponseHandler.h>
 37            
 38            #include <Pegasus/Common/Logger.h>
 39 schuur 1.1 
 40            PEGASUS_NAMESPACE_BEGIN
 41            
 42 chip   1.5 //
 43            // SimpleResponseHandler
 44            //
 45            
 46 kumpf  1.10 SimpleResponseHandler::SimpleResponseHandler()
 47 chip   1.5  {
 48             }
 49             
 50 kumpf  1.10 SimpleResponseHandler::~SimpleResponseHandler()
 51 chip   1.5  {
 52             }
 53             
 54 kumpf  1.10 void SimpleResponseHandler::processing()
 55 chip   1.5  {
 56                 Logger::put(
 57                     Logger::STANDARD_LOG,
 58                     System::CIMSERVER,
 59                     Logger::TRACE,
 60                     "SimpleResponseHandler::processing()");
 61             
 62                 // do nothing
 63             }
 64             
 65 kumpf  1.10 void SimpleResponseHandler::complete()
 66 brian.campbell 1.3  {
 67 chip           1.5      Logger::put(
 68                             Logger::STANDARD_LOG,
 69                             System::CIMSERVER,
 70                             Logger::TRACE,
 71                             "SimpleResponseHandler::complete()");
 72 brian.campbell 1.3  
 73 chip           1.5      send(true);
 74                     }
 75 brian.campbell 1.3  
 76 chip           1.5  // return the number of objects in this handler
 77 kumpf          1.10 Uint32 SimpleResponseHandler::size() const
 78 chip           1.5  {
 79 kumpf          1.10     return 0;
 80 brian.campbell 1.3  }
 81                     
 82 chip           1.5  // clear any objects in this handler
 83 kumpf          1.10 void SimpleResponseHandler::clear()
 84 chip           1.5  {
 85                     }
 86 brian.campbell 1.3  
 87 kumpf          1.10 ContentLanguageList SimpleResponseHandler::getLanguages()
 88 brian.campbell 1.3  {
 89 a.dunfey       1.9      Logger::put(
 90 chip           1.5          Logger::STANDARD_LOG,
 91                             System::CIMSERVER,
 92                             Logger::TRACE,
 93                             "SimpleResponseHandler: getLanguages()");
 94                     
 95 a.dunfey       1.9      ContentLanguageList langs;
 96 chip           1.5  
 97 a.dunfey       1.9      // Try to get the ContentLanguageList out of the
 98                         // OperationContext in the base ResponseHandler.
 99                         OperationContext context = getContext();
100 chip           1.5  
101 kumpf          1.10     if (context.contains(ContentLanguageListContainer::NAME))
102 a.dunfey       1.9      {
103                             ContentLanguageListContainer cntr =
104                                 context.get(ContentLanguageListContainer::NAME);
105 chip           1.5          langs = cntr.getLanguages();
106 a.dunfey       1.9      }
107 chip           1.5  
108 a.dunfey       1.9      return langs;
109 chip           1.5  }
110                     
111                     void SimpleResponseHandler::send(Boolean isComplete)
112                     {
113 kumpf          1.10     // If this was NOT instantiated as a derived OperationResponseHandle class,
114                         // then this will be null but is NOT an error. In this case, there is no
115                         // response attached, hence no data,so there is nothing to send. else we
116                         // have a valid "cross-cast" to the operation side
117 chip           1.5  
118 kumpf          1.10     OperationResponseHandler* operation =
119                             dynamic_cast<OperationResponseHandler*>(this);
120 chip           1.5  
121 kumpf          1.10     if (operation)
122 chip           1.5      {
123                             operation->send(isComplete);
124                         }
125                     }
126                     
127                     //
128                     // SimpleInstanceResponseHandler
129                     //
130                     
131 kumpf          1.10 SimpleInstanceResponseHandler::SimpleInstanceResponseHandler()
132 chip           1.5  {
133                     }
134                     
135 kumpf          1.10 void SimpleInstanceResponseHandler::processing()
136 chip           1.5  {
137                         SimpleResponseHandler::processing();
138                     }
139                     
140 kumpf          1.10 void SimpleInstanceResponseHandler::complete()
141 chip           1.5  {
142                         SimpleResponseHandler::complete();
143                     }
144                     
145 kumpf          1.10 Uint32 SimpleInstanceResponseHandler::size() const
146 chip           1.5  {
147 kumpf          1.10     return _objects.size();
148 chip           1.5  }
149                     
150 kumpf          1.10 void SimpleInstanceResponseHandler::clear()
151 chip           1.5  {
152                         _objects.clear();
153                     }
154                     
155 kumpf          1.10 void SimpleInstanceResponseHandler::deliver(const CIMInstance& instance)
156 chip           1.5  {
157 mike           1.6      PEG_LOGGER_TRACE((
158 chip           1.5          Logger::STANDARD_LOG,
159                             System::CIMSERVER,
160                             Logger::TRACE,
161 mike           1.6          "SimpleInstanceResponseHandler::deliver()"));
162 chip           1.5  
163                         _objects.append(instance);
164                     
165                         send(false);
166                     }
167                     
168 kumpf          1.10 void SimpleInstanceResponseHandler::deliver(const Array<CIMInstance>& instances)
169 chip           1.5  {
170                         // call deliver for each object in the array
171 kumpf          1.10     for (Uint32 i = 0, n = instances.size(); i < n; i++)
172 chip           1.5      {
173                             deliver(instances[i]);
174                         }
175                     }
176                     
177 kumpf          1.10 const Array<CIMInstance> SimpleInstanceResponseHandler::getObjects() const
178 chip           1.5  {
179 kumpf          1.10     return _objects;
180 chip           1.5  }
181                     
182                     //
183                     // SimpleObjectPathResponseHandler
184                     //
185                     
186 kumpf          1.10 SimpleObjectPathResponseHandler::SimpleObjectPathResponseHandler()
187 chip           1.5  {
188                     }
189                     
190 kumpf          1.10 void SimpleObjectPathResponseHandler::processing()
191 chip           1.5  {
192                         SimpleResponseHandler::processing();
193                     }
194                     
195 kumpf          1.10 void SimpleObjectPathResponseHandler::complete()
196 chip           1.5  {
197                         SimpleResponseHandler::complete();
198                     }
199                     
200 kumpf          1.10 Uint32 SimpleObjectPathResponseHandler::size() const
201 chip           1.5  {
202 kumpf          1.10     return _objects.size();
203 chip           1.5  }
204                     
205 kumpf          1.10 void SimpleObjectPathResponseHandler::clear()
206 chip           1.5  {
207                         _objects.clear();
208                     }
209                     
210 kumpf          1.10 void SimpleObjectPathResponseHandler::deliver(const CIMObjectPath& objectPath)
211 chip           1.5  {
212                         Logger::put(
213                             Logger::STANDARD_LOG,
214                             System::CIMSERVER,
215                             Logger::TRACE,
216                             "SimpleObjectPathResponseHandler::deliver()");
217                     
218                         _objects.append(objectPath);
219                     
220                         send(false);
221                     }
222                     
223 kumpf          1.10 void SimpleObjectPathResponseHandler::deliver(
224                         const Array<CIMObjectPath>& objectPaths)
225 chip           1.5  {
226                         // call deliver for each object in the array
227 kumpf          1.10     for (Uint32 i = 0, n = objectPaths.size(); i < n; i++)
228 chip           1.5      {
229                             deliver(objectPaths[i]);
230                         }
231                     }
232                     
233 kumpf          1.10 const Array<CIMObjectPath> SimpleObjectPathResponseHandler::getObjects() const
234 chip           1.5  {
235 kumpf          1.10     return _objects;
236 chip           1.5  }
237                     
238                     //
239                     // SimpleMethodResultResponseHandler
240                     //
241                     
242 kumpf          1.10 SimpleMethodResultResponseHandler::SimpleMethodResultResponseHandler()
243 chip           1.5  {
244                     }
245                     
246 kumpf          1.10 void SimpleMethodResultResponseHandler::processing()
247 chip           1.5  {
248                         SimpleResponseHandler::processing();
249                     }
250                     
251 kumpf          1.10 void SimpleMethodResultResponseHandler::complete()
252 chip           1.5  {
253                         SimpleResponseHandler::complete();
254                     }
255                     
256 kumpf          1.10 Uint32 SimpleMethodResultResponseHandler::size() const
257 chip           1.5  {
258 kumpf          1.10     return _objects.size();
259 chip           1.5  }
260                     
261 kumpf          1.10 void SimpleMethodResultResponseHandler::clear()
262 chip           1.5  {
263                         _objects.clear();
264                     
265                         _returnValue.clear();
266                     }
267                     
268 kumpf          1.10 void SimpleMethodResultResponseHandler::deliverParamValue(
269                         const CIMParamValue& outParamValue)
270 chip           1.5  {
271                         _objects.append(outParamValue);
272                     
273                         // async delivers not yet supported for parameters
274                         //send(false);
275                     }
276                     
277 kumpf          1.10 void SimpleMethodResultResponseHandler::deliverParamValue(
278                         const Array<CIMParamValue>& outParamValues)
279 chip           1.5  {
280                         // call deliver for each object in the array
281 kumpf          1.10     for (Uint32 i = 0, n = outParamValues.size(); i < n; i++)
282 chip           1.5      {
283                             deliverParamValue(outParamValues[i]);
284                         }
285                     }
286                     
287 kumpf          1.10 void SimpleMethodResultResponseHandler::deliver(const CIMValue& returnValue)
288 chip           1.5  {
289                         Logger::put(
290                             Logger::STANDARD_LOG,
291                             System::CIMSERVER,
292                             Logger::TRACE,
293                             "SimpleMethodResultResponseHandler::deliver()");
294                     
295                         _returnValue = returnValue;
296                     
297                         send(false);
298                     }
299                     
300 kumpf          1.10 const Array<CIMParamValue>
301                         SimpleMethodResultResponseHandler::getParamValues() const
302 chip           1.5  {
303 kumpf          1.10     return _objects;
304 chip           1.5  }
305                     
306 kumpf          1.10 const CIMValue SimpleMethodResultResponseHandler::getReturnValue() const
307 chip           1.5  {
308 kumpf          1.10     return _returnValue;
309 chip           1.5  }
310                     
311                     //
312                     // SimpleIndicationResponseHandler
313                     //
314                     
315 kumpf          1.10 SimpleIndicationResponseHandler::SimpleIndicationResponseHandler()
316 chip           1.5  {
317                     }
318                     
319 kumpf          1.10 void SimpleIndicationResponseHandler::processing()
320 chip           1.5  {
321                         SimpleResponseHandler::processing();
322                     }
323                     
324 kumpf          1.10 void SimpleIndicationResponseHandler::complete()
325 chip           1.5  {
326                         SimpleResponseHandler::complete();
327                     }
328                     
329 kumpf          1.10 Uint32 SimpleIndicationResponseHandler::size() const
330 chip           1.5  {
331 kumpf          1.10     return _objects.size();
332 chip           1.5  }
333                     
334 kumpf          1.10 void SimpleIndicationResponseHandler::clear()
335 chip           1.5  {
336                         _objects.clear();
337                     }
338                     
339 kumpf          1.10 void SimpleIndicationResponseHandler::deliver(const CIMIndication& indication)
340 chip           1.5  {
341                         Logger::put(
342                             Logger::STANDARD_LOG,
343                             System::CIMSERVER,
344                             Logger::TRACE,
345                             "SimpleIndicationResponseHandler::deliver()");
346                     
347                         _objects.append(indication);
348                     
349                         send(false);
350                     }
351                     
352 kumpf          1.10 void SimpleIndicationResponseHandler::deliver(
353                         const Array<CIMIndication>& indications)
354 chip           1.5  {
355                         // call deliver for each object in the array
356 kumpf          1.10     for (Uint32 i = 0, n = indications.size(); i < n; i++)
357 chip           1.5      {
358                             deliver(indications[i]);
359                         }
360                     }
361                     
362                     void SimpleIndicationResponseHandler::deliver(
363 kumpf          1.10     const OperationContext& context,
364                         const CIMIndication& indication)
365 chip           1.5  {
366                         Logger::put(
367                             Logger::STANDARD_LOG,
368                             System::CIMSERVER,
369                             Logger::TRACE,
370                             "SimpleIndicationResponseHandler::deliver()");
371                     
372                         _objects.append(indication);
373                     }
374                     
375                     void SimpleIndicationResponseHandler::deliver(
376 kumpf          1.10     const OperationContext& context,
377                         const Array<CIMIndication>& indications)
378 chip           1.5  {
379                         // call deliver for each object in the array
380 kumpf          1.10     for (Uint32 i = 0, n = indications.size(); i < n; i++)
381 chip           1.5      {
382                             deliver(indications[i]);
383                         }
384                     }
385                     
386 kumpf          1.10 const Array<CIMIndication> SimpleIndicationResponseHandler::getObjects() const
387 chip           1.5  {
388 kumpf          1.10     return _objects;
389 chip           1.5  }
390                     
391                     
392                     //
393                     // SimpleObjectResponseHandler
394                     //
395                     
396 kumpf          1.10 SimpleObjectResponseHandler::SimpleObjectResponseHandler()
397 chip           1.5  {
398                     }
399                     
400 kumpf          1.10 void SimpleObjectResponseHandler::processing()
401 chip           1.5  {
402                         SimpleResponseHandler::processing();
403                     }
404                     
405 kumpf          1.10 void SimpleObjectResponseHandler::complete()
406 chip           1.5  {
407                         SimpleResponseHandler::complete();
408                     }
409                     
410 kumpf          1.10 Uint32 SimpleObjectResponseHandler::size() const
411 chip           1.5  {
412 kumpf          1.10     return _objects.size();
413 chip           1.5  }
414                     
415 kumpf          1.10 void SimpleObjectResponseHandler::clear()
416 chip           1.5  {
417                         _objects.clear();
418                     }
419                     
420 kumpf          1.10 void SimpleObjectResponseHandler::deliver(const CIMObject& object)
421 chip           1.5  {
422                         Logger::put(
423                             Logger::STANDARD_LOG,
424                             System::CIMSERVER,
425                             Logger::TRACE,
426                             "SimpleObjectResponseHandler::deliver()");
427                     
428                         _objects.append(object);
429                     
430                         send(false);
431                     }
432                     
433 kumpf          1.10 void SimpleObjectResponseHandler::deliver(const Array<CIMObject>& objects)
434 chip           1.5  {
435                         // call deliver for each object in the array
436 kumpf          1.10     for (Uint32 i = 0, n = objects.size(); i < n; i++)
437 chip           1.5      {
438                             deliver(objects[i]);
439                         }
440                     }
441                     
442 kumpf          1.10 const Array<CIMObject> SimpleObjectResponseHandler::getObjects() const
443 chip           1.5  {
444 kumpf          1.10     return _objects;
445 chip           1.5  }
446                     
447                     //
448                     // SimpleInstance2ObjectResponseHandler
449                     //
450                     
451 kumpf          1.10 SimpleInstance2ObjectResponseHandler::SimpleInstance2ObjectResponseHandler()
452 chip           1.5  {
453                     }
454                     
455 kumpf          1.10 void SimpleInstance2ObjectResponseHandler::processing()
456 chip           1.5  {
457                         SimpleResponseHandler::processing();
458                     }
459                     
460 kumpf          1.10 void SimpleInstance2ObjectResponseHandler::complete()
461 chip           1.5  {
462                         SimpleResponseHandler::complete();
463                     }
464                     
465 kumpf          1.10 Uint32 SimpleInstance2ObjectResponseHandler::size() const
466 chip           1.5  {
467 kumpf          1.10     return _objects.size();
468 chip           1.5  }
469                     
470 kumpf          1.10 void SimpleInstance2ObjectResponseHandler::clear()
471 chip           1.5  {
472                         _objects.clear();
473                     }
474                     
475 kumpf          1.10 void SimpleInstance2ObjectResponseHandler::deliver(const CIMInstance& object)
476 chip           1.5  {
477                         Logger::put(
478                             Logger::STANDARD_LOG,
479                             System::CIMSERVER,
480                             Logger::TRACE,
481                             "SimpleInstance2ObjectResponseHandler::deliver()");
482                     
483                         _objects.append(CIMObject(object));
484                     
485                         // async delivers not yet supported
486                         //send(false);
487                     }
488                     
489 kumpf          1.10 void SimpleInstance2ObjectResponseHandler::deliver(
490                         const Array<CIMInstance>& objects)
491 chip           1.5  {
492                         // call deliver for each object in the array
493 kumpf          1.10     for (Uint32 i = 0, n = objects.size(); i < n; i++)
494 chip           1.5      {
495                             deliver(objects[i]);
496                         }
497                     }
498                     
499 kumpf          1.10 const Array<CIMObject> SimpleInstance2ObjectResponseHandler::getObjects() const
500 chip           1.5  {
501 kumpf          1.10     return _objects;
502 chip           1.5  }
503                     
504                     //
505                     // SimpleValueResponseHandler
506                     //
507                     
508 kumpf          1.10 SimpleValueResponseHandler::SimpleValueResponseHandler()
509 chip           1.5  {
510                     }
511                     
512 kumpf          1.10 void SimpleValueResponseHandler::processing()
513 chip           1.5  {
514                         SimpleResponseHandler::processing();
515                     }
516                     
517 kumpf          1.10 void SimpleValueResponseHandler::complete()
518 chip           1.5  {
519                         SimpleResponseHandler::complete();
520                     }
521                     
522 kumpf          1.10 Uint32 SimpleValueResponseHandler::size() const
523 chip           1.5  {
524 kumpf          1.10     return _objects.size();
525 chip           1.5  }
526                     
527 kumpf          1.10 void SimpleValueResponseHandler::clear()
528 chip           1.5  {
529                         _objects.clear();
530                     }
531                     
532 kumpf          1.10 void SimpleValueResponseHandler::deliver(const CIMValue& value)
533 chip           1.5  {
534                         Logger::put(
535                             Logger::STANDARD_LOG,
536                             System::CIMSERVER,
537                             Logger::TRACE,
538                             "SimpleValueResponseHandler::deliver()");
539                     
540                         _objects.append(value);
541                     
542                         send(false);
543                     }
544                     
545 kumpf          1.10 void SimpleValueResponseHandler::deliver(const Array<CIMValue>& values)
546 chip           1.5  {
547                         // call deliver for each object in the array
548 kumpf          1.10     for (Uint32 i = 0, n = values.size(); i < n; i++)
549 chip           1.5      {
550                             deliver(values[i]);
551                         }
552                     }
553                     
554 kumpf          1.10 const Array<CIMValue> SimpleValueResponseHandler::getObjects() const
555 chip           1.5  {
556 kumpf          1.10     return _objects;
557 brian.campbell 1.3  }
558                     
559 schuur         1.1  PEGASUS_NAMESPACE_END

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2