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

Diff for /pegasus/src/Pegasus/IndicationService/ProviderIndicationCountTable.cpp between version 1.2 and 1.3

version 1.2, 2008/05/02 19:02:55 version 1.3, 2008/05/27 17:49:24
Line 257 
Line 257 
  
     for (Uint32 i = 0; i < indicationCountEntries.size(); i++)     for (Uint32 i = 0; i < indicationCountEntries.size(); i++)
     {     {
           CIMInstance providerIndDataInstance = _buildProviderIndDataInstance(
               indicationCountEntries[i]);
           instances.append(providerIndDataInstance);
       }
   
       PEG_METHOD_EXIT();
       return instances;
   }
   
   Array<CIMObjectPath>
       ProviderIndicationCountTable::enumerateProviderIndicationDataInstanceNames()
   {
       PEG_METHOD_ENTER(TRC_INDICATION_SERVICE,
           "ProviderIndicationCountTable::"
               "enumerateProviderIndicationDataInstanceNames");
   
       Array<CIMObjectPath> instanceNames;
   
       //
       // get entire provider indication count table entries
       //
       Array<_ProviderIndicationCountTableEntry> indicationCountEntries =
           _getAllEntries();
   
       for (Uint32 i = 0; i < indicationCountEntries.size(); i++)
       {
           CIMObjectPath path = _buildProviderIndDataInstanceName(
               indicationCountEntries[i]);
   
           instanceNames.append(path);
       }
   
       PEG_METHOD_EXIT();
       return instanceNames;
   }
   
   CIMInstance ProviderIndicationCountTable::getProviderIndicationDataInstance(
       const CIMObjectPath& instanceName)
   {
       PEG_METHOD_ENTER(TRC_INDICATION_SERVICE,
           "ProviderIndicationCountTable::getProviderIndicationDataInstance");
   
       //
       // Gets provider module name and provider name from the provider indication
       // data instance object path
       //
       String providerModuleName;
       String providerName;
       Array<CIMKeyBinding> keys = instanceName.getKeyBindings();
   
       for (Uint32 i = 0; i < keys.size(); i++)
       {
           if (keys[i].getName() == _PROPERTY_PROVIDERNAME)
           {
               providerName = keys[i].getValue();
           }
           else if (keys[i].getName() == _PROPERTY_PROVIDERMODULENAME)
           {
               providerModuleName = keys[i].getValue();
           }
       }
   
       String providerKey = _generateKey(providerModuleName, providerName);
   
       _ProviderIndicationCountTableEntry entry;
   
       WriteLock lock(_tableLock);
   
       if (_table.lookup(providerKey, entry))
       {
           CIMInstance providerIndDataInstance =
               _buildProviderIndDataInstance(entry);
   
           PEG_METHOD_EXIT();
           return providerIndDataInstance;
       }
   
       PEG_METHOD_EXIT();
       throw CIMObjectNotFoundException(instanceName.toString());
   }
   
   CIMObjectPath ProviderIndicationCountTable::_buildProviderIndDataInstanceName(
       const _ProviderIndicationCountTableEntry& indicationCountEntry)
   {
       PEG_METHOD_ENTER(TRC_INDICATION_SERVICE,
           "ProviderIndicationCountTable::_buildProviderIndDataInstanceName");
   
       CIMObjectPath instanceName;
       Array<CIMKeyBinding> keyBindings;
       keyBindings.append(CIMKeyBinding(
           "ProviderModuleName",
           indicationCountEntry.providerModuleName,
           CIMKeyBinding::STRING));
       keyBindings.append(CIMKeyBinding(
           "ProviderName",
           indicationCountEntry.providerName,
           CIMKeyBinding::STRING));
   
       instanceName.setClassName(PEGASUS_CLASSNAME_PROVIDERINDDATA);
       instanceName.setKeyBindings(keyBindings);
   
       PEG_METHOD_EXIT();
       return instanceName;
   }
   
   CIMInstance ProviderIndicationCountTable::_buildProviderIndDataInstance(
       const _ProviderIndicationCountTableEntry& indicationCountEntry)
   {
       PEG_METHOD_ENTER(TRC_INDICATION_SERVICE,
           "ProviderIndicationCountTable::_buildProviderIndDataInstance");
   
         CIMInstance providerIndDataInstance(PEGASUS_CLASSNAME_PROVIDERINDDATA);         CIMInstance providerIndDataInstance(PEGASUS_CLASSNAME_PROVIDERINDDATA);
         providerIndDataInstance.addProperty(CIMProperty(         providerIndDataInstance.addProperty(CIMProperty(
             CIMName("ProviderModuleName"),             CIMName("ProviderModuleName"),
             indicationCountEntries[i].providerModuleName));          indicationCountEntry.providerModuleName));
         providerIndDataInstance.addProperty(CIMProperty(         providerIndDataInstance.addProperty(CIMProperty(
             CIMName("ProviderName"),             CIMName("ProviderName"),
             indicationCountEntries[i].providerName));          indicationCountEntry.providerName));
         providerIndDataInstance.addProperty(CIMProperty(         providerIndDataInstance.addProperty(CIMProperty(
             CIMName("IndicationCount"),             CIMName("IndicationCount"),
             indicationCountEntries[i].indicationCount));          indicationCountEntry.indicationCount));
         providerIndDataInstance.addProperty(CIMProperty(         providerIndDataInstance.addProperty(CIMProperty(
             CIMName("OrphanIndicationCount"),             CIMName("OrphanIndicationCount"),
             indicationCountEntries[i].orphanIndicationCount));          indicationCountEntry.orphanIndicationCount));
  
         instances.append(providerIndDataInstance);      CIMObjectPath path = _buildProviderIndDataInstanceName(
     }          indicationCountEntry);
       providerIndDataInstance.setPath(path);
  
     PEG_METHOD_EXIT();     PEG_METHOD_EXIT();
     return instances;      return providerIndDataInstance;
 } }
  
 PEGASUS_NAMESPACE_END PEGASUS_NAMESPACE_END


Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2