version 1.10, 2003/11/27 01:24:41
|
version 1.10.2.2, 2004/02/19 01:01:54
|
|
|
/* case CIM_CONSUME_INDICATION_REQUEST_MESSAGE: | /* case CIM_CONSUME_INDICATION_REQUEST_MESSAGE: |
response = handleConsumeIndicationRequest(request); | response = handleConsumeIndicationRequest(request); |
break; | break; |
|
*/ |
case CIM_DISABLE_MODULE_REQUEST_MESSAGE: | case CIM_DISABLE_MODULE_REQUEST_MESSAGE: |
response = handleDisableModuleRequest(request); | response = handleDisableModuleRequest(request); |
| |
|
|
case CIM_ENABLE_MODULE_REQUEST_MESSAGE: | case CIM_ENABLE_MODULE_REQUEST_MESSAGE: |
response = handleEnableModuleRequest(request); | response = handleEnableModuleRequest(request); |
| |
break; */ |
break; |
case CIM_STOP_ALL_PROVIDERS_REQUEST_MESSAGE: | case CIM_STOP_ALL_PROVIDERS_REQUEST_MESSAGE: |
response = handleStopAllProvidersRequest(request); | response = handleStopAllProvidersRequest(request); |
| |
|
|
| |
// Unload providers | // Unload providers |
Array<CIMInstance> _pInstances = request->providers; | Array<CIMInstance> _pInstances = request->providers; |
|
String physicalName=_resolvePhysicalName(request->providerModule.getProperty( |
|
request->providerModule.findProperty("Location")).getValue().toString()); |
| |
for(Uint32 i = 0, n = _pInstances.size(); i < n; i++) | for(Uint32 i = 0, n = _pInstances.size(); i < n; i++) |
{ | { |
/* temp disabled by Chip |
providerManager.unloadProvider(_pInstances[i].getProperty( |
// get the provider file name and logical name |
request->providerModule.findProperty |
Triad<String, String, String> triad = |
("Name")).getValue ().toString (), |
getProviderRegistrar()->_getProviderRegPair(_pInstances[i], mInstance); |
physicalName); |
|
|
providerManager.unloadProvider(triad.first, triad.second); |
|
*/ |
|
} | } |
| |
if(!disableProviderOnly) | if(!disableProviderOnly) |
|
|
return(temp); | return(temp); |
} | } |
| |
|
String CMPIProviderManager::_resolvePhysicalName(const String & name) |
|
{ |
|
String physicalName; |
|
|
|
#if defined(PEGASUS_PLATFORM_WIN32_IX86_MSVC) |
|
physicalName = name + String(".dll"); |
|
#elif defined(PEGASUS_PLATFORM_LINUX_IX86_GNU) || defined(PEGASUS_PLATFORM_LINUX_IA86_GNU) |
|
String root = ConfigManager::getHomedPath(ConfigManager::getInstance()->getCurrentValue("providerDir")); |
|
physicalName = root + String("/lib") + name + String(".so"); |
|
#elif defined(PEGASUS_OS_HPUX) |
|
String root = ConfigManager::getHomedPath(ConfigManager::getInstance()->getCurrentValue("providerDir")); |
|
physicalName = root + String("/lib") + name + String(".sl"); |
|
#elif defined(PEGASUS_OS_OS400) |
|
physicalName = name; |
|
#else |
|
String root = ConfigManager::getHomedPath(ConfigManager::getInstance()->getCurrentValue("providerDir")); |
|
physicalName = root + String("/lib") + name + String(".so"); |
|
#endif |
|
|
|
return physicalName; |
|
} |
|
|
String CMPIProviderManager::resolveFileName(String fileName) | String CMPIProviderManager::resolveFileName(String fileName) |
{ | { |
String name; | String name; |