271 kumpf 1.1 delete _client;
272 }
273 }
274
275
276 //
277 // CIM Operations
278 //
279
280 CIMClass ClientCIMOMHandleRep::getClass(
281 const OperationContext & context,
282 const CIMNamespaceName& nameSpace,
283 const CIMName& className,
284 Boolean localOnly,
285 Boolean includeQualifiers,
286 Boolean includeClassOrigin,
287 const CIMPropertyList& propertyList)
288 {
289 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE, "ClientCIMOMHandleRep::getClass");
290
291 ClientCIMOMHandleAccessController access(_clientMutex);
292 kumpf 1.1 ClientCIMOMHandleSetup setup(_client, context);
293
294 PEG_METHOD_EXIT();
295 return _client->getClass(
296 nameSpace,
297 className,
298 localOnly,
299 includeQualifiers,
300 includeClassOrigin,
301 propertyList);
302 }
303
304 Array<CIMClass> ClientCIMOMHandleRep::enumerateClasses(
305 const OperationContext & context,
306 const CIMNamespaceName& nameSpace,
307 const CIMName& className,
308 Boolean deepInheritance,
309 Boolean localOnly,
310 Boolean includeQualifiers,
311 Boolean includeClassOrigin)
312 {
313 kumpf 1.1 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE,
314 "ClientCIMOMHandleRep::enumerateClasses");
315
316 ClientCIMOMHandleAccessController access(_clientMutex);
317 ClientCIMOMHandleSetup setup(_client, context);
318
319 PEG_METHOD_EXIT();
320 return _client->enumerateClasses(
321 nameSpace,
322 className,
323 deepInheritance,
324 localOnly,
325 includeQualifiers,
326 includeClassOrigin);
327 }
328
329 Array<CIMName> ClientCIMOMHandleRep::enumerateClassNames(
330 const OperationContext & context,
331 const CIMNamespaceName &nameSpace,
332 const CIMName& className,
333 Boolean deepInheritance)
334 kumpf 1.1 {
335 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE,
336 "ClientCIMOMHandleRep::enumerateClassNames");
337
338 ClientCIMOMHandleAccessController access(_clientMutex);
339 ClientCIMOMHandleSetup setup(_client, context);
340
341 PEG_METHOD_EXIT();
342 return _client->enumerateClassNames(
343 nameSpace,
344 className,
345 deepInheritance);
346 }
347
348 void ClientCIMOMHandleRep::createClass(
349 const OperationContext & context,
350 const CIMNamespaceName& nameSpace,
351 const CIMClass& newClass)
352 {
353 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE, "ClientCIMOMHandleRep::createClass");
354
355 kumpf 1.1 ClientCIMOMHandleAccessController access(_clientMutex);
356 ClientCIMOMHandleSetup setup(_client, context);
357
358 _client->createClass(
359 nameSpace,
360 newClass);
361
362 PEG_METHOD_EXIT();
363 }
364
365 void ClientCIMOMHandleRep::modifyClass(
366 const OperationContext & context,
367 const CIMNamespaceName &nameSpace,
368 const CIMClass& modifiedClass)
369 {
370 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE, "ClientCIMOMHandleRep::modifyClass");
371
372 ClientCIMOMHandleAccessController access(_clientMutex);
373 ClientCIMOMHandleSetup setup(_client, context);
374
375 _client->modifyClass(
376 kumpf 1.1 nameSpace,
377 modifiedClass);
378
379 PEG_METHOD_EXIT();
380 }
381
382 void ClientCIMOMHandleRep::deleteClass(
383 const OperationContext & context,
384 const CIMNamespaceName &nameSpace,
385 const CIMName& className)
386 {
387
388 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE, "ClientCIMOMHandleRep::deleteClass");
389
390 ClientCIMOMHandleAccessController access(_clientMutex);
391 ClientCIMOMHandleSetup setup(_client, context);
392
393 _client->deleteClass(
394 nameSpace,
395 className);
396
397 kumpf 1.1 PEG_METHOD_EXIT();
398 }
399
400 CIMInstance ClientCIMOMHandleRep::getInstance(
401 const OperationContext & context,
402 const CIMNamespaceName &nameSpace,
403 const CIMObjectPath& instanceName,
404 Boolean localOnly,
405 Boolean includeQualifiers,
406 Boolean includeClassOrigin,
407 const CIMPropertyList& propertyList)
408 {
409 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE, "ClientCIMOMHandleRep::getInstance");
410
411 ClientCIMOMHandleAccessController access(_clientMutex);
412 ClientCIMOMHandleSetup setup(_client, context);
413
414 PEG_METHOD_EXIT();
415 return _client->getInstance(
416 nameSpace,
417 instanceName,
418 kumpf 1.1 localOnly,
419 includeQualifiers,
420 includeClassOrigin,
421 propertyList);
422 }
423
424 Array<CIMInstance> ClientCIMOMHandleRep::enumerateInstances(
425 const OperationContext & context,
426 const CIMNamespaceName &nameSpace,
427 const CIMName& className,
428 Boolean deepInheritance,
429 Boolean localOnly,
430 Boolean includeQualifiers,
431 Boolean includeClassOrigin,
432 const CIMPropertyList& propertyList)
433 {
434 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE,
435 "ClientCIMOMHandleRep::enumerateInstances");
436
437 ClientCIMOMHandleAccessController access(_clientMutex);
438 ClientCIMOMHandleSetup setup(_client, context);
439 kumpf 1.1
440 PEG_METHOD_EXIT();
441 return _client->enumerateInstances(
442 nameSpace,
443 className,
444 deepInheritance,
445 localOnly,
446 includeQualifiers,
447 includeClassOrigin,
448 propertyList);
449 }
450
451 Array<CIMObjectPath> ClientCIMOMHandleRep::enumerateInstanceNames(
452 const OperationContext & context,
453 const CIMNamespaceName &nameSpace,
454 const CIMName& className)
455 {
456 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE,
457 "ClientCIMOMHandleRep::enumerateInstanceNames");
458
459 ClientCIMOMHandleAccessController access(_clientMutex);
460 kumpf 1.1 ClientCIMOMHandleSetup setup(_client, context);
461
462 PEG_METHOD_EXIT();
463 return _client->enumerateInstanceNames(
464 nameSpace,
465 className);
466 }
467
468 CIMObjectPath ClientCIMOMHandleRep::createInstance(
469 const OperationContext & context,
470 const CIMNamespaceName &nameSpace,
471 const CIMInstance& newInstance)
472 {
473 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE,
474 "ClientCIMOMHandleRep::createInstance");
475
476 ClientCIMOMHandleAccessController access(_clientMutex);
477 ClientCIMOMHandleSetup setup(_client, context);
478
479 PEG_METHOD_EXIT();
480 return _client->createInstance(
481 kumpf 1.1 nameSpace,
482 newInstance);
483 }
484
485 void ClientCIMOMHandleRep::modifyInstance(
486 const OperationContext & context,
487 const CIMNamespaceName &nameSpace,
488 const CIMInstance& modifiedInstance,
489 Boolean includeQualifiers,
490 const CIMPropertyList& propertyList)
491 {
492 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE,
493 "ClientCIMOMHandleRep::modifyInstance");
494
495 ClientCIMOMHandleAccessController access(_clientMutex);
496 ClientCIMOMHandleSetup setup(_client, context);
497
498 _client->modifyInstance(
499 nameSpace,
500 modifiedInstance,
501 includeQualifiers,
502 kumpf 1.1 propertyList);
503
504 PEG_METHOD_EXIT();
505 }
506
507 void ClientCIMOMHandleRep::deleteInstance(
508 const OperationContext & context,
509 const CIMNamespaceName &nameSpace,
510 const CIMObjectPath& instanceName)
511 {
512 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE,
513 "ClientCIMOMHandleRep::deleteInstance");
514
515 ClientCIMOMHandleAccessController access(_clientMutex);
516 ClientCIMOMHandleSetup setup(_client, context);
517
518 _client->deleteInstance(
519 nameSpace,
520 instanceName);
521
522 PEG_METHOD_EXIT();
523 kumpf 1.1 }
524
525 Array<CIMObject> ClientCIMOMHandleRep::execQuery(
526 const OperationContext & context,
527 const CIMNamespaceName &nameSpace,
528 const String& queryLanguage,
529 const String& query)
530 {
531 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE, "ClientCIMOMHandleRep::execQuery");
532
533 ClientCIMOMHandleAccessController access(_clientMutex);
534 ClientCIMOMHandleSetup setup(_client, context);
535
536 PEG_METHOD_EXIT();
537 return _client->execQuery(
538 nameSpace,
539 queryLanguage,
540 query);
541 }
542
543 Array<CIMObject> ClientCIMOMHandleRep::associators(
544 kumpf 1.1 const OperationContext & context,
545 const CIMNamespaceName &nameSpace,
546 const CIMObjectPath& objectName,
547 const CIMName& assocClass,
548 const CIMName& resultClass,
549 const String& role,
550 const String& resultRole,
551 Boolean includeQualifiers,
552 Boolean includeClassOrigin,
553 const CIMPropertyList& propertyList)
554 {
555 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE, "ClientCIMOMHandleRep::associators");
556
557 ClientCIMOMHandleAccessController access(_clientMutex);
558 ClientCIMOMHandleSetup setup(_client, context);
559
560 PEG_METHOD_EXIT();
561 return _client->associators(
562 nameSpace,
563 objectName,
564 assocClass,
565 kumpf 1.1 resultClass,
566 role,
567 resultRole,
568 includeQualifiers,
569 includeClassOrigin,
570 propertyList);
571 }
572
573 Array<CIMObjectPath> ClientCIMOMHandleRep::associatorNames(
574 const OperationContext & context,
575 const CIMNamespaceName &nameSpace,
576 const CIMObjectPath& objectName,
577 const CIMName& assocClass,
578 const CIMName& resultClass,
579 const String& role,
580 const String& resultRole)
581 {
582 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE,
583 "ClientCIMOMHandleRep::associatorNames");
584
585 ClientCIMOMHandleAccessController access(_clientMutex);
586 kumpf 1.1 ClientCIMOMHandleSetup setup(_client, context);
587
588 PEG_METHOD_EXIT();
589 return _client->associatorNames(
590 nameSpace,
591 objectName,
592 assocClass,
593 resultClass,
594 role,
595 resultRole);
596 }
597
598 Array<CIMObject> ClientCIMOMHandleRep::references(
599 const OperationContext & context,
600 const CIMNamespaceName &nameSpace,
601 const CIMObjectPath& objectName,
602 const CIMName& resultClass,
603 const String& role,
604 Boolean includeQualifiers,
605 Boolean includeClassOrigin,
606 const CIMPropertyList& propertyList)
607 kumpf 1.1 {
608 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE, "ClientCIMOMHandleRep::references");
609
610 ClientCIMOMHandleAccessController access(_clientMutex);
611 ClientCIMOMHandleSetup setup(_client, context);
612
613 PEG_METHOD_EXIT();
614 return _client->references(
615 nameSpace,
616 objectName,
617 resultClass,
618 role,
619 includeQualifiers,
620 includeClassOrigin,
621 propertyList);
622 }
623
624 Array<CIMObjectPath> ClientCIMOMHandleRep::referenceNames(
625 const OperationContext & context,
626 const CIMNamespaceName &nameSpace,
627 const CIMObjectPath& objectName,
628 kumpf 1.1 const CIMName& resultClass,
629 const String& role)
630 {
631 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE,
632 "ClientCIMOMHandleRep::referenceNames");
633
634 ClientCIMOMHandleAccessController access(_clientMutex);
635 ClientCIMOMHandleSetup setup(_client, context);
636
637 PEG_METHOD_EXIT();
638 return _client->referenceNames(
639 nameSpace,
640 objectName,
641 resultClass,
642 role);
643 }
644
645 CIMValue ClientCIMOMHandleRep::getProperty(
646 const OperationContext & context,
647 const CIMNamespaceName &nameSpace,
648 const CIMObjectPath& instanceName,
649 kumpf 1.1 const CIMName& propertyName)
650 {
651 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE, "ClientCIMOMHandleRep::getProperty");
652
653 ClientCIMOMHandleAccessController access(_clientMutex);
654 ClientCIMOMHandleSetup setup(_client, context);
655
656 PEG_METHOD_EXIT();
657 return _client->getProperty(
658 nameSpace,
659 instanceName,
660 propertyName);
661 }
662
663 void ClientCIMOMHandleRep::setProperty(
664 const OperationContext & context,
665 const CIMNamespaceName &nameSpace,
666 const CIMObjectPath& instanceName,
667 const CIMName& propertyName,
668 const CIMValue& newValue)
669 {
670 kumpf 1.1 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE, "ClientCIMOMHandleRep::setProperty");
671
672 ClientCIMOMHandleAccessController access(_clientMutex);
673 ClientCIMOMHandleSetup setup(_client, context);
674
675 _client->setProperty(
676 nameSpace,
677 instanceName,
678 propertyName,
679 newValue);
680
681 PEG_METHOD_EXIT();
682 }
683
684 CIMValue ClientCIMOMHandleRep::invokeMethod(
685 const OperationContext & context,
686 const CIMNamespaceName &nameSpace,
687 const CIMObjectPath& instanceName,
688 const CIMName& methodName,
689 const Array<CIMParamValue>& inParameters,
690 Array<CIMParamValue>& outParameters)
691 kumpf 1.1 {
692 PEG_METHOD_ENTER(TRC_CIMOM_HANDLE, "ClientCIMOMHandleRep::invokeMethod");
693
694 ClientCIMOMHandleAccessController access(_clientMutex);
695 ClientCIMOMHandleSetup setup(_client, context);
696
697 PEG_METHOD_EXIT();
698 return _client->invokeMethod(
699 nameSpace,
700 instanceName,
701 methodName,
702 inParameters,
703 outParameters);
704 }
705
706
707 //
708 // Other public methods
709 //
710
711 #ifdef PEGASUS_USE_EXPERIMENTAL_INTERFACES
712 kumpf 1.1 OperationContext ClientCIMOMHandleRep::getResponseContext()
713 {
714 OperationContext ctx;
715
716 Thread* curThrd = Thread::getCurrent();
717 if (curThrd == NULL)
718 {
|