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

Diff for /pegasus/src/Pegasus/ProviderManager2/Default/DefaultProviderManager.cpp between version 1.34 and 1.41

version 1.34, 2004/06/10 08:57:32 version 1.41, 2004/08/17 15:53:36
Line 32 
Line 32 
 //              Yi Zhou, Hewlett-Packard Company (yi_zhou@hp.com) //              Yi Zhou, Hewlett-Packard Company (yi_zhou@hp.com)
 //              Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com) //              Roger Kumpf, Hewlett-Packard Company (roger_kumpf@hp.com)
 //                              Seema Gupta (gseema@in.ibm.com) for PEP135 //                              Seema Gupta (gseema@in.ibm.com) for PEP135
   //                              Willis White (whiwill@us.ibm.com)
 // //
 //%///////////////////////////////////////////////////////////////////////////// //%/////////////////////////////////////////////////////////////////////////////
  
Line 44 
Line 45 
 #include <Pegasus/Common/StatisticalData.h> #include <Pegasus/Common/StatisticalData.h>
 #include <Pegasus/Common/Logger.h> #include <Pegasus/Common/Logger.h>
 #include <Pegasus/Common/MessageLoader.h> //l10n #include <Pegasus/Common/MessageLoader.h> //l10n
   #include <Pegasus/Common/Constants.h>
  
 #include <Pegasus/Common/QueryExpression.h> #include <Pegasus/Common/QueryExpression.h>
 #include <Pegasus/ProviderManager2/QueryExpressionFactory.h> #include <Pegasus/ProviderManager2/QueryExpressionFactory.h>
Line 77 
Line 79 
 }; };
  
 // //
 // Provider module status  
 //  
 static const Uint16 _MODULE_OK       = 2;  
 static const Uint16 _MODULE_STOPPING = 9;  
 static const Uint16 _MODULE_STOPPED  = 10;  
   
   
 //  
 // Default Provider Manager // Default Provider Manager
 // //
 DefaultProviderManager::DefaultProviderManager(void) DefaultProviderManager::DefaultProviderManager(void)
Line 1075 
Line 1069 
                 context.insert(request->operationContext.get(AcceptLanguageListContainer::NAME));                 context.insert(request->operationContext.get(AcceptLanguageListContainer::NAME));
             context.insert(request->operationContext.get(ContentLanguageListContainer::NAME));             context.insert(request->operationContext.get(ContentLanguageListContainer::NAME));
  
         // ATTN KS STAT_GETSTARTTIME;          STAT_GETSTARTTIME;
         pm_service_op_lock op_lock(&ph.GetProvider());         pm_service_op_lock op_lock(&ph.GetProvider());
  
         ph.GetProvider().associators(         ph.GetProvider().associators(
Line 1087 
Line 1081 
             request->resultRole,             request->resultRole,
             request->includeQualifiers,             request->includeQualifiers,
             request->includeClassOrigin,             request->includeClassOrigin,
             request->propertyList.getPropertyNameArray(),              request->propertyList,
             handler);             handler);
  
         STAT_PMS_PROVIDEREND;         STAT_PMS_PROVIDEREND;
Line 1183 
Line 1177 
                 context.insert(request->operationContext.get(AcceptLanguageListContainer::NAME));                 context.insert(request->operationContext.get(AcceptLanguageListContainer::NAME));
             context.insert(request->operationContext.get(ContentLanguageListContainer::NAME));             context.insert(request->operationContext.get(ContentLanguageListContainer::NAME));
  
                   STAT_GETSTARTTIME;
         pm_service_op_lock op_lock(&ph.GetProvider());         pm_service_op_lock op_lock(&ph.GetProvider());
  
         ph.GetProvider().associatorNames(         ph.GetProvider().associatorNames(
Line 2170 
Line 2165 
  
     response->dest = request->queueIds.top();     response->dest = request->queueIds.top();
  
     EnableIndicationsResponseHandler *handler =  
         new EnableIndicationsResponseHandler(  
             request, response, request->provider, _indicationCallback);  
   
         CIMInstance req_provider, req_providerModule;         CIMInstance req_provider, req_providerModule;
         ProviderIdContainer pidc = (ProviderIdContainer)request->operationContext.get(ProviderIdContainer::NAME);         ProviderIdContainer pidc = (ProviderIdContainer)request->operationContext.get(ProviderIdContainer::NAME);
  
         req_provider = pidc.getProvider();         req_provider = pidc.getProvider();
         req_providerModule = pidc.getModule();         req_providerModule = pidc.getModule();
  
       EnableIndicationsResponseHandler *handler =
           new EnableIndicationsResponseHandler(
               request, response, req_provider, _indicationCallback);
   
   
   
     try     try
     {     {
           String physicalName=_resolvePhysicalName( req_providerModule.getProperty(           String physicalName=_resolvePhysicalName( req_providerModule.getProperty(
Line 2366 
Line 2363 
         OpProviderHolder ph =         OpProviderHolder ph =
             providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY);             providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY);
  
                   STAT_GETSTARTTIME
   
         PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4,         PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4,
                        "Calling provider.: " +                        "Calling provider.: " +
                        ph.GetProvider().getName());                        ph.GetProvider().getName());
Line 2389 
Line 2388 
                                 request->destinationPath,                                 request->destinationPath,
                                 indication_copy);                                 indication_copy);
  
             STAT_PMS_PROVIDEREND
   
     }     }
  
     catch(CIMException & e)     catch(CIMException & e)
Line 2474 
Line 2475 
             {             {
                 // disable failed since there are pending requests,                 // disable failed since there are pending requests,
                 // stop trying to disable other providers in this module.                 // stop trying to disable other providers in this module.
                 operationalStatus.append(_MODULE_OK);                  operationalStatus.append(CIM_MSE_OPSTATUS_VALUE_OK);
                 break;                 break;
             }             }
             else if (ret_value == 1)  // Success             else if (ret_value == 1)  // Success
Line 2529 
Line 2530 
         // Status is set to OK if a provider was busy         // Status is set to OK if a provider was busy
         if (operationalStatus.size() == 0)         if (operationalStatus.size() == 0)
         {         {
             operationalStatus.append(_MODULE_STOPPED);              operationalStatus.append(CIM_MSE_OPSTATUS_VALUE_STOPPED);
         }         }
     }     }
     else     else
     {     {
         // If exception occurs, module is not stopped         // If exception occurs, module is not stopped
         operationalStatus.append(_MODULE_OK);          operationalStatus.append(CIM_MSE_OPSTATUS_VALUE_OK);
     }     }
  
     CIMDisableModuleResponseMessage * response =     CIMDisableModuleResponseMessage * response =
Line 2566 
Line 2567 
     PEGASUS_ASSERT(request != 0);     PEGASUS_ASSERT(request != 0);
  
     Array<Uint16> operationalStatus;     Array<Uint16> operationalStatus;
     operationalStatus.append(_MODULE_OK);      operationalStatus.append(CIM_MSE_OPSTATUS_VALUE_OK);
  
     CIMEnableModuleResponseMessage * response =     CIMEnableModuleResponseMessage * response =
         new CIMEnableModuleResponseMessage(         new CIMEnableModuleResponseMessage(
Line 2620 
Line 2621 
     const Provider & provider,     const Provider & provider,
     const EnableIndicationsResponseHandler *handler)     const EnableIndicationsResponseHandler *handler)
 { {
     PEG_METHOD_ENTER (TRC_INDICATION_SERVICE,      PEG_METHOD_ENTER (TRC_PROVIDERMANAGER,
         "DefaultProviderManager::_insertEntry");         "DefaultProviderManager::_insertEntry");
  
     String tableKey = _generateKey     String tableKey = _generateKey
Line 2634 
Line 2635 
 EnableIndicationsResponseHandler * DefaultProviderManager::_removeEntry( EnableIndicationsResponseHandler * DefaultProviderManager::_removeEntry(
     const String & key)     const String & key)
 { {
     PEG_METHOD_ENTER (TRC_INDICATION_SERVICE,      PEG_METHOD_ENTER (TRC_PROVIDERMANAGER,
         "DefaultProviderManager::_removeEntry");         "DefaultProviderManager::_removeEntry");
     EnableIndicationsResponseHandler *ret = 0;     EnableIndicationsResponseHandler *ret = 0;
  
Line 2651 
Line 2652 
 { {
     String tableKey;     String tableKey;
  
     PEG_METHOD_ENTER (TRC_INDICATION_SERVICE,      PEG_METHOD_ENTER (TRC_PROVIDERMANAGER,
         "DefaultProviderManager::_generateKey");         "DefaultProviderManager::_generateKey");
  
     //     //
Line 2673 
Line 2674 
 { {
     String tableKey;     String tableKey;
  
     PEG_METHOD_ENTER (TRC_INDICATION_SERVICE,      PEG_METHOD_ENTER (TRC_PROVIDERMANAGER,
                       "DefaultProviderManagerService::_generateKey");                       "DefaultProviderManagerService::_generateKey");
  
     //     //
Line 2708 
Line 2709 
         providerId.getModule().findProperty("InterfaceType")).getValue();         providerId.getModule().findProperty("InterfaceType")).getValue();
     genericValue.get(interfaceName);     genericValue.get(interfaceName);
  
     // Check if the provider module is blocked  
     Array<Uint16> operationalStatus;  
     Uint32 pos = providerId.getModule().findProperty(  
         CIMName("OperationalStatus"));  
     PEGASUS_ASSERT(pos != PEG_NOT_FOUND);  
     providerId.getModule().getProperty(pos).getValue().get(operationalStatus);  
   
     for(Uint32 i = 0; i < operationalStatus.size(); i++)  
     {  
         if(operationalStatus[i] == _MODULE_STOPPED ||  
            operationalStatus[i] == _MODULE_STOPPING)  
         {  
             throw PEGASUS_CIM_EXCEPTION_L(CIM_ERR_ACCESS_DENIED,  
                 MessageLoaderParms(  
                     "ProviderManager.ProviderManagerService.PROVIDER_BLOCKED",  
                     "provider blocked."));  
         }  
     }  
   
     return ProviderName(providerName, fileName, interfaceName, 0);     return ProviderName(providerName, fileName, interfaceName, 0);
 } }
  


Legend:
Removed from v.1.34  
changed lines
  Added in v.1.41

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2