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

Diff for /pegasus/src/Pegasus/ProviderManager2/Attic/BasicProviderManagerRouter.cpp between version 1.28.2.2 and 1.28.2.3

version 1.28.2.2, 2006/03/10 21:47:05 version 1.28.2.3, 2006/10/18 19:16:12
Line 342 
Line 342 
         try         try
         {         {
             // Look up the appropriate ProviderManager by InterfaceType             // Look up the appropriate ProviderManager by InterfaceType
             pm = _lookupProviderManager(interfaceType);              pm = _getProviderManager(interfaceType);
         }         }
         catch (const CIMException& e)         catch (const CIMException& e)
         {         {
Line 378 
Line 378 
 } }
  
 // ATTN: May need to add interfaceVersion parameter to further constrain lookup // ATTN: May need to add interfaceVersion parameter to further constrain lookup
 ProviderManager* BasicProviderManagerRouter::_lookupProviderManager(  ProviderManager* BasicProviderManagerRouter::_getProviderManager(
     const String& interfaceType)     const String& interfaceType)
 { {
     PEG_METHOD_ENTER(TRC_PROVIDERMANAGER,     PEG_METHOD_ENTER(TRC_PROVIDERMANAGER,
         "BasicProviderManagerRouter::_lookupProviderManager");          "BasicProviderManagerRouter::_getProviderManager");
  
     //     //
     // Search for this InterfaceType in the table of loaded ProviderManagers     // Search for this InterfaceType in the table of loaded ProviderManagers
Line 390 
Line 390 
     {     {
         ReadLock tableLock(_providerManagerTableLock);         ReadLock tableLock(_providerManagerTableLock);
  
         // find provider manager for specified provider interface type          ProviderManager* pm = _lookupProviderManager(interfaceType);
         for(Uint32 i = 0, n = _providerManagerTable.size(); i < n; i++)          if (pm)
         {  
             if (interfaceType == _providerManagerTable[i]->getInterfaceName())  
             {             {
                 ProviderManagerContainer* pmc=_providerManagerTable[i];  
                 PEG_METHOD_EXIT();                 PEG_METHOD_EXIT();
                 return pmc->getProviderManager();              return pm;
             }  
         }         }
     }     }
  
Line 408 
Line 404 
     {     {
         WriteLock tableLock(_providerManagerTableLock);         WriteLock tableLock(_providerManagerTableLock);
  
           ProviderManager* pm = _lookupProviderManager(interfaceType);
           if (pm)
           {
               PEG_METHOD_EXIT();
               return pm;
           }
   
         // ATTN: this section is a temporary solution to populate the list of         // ATTN: this section is a temporary solution to populate the list of
         // enabled provider managers for a given distribution.  It includes         // enabled provider managers for a given distribution.  It includes
         // another temporary solution for converting a generic file name into         // another temporary solution for converting a generic file name into
Line 468 
Line 471 
     return 0;     return 0;
 } }
  
   // NOTE: The caller must lock _providerManagerTableLock before calling this
   // method.
   ProviderManager* BasicProviderManagerRouter::_lookupProviderManager(
       const String& interfaceType)
   {
       PEG_METHOD_ENTER(TRC_PROVIDERMANAGER,
           "BasicProviderManagerRouter::_lookupProviderManager");
   
       //
       // Search for this InterfaceType in the table of loaded ProviderManagers
       //
       for (Uint32 i = 0, n = _providerManagerTable.size(); i < n; i++)
       {
           if (interfaceType == _providerManagerTable[i]->getInterfaceName())
           {
               ProviderManagerContainer* pmc = _providerManagerTable[i];
               PEG_METHOD_EXIT();
               return pmc->getProviderManager();
           }
       }
   
       // Not found
       PEG_METHOD_EXIT();
       return 0;
   }
   
 Boolean BasicProviderManagerRouter::hasActiveProviders() Boolean BasicProviderManagerRouter::hasActiveProviders()
 { {
     PEG_METHOD_ENTER(TRC_PROVIDERMANAGER,     PEG_METHOD_ENTER(TRC_PROVIDERMANAGER,


Legend:
Removed from v.1.28.2.2  
changed lines
  Added in v.1.28.2.3

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2