(file) Return to InteropAssociationProvider.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / ControlProviders / InteropProvider

Diff for /pegasus/src/Pegasus/ControlProviders/InteropProvider/InteropAssociationProvider.cpp between version 1.5.4.1 and 1.13.14.1

version 1.5.4.1, 2008/02/22 23:13:52 version 1.13.14.1, 2013/10/01 15:47:44
Line 1 
Line 1 
 //%2006////////////////////////////////////////////////////////////////////////  //%LICENSE////////////////////////////////////////////////////////////////
 // //
 // Copyright (c) 2000, 2001, 2002 BMC Software; Hewlett-Packard Development  // Licensed to The Open Group (TOG) under one or more contributor license
 // Company, L.P.; IBM Corp.; The Open Group; Tivoli Systems.  // agreements.  Refer to the OpenPegasusNOTICE.txt file distributed with
 // Copyright (c) 2003 BMC Software; Hewlett-Packard Development Company, L.P.;  // this work for additional information regarding copyright ownership.
 // IBM Corp.; EMC Corporation, The Open Group.  // Each contributor licenses this file to you under the OpenPegasus Open
 // Copyright (c) 2004 BMC Software; Hewlett-Packard Development Company, L.P.;  // Source License; you may not use this file except in compliance with the
 // IBM Corp.; EMC Corporation; VERITAS Software Corporation; The Open Group.  // License.
 // Copyright (c) 2005 Hewlett-Packard Development Company, L.P.; IBM Corp.;  //
 // EMC Corporation; VERITAS Software Corporation; The Open Group.  // Permission is hereby granted, free of charge, to any person obtaining a
 // Copyright (c) 2006 Hewlett-Packard Development Company, L.P.; IBM Corp.;  // copy of this software and associated documentation files (the "Software"),
 // EMC Corporation; Symantec Corporation; The Open Group.  // to deal in the Software without restriction, including without limitation
 //  // the rights to use, copy, modify, merge, publish, distribute, sublicense,
 // Permission is hereby granted, free of charge, to any person obtaining a copy  // and/or sell copies of the Software, and to permit persons to whom the
 // of this software and associated documentation files (the "Software"), to  // Software is furnished to do so, subject to the following conditions:
 // deal in the Software without restriction, including without limitation the  //
 // rights to use, copy, modify, merge, publish, distribute, sublicense, and/or  // The above copyright notice and this permission notice shall be included
 // sell copies of the Software, and to permit persons to whom the Software is  // in all copies or substantial portions of the Software.
 // furnished to do so, subject to the following conditions:  //
 //  // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
 // THE ABOVE COPYRIGHT NOTICE AND THIS PERMISSION NOTICE SHALL BE INCLUDED IN  // OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
 // ALL COPIES OR SUBSTANTIAL PORTIONS OF THE SOFTWARE. THE SOFTWARE IS PROVIDED  // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
 // "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT  // IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
 // LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR  // CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
 // PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT  // TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
 // HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN  // SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
 // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION  
 // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  
 // //
 //=============================================================================  //////////////////////////////////////////////////////////////////////////
 // //
 //%//////////////////////////////////////////////////////////////////////////// //%////////////////////////////////////////////////////////////////////////////
  
Line 49 
Line 47 
 //  use we added a number of traces to help diagnostics. //  use we added a number of traces to help diagnostics.
 /////////////////////////////////////////////////////////////////////////////// ///////////////////////////////////////////////////////////////////////////////
  
   
 #include "InteropProvider.h" #include "InteropProvider.h"
 #include "InteropProviderUtils.h" #include "InteropProviderUtils.h"
 #include "InteropConstants.h" #include "InteropConstants.h"
   #include <Pegasus/Common/ArrayIterator.h>
   #include <Pegasus/Common/Pegasus_inl.h>
  
 PEGASUS_USING_STD; PEGASUS_USING_STD;
 PEGASUS_NAMESPACE_BEGIN PEGASUS_NAMESPACE_BEGIN
Line 88 
Line 89 
         (const char *)resultRole.getCString(),         (const char *)resultRole.getCString(),
                       boolToString(includeQualifiers),                       boolToString(includeQualifiers),
                       boolToString(includeClassOrigin),                       boolToString(includeClassOrigin),
         (const char *)propertyListToString(propertyList).getCString()));          (const char *)propertyList.toString().getCString()));
  
     handler.processing();     handler.processing();
     String originRole = role;     String originRole = role;
Line 118 
Line 119 
             targetRole,             targetRole,
             CIMPropertyList(),             CIMPropertyList(),
             resultClass);             resultClass);
         for (Uint32 i = 0, n = refs.size(); i < n; ++i)  
           if( refs.size() )
         {         {
             CIMInstance & currentRef = refs[i];              Array<CIMInstance> refObjs =
             // Retrieve the "other side" of the association                  getReferencedInstances(refs,targetRole,context,propertyList);
             CIMObjectPath currentTarget = getRequiredValue<CIMObjectPath>(              ConstArrayIterator<CIMInstance> refsIterator(refObjs);
                 currentRef,              for(Uint32 i = 0; i < refsIterator.size(); i++)
                 targetRole);              {
             CIMInstance tmpInstance = localGetInstance(                  handler.deliver(refsIterator[i]);
                 context,  
                 currentTarget,  
                 propertyList);  
             tmpInstance.setPath(currentTarget);  
             handler.deliver(tmpInstance);  
         }         }
           }
   
         if (numIterations == 2)         if (numIterations == 2)
         {         {
             originRole = String("Dependent");             originRole = String("Dependent");
Line 198 
Line 197 
             targetRole,             targetRole,
             CIMPropertyList(),             CIMPropertyList(),
             resultClass);             resultClass);
         for (Uint32 i = 0, n = refs.size(); i < n; ++i)          for (Uint32 j = 0, n = refs.size(); j < n; ++j)
         {         {
             CIMInstance & currentRef = refs[i];              CIMInstance & currentRef = refs[j];
             CIMObjectPath currentTarget = getRequiredValue<CIMObjectPath>(             CIMObjectPath currentTarget = getRequiredValue<CIMObjectPath>(
                 currentRef,                 currentRef,
                 targetRole);                 targetRole);
Line 244 
Line 243 
         (const char *)role.getCString(),         (const char *)role.getCString(),
                       boolToString(includeQualifiers),                       boolToString(includeQualifiers),
                       boolToString(includeClassOrigin),                       boolToString(includeClassOrigin),
         (const char *)propertyListToString(propertyList).getCString()));          (const char *)propertyList.toString().getCString()));
  
     handler.processing();     handler.processing();
     String tmpRole = role;     String tmpRole = role;
Line 271 
Line 270 
             resultClass,             resultClass,
             tmpRole,             tmpRole,
             tmpTarget);             tmpTarget);
         for (Uint32 i = 0, n = refs.size(); i < n; ++i)          for (Uint32 j = 0, n = refs.size(); j < n; ++j)
         {         {
             handler.deliver((CIMObject)refs[i]);              handler.deliver((CIMObject)refs[j]);
         }         }
         if (numIterations == 2)         if (numIterations == 2)
         {         {
Line 326 
Line 325 
             resultClass,             resultClass,
             tmpRole,             tmpRole,
             tmpTarget);             tmpTarget);
         for (Uint32 i = 0, n = refs.size(); i < n; ++i)          for (Uint32 j = 0, n = refs.size(); j < n; ++j)
         {         {
             handler.deliver(refs[i].getPath());              handler.deliver(refs[j].getPath());
         }         }
         if (numIterations == 2)         if (numIterations == 2)
         {         {


Legend:
Removed from v.1.5.4.1  
changed lines
  Added in v.1.13.14.1

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2