version 1.1, 2003/08/18 04:27:16
|
version 1.5, 2003/10/11 15:25:10
|
|
|
{ | { |
} | } |
| |
Message * DefaultProviderManager::processMessage(Message * request) |
Message * DefaultProviderManager::processMessage(Message * request) throw() |
{ | { |
PEG_METHOD_ENTER(TRC_PROVIDERMANAGER, | PEG_METHOD_ENTER(TRC_PROVIDERMANAGER, |
"DefaultProviderManager::processMessage()"); | "DefaultProviderManager::processMessage()"); |
|
|
request->instanceName.getClassName(), | request->instanceName.getClassName(), |
request->instanceName.getKeyBindings()); | request->instanceName.getKeyBindings()); |
| |
InternalProviderName name( |
ProviderName name( |
|
objectPath.toString(), |
String::EMPTY, | String::EMPTY, |
String::EMPTY, | String::EMPTY, |
objectPath.toString()); |
String::EMPTY, |
|
0); |
| |
name = findProvider(name.toString()); |
// resolve provider name |
|
name = _resolveProviderName(name); |
| |
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown error."); | handler.setStatus(CIM_ERR_FAILED, "Unknown error."); |
} | } |
| |
|
|
request->nameSpace, | request->nameSpace, |
request->className); | request->className); |
| |
InternalProviderName name( |
ProviderName name( |
|
objectPath.toString(), |
String::EMPTY, | String::EMPTY, |
String::EMPTY, | String::EMPTY, |
objectPath.toString()); |
String::EMPTY, |
|
0); |
| |
name = findProvider(name.toString()); |
// resolve provider name |
|
name = _resolveProviderName(name); |
| |
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown error."); | handler.setStatus(CIM_ERR_FAILED, "Unknown error."); |
} | } |
| |
|
|
request->className); | request->className); |
| |
// build an internal provider name from the request arguments | // build an internal provider name from the request arguments |
InternalProviderName name( |
ProviderName name( |
|
objectPath.toString(), |
String::EMPTY, | String::EMPTY, |
String::EMPTY, | String::EMPTY, |
objectPath.toString()); |
String::EMPTY, |
|
0); |
| |
// resolve the physical and logical provider name |
// resolve provider name |
name = findProvider(name.toString()); |
name = _resolveProviderName(name); |
| |
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown error."); | handler.setStatus(CIM_ERR_FAILED, "Unknown error."); |
} | } |
| |
|
|
request->newInstance.getPath().getClassName(), | request->newInstance.getPath().getClassName(), |
request->newInstance.getPath().getKeyBindings()); | request->newInstance.getPath().getKeyBindings()); |
| |
InternalProviderName name( |
ProviderName name( |
|
objectPath.toString(), |
String::EMPTY, | String::EMPTY, |
String::EMPTY, | String::EMPTY, |
objectPath.toString()); |
String::EMPTY, |
|
0); |
| |
name = findProvider(name.toString()); |
// resolve provider name |
|
name = _resolveProviderName(name); |
| |
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown error."); | handler.setStatus(CIM_ERR_FAILED, "Unknown error."); |
} | } |
| |
|
|
request->modifiedInstance.getPath ().getClassName(), | request->modifiedInstance.getPath ().getClassName(), |
request->modifiedInstance.getPath ().getKeyBindings()); | request->modifiedInstance.getPath ().getKeyBindings()); |
| |
InternalProviderName name( |
ProviderName name( |
|
objectPath.toString(), |
String::EMPTY, | String::EMPTY, |
String::EMPTY, | String::EMPTY, |
objectPath.toString()); |
String::EMPTY, |
|
0); |
| |
name = findProvider(name.toString()); |
// resolve provider name |
|
name = _resolveProviderName(name); |
| |
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown error."); | handler.setStatus(CIM_ERR_FAILED, "Unknown error."); |
} | } |
| |
|
|
request->instanceName.getClassName(), | request->instanceName.getClassName(), |
request->instanceName.getKeyBindings()); | request->instanceName.getKeyBindings()); |
| |
InternalProviderName name( |
ProviderName name( |
|
objectPath.toString(), |
String::EMPTY, | String::EMPTY, |
String::EMPTY, | String::EMPTY, |
objectPath.toString()); |
String::EMPTY, |
|
0); |
| |
name = findProvider(name.toString()); |
// resolve provider name |
|
name = _resolveProviderName(name); |
| |
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown error."); | handler.setStatus(CIM_ERR_FAILED, "Unknown error."); |
} | } |
| |
|
|
| |
objectPath.setKeyBindings(request->objectName.getKeyBindings()); | objectPath.setKeyBindings(request->objectName.getKeyBindings()); |
| |
// get the provider file name and logical name |
ProviderName name( |
Array<String> first; |
objectPath.toString(), |
Array<String> second; |
String::EMPTY, |
Array<String> third; |
String::EMPTY, |
|
String::EMPTY, |
/* ATTN: temp disabled by Chip |
0); |
getProviderRegistrar()->_lookupProviderForAssocClass(objectPath, |
|
// request->associationClass, |
// resolve provider name |
// request->resultClass, |
name = _resolveProviderName(name); |
CIMName(), |
|
CIMName(), |
|
first, second, third); |
|
*/ |
|
| |
for(Uint32 i=0,n=first.size(); i<n; i++) |
|
{ |
|
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
providerManager.getProvider(first[i], second[i], third[i]); |
providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY); |
| |
// convert arguments | // convert arguments |
OperationContext context; | OperationContext context; |
|
|
handler); | handler); |
| |
STAT_PMS_PROVIDEREND; | STAT_PMS_PROVIDEREND; |
|
|
} // end for loop |
|
} | } |
catch(CIMException & e) | catch(CIMException & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown error."); | handler.setStatus(CIM_ERR_FAILED, "Unknown error."); |
} | } |
| |
|
|
| |
objectPath.setKeyBindings(request->objectName.getKeyBindings()); | objectPath.setKeyBindings(request->objectName.getKeyBindings()); |
| |
// get the provider file name and logical name |
ProviderName name( |
Array<String> first; |
objectPath.toString(), |
Array<String> second; |
String::EMPTY, |
Array<String> third; |
String::EMPTY, |
|
String::EMPTY, |
|
0); |
| |
/* temp disabled by Chip |
// resolve provider name |
getProviderRegistrar()->_lookupProviderForAssocClass(objectPath, |
name = _resolveProviderName(name); |
// request->associationClass, |
|
// request->resultClass, |
|
CIMName(), |
|
CIMName(), |
|
first, second, third); |
|
*/ |
|
| |
for(Uint32 i=0,n=first.size(); i<n; i++) |
|
{ |
|
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
providerManager.getProvider(first[i], second[i], third[i]); |
providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY); |
| |
// convert arguments | // convert arguments |
OperationContext context; | OperationContext context; |
|
|
handler); | handler); |
| |
STAT_PMS_PROVIDEREND; | STAT_PMS_PROVIDEREND; |
|
|
} // end for loop |
|
} | } |
catch(CIMException & e) | catch(CIMException & e) |
{ | { |
|
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
|
"Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
|
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
|
"Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown error."); | handler.setStatus(CIM_ERR_FAILED, "Unknown error."); |
} | } |
| |
|
|
| |
objectPath.setKeyBindings(request->objectName.getKeyBindings()); | objectPath.setKeyBindings(request->objectName.getKeyBindings()); |
| |
// get the provider file name and logical name |
ProviderName name( |
Array<String> first; |
objectPath.toString(), |
Array<String> second; |
String::EMPTY, |
Array<String> third; |
String::EMPTY, |
|
String::EMPTY, |
|
0); |
| |
/* temp disabled by Chip |
// resolve provider name |
getProviderRegistrar()->_lookupProviderForAssocClass(objectPath, |
name = _resolveProviderName(name); |
// request->associationClass, |
|
// request->resultClass, |
|
CIMName(), |
|
CIMName(), |
|
first, second, third); |
|
*/ |
|
| |
for(Uint32 i = 0, n = first.size(); i < n; i++) |
|
{ |
|
// get cached or load new provider module | // get cached or load new provider module |
//Provider provider = |
|
OpProviderHolder ph = | OpProviderHolder ph = |
providerManager.getProvider(first[i], second[i], third[i]); |
providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY); |
| |
// convert arguments | // convert arguments |
OperationContext context; | OperationContext context; |
|
|
handler); | handler); |
| |
STAT_PMS_PROVIDEREND; | STAT_PMS_PROVIDEREND; |
|
|
} // end for loop |
|
} | } |
catch(CIMException & e) | catch(CIMException & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown error."); | handler.setStatus(CIM_ERR_FAILED, "Unknown error."); |
} | } |
| |
|
|
| |
objectPath.setKeyBindings(request->objectName.getKeyBindings()); | objectPath.setKeyBindings(request->objectName.getKeyBindings()); |
| |
// get the provider file name and logical name |
ProviderName name( |
Array<String> first; |
objectPath.toString(), |
Array<String> second; |
String::EMPTY, |
Array<String> third; |
String::EMPTY, |
|
String::EMPTY, |
|
0); |
| |
/* temp disabled by Chip |
// resolve provider name |
getProviderRegistrar()->_lookupProviderForAssocClass(objectPath, |
name = _resolveProviderName(name); |
// request->associationClass, |
|
// request->resultClass, |
|
CIMName(), |
|
CIMName(), |
|
first, second, third); |
|
*/ |
|
| |
for(Uint32 i=0,n=first.size(); i<n; i++) |
|
{ |
|
// get cached or load new provider module | // get cached or load new provider module |
//Provider provider = |
|
OpProviderHolder ph = | OpProviderHolder ph = |
providerManager.getProvider(first[i], second[i], third[i]); |
providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY); |
| |
// convert arguments | // convert arguments |
OperationContext context; | OperationContext context; |
|
|
handler); | handler); |
| |
STAT_PMS_PROVIDEREND; | STAT_PMS_PROVIDEREND; |
|
|
} // end for loop |
|
} | } |
catch(CIMException & e) | catch(CIMException & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown error."); | handler.setStatus(CIM_ERR_FAILED, "Unknown error."); |
} | } |
| |
|
|
request->instanceName.getClassName(), | request->instanceName.getClassName(), |
request->instanceName.getKeyBindings()); | request->instanceName.getKeyBindings()); |
| |
InternalProviderName name( |
ProviderName name( |
|
objectPath.toString(), |
String::EMPTY, | String::EMPTY, |
String::EMPTY, | String::EMPTY, |
objectPath.toString()); |
String::EMPTY, |
|
0); |
| |
name = findProvider(name.toString()); |
// resolve provider name |
|
name = _resolveProviderName(name); |
| |
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown error."); | handler.setStatus(CIM_ERR_FAILED, "Unknown error."); |
} | } |
| |
|
|
request->instanceName.getClassName(), | request->instanceName.getClassName(), |
request->instanceName.getKeyBindings()); | request->instanceName.getKeyBindings()); |
| |
InternalProviderName name( |
ProviderName name( |
|
objectPath.toString(), |
String::EMPTY, | String::EMPTY, |
String::EMPTY, | String::EMPTY, |
objectPath.toString()); |
String::EMPTY, |
|
0); |
| |
name = findProvider(name.toString()); |
// resolve provider name |
|
name = _resolveProviderName(name); |
| |
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown error."); | handler.setStatus(CIM_ERR_FAILED, "Unknown error."); |
} | } |
| |
|
|
request->instanceName.getClassName(), | request->instanceName.getClassName(), |
request->instanceName.getKeyBindings()); | request->instanceName.getKeyBindings()); |
| |
InternalProviderName name( |
ProviderName name( |
|
objectPath.toString(), |
String::EMPTY, | String::EMPTY, |
String::EMPTY, | String::EMPTY, |
objectPath.toString()); |
String::EMPTY, |
|
0); |
| |
name = findProvider(name.toString()); |
// resolve provider name |
|
name = _resolveProviderName(name); |
| |
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY); | providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY); |
| |
/* |
|
// get the provider file name and logical name |
|
Triad<String, String, String> triad = |
|
getProviderRegistrar()->_lookupMethodProviderForClass(objectPath, request->methodName); |
|
|
|
// get cached or load new provider module |
|
//Provider provider = |
|
OpProviderHolder ph = |
|
providerManager.getProvider(triad.first, triad.second, triad.third); |
|
*/ |
|
|
|
// convert arguments | // convert arguments |
OperationContext context; | OperationContext context; |
| |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown error."); | handler.setStatus(CIM_ERR_FAILED, "Unknown error."); |
} | } |
| |
|
|
| |
try | try |
{ | { |
InternalProviderName name(""); |
String temp; |
| |
/* temp disabled by Chip |
for(Uint32 i = 0, n = request->classNames.size(); i < n; i++) |
InternalProviderName name( |
{ |
|
temp.append(request->classNames[i].getString()); |
|
|
|
if(i == (n - 1)) |
|
{ |
|
temp.append(", "); |
|
} |
|
} |
|
|
|
Logger::put(Logger::STANDARD_LOG, System::CIMSERVER, Logger::TRACE, |
|
"DefaultProviderManager::handleCreateSubscriptionRequest - Host name: $0 Name space: $1 Class name(s): $2", |
|
System::getHostName(), |
|
request->nameSpace.getString(), |
|
temp); |
|
|
|
// NOTE: the provider and provider module name are embedded in the request, presumably to reduce |
|
// the number of provider lookups (but this should be trivial if the data is cached and accessed |
|
// from the same source). to keep the lookups consistent, use the first class name, combined |
|
// with the other information in the request, and create an object path that can be used to |
|
// resolve the provider using the ProviderRegistrar. |
|
|
|
// make target object path |
|
CIMObjectPath objectPath( |
|
System::getHostName(), |
|
request->nameSpace, |
|
request->classNames[0].getString()); |
|
|
|
ProviderName name( |
|
objectPath.toString(), |
String::EMPTY, | String::EMPTY, |
String::EMPTY, | String::EMPTY, |
objectPath.toString()); |
String::EMPTY, |
|
0); |
| |
name = findProvider(name.toString()); |
// resolve provider name |
*/ |
name = _resolveProviderName(name); |
| |
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY); | providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY); |
| |
/* |
|
// get the provider file name and logical name |
|
Triad<String, String, String> triad = |
|
getProviderRegistrar()->_getProviderRegPair(request->provider, request->providerModule); |
|
|
|
// get cached or load new provider module |
|
OpProviderHolder ph = |
|
providerManager.getProvider(triad.first, triad.second, triad.third); |
|
*/ |
|
|
|
// convert arguments | // convert arguments |
OperationContext context; | OperationContext context; |
| |
|
|
request->nameSpace, | request->nameSpace, |
request->classNames[i]); | request->classNames[i]); |
| |
Logger::put(Logger::STANDARD_LOG, System::CIMSERVER, Logger::TRACE, |
|
"DefaultProviderManager::handleGetInstanceRequest - Host name: $0 Name space: $1 Class name: $2", |
|
System::getHostName(), |
|
request->nameSpace.getString(), |
|
className.toString()); |
|
|
|
classNames.append(className); | classNames.append(className); |
} | } |
| |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown Error"); | handler.setStatus(CIM_ERR_FAILED, "Unknown Error"); |
} | } |
| |
|
|
| |
try | try |
{ | { |
InternalProviderName name(""); |
String temp; |
| |
/* |
for(Uint32 i = 0, n = request->classNames.size(); i < n; i++) |
InternalProviderName name( |
{ |
|
temp.append(request->classNames[i].getString()); |
|
|
|
if(i == (n - 1)) |
|
{ |
|
temp.append(", "); |
|
} |
|
} |
|
|
|
Logger::put(Logger::STANDARD_LOG, System::CIMSERVER, Logger::TRACE, |
|
"DefaultProviderManager::handleModifySubscriptionRequest - Host name: $0 Name space: $1 Class name(s): $2", |
|
System::getHostName(), |
|
request->nameSpace.getString(), |
|
temp); |
|
|
|
// NOTE: the provider and provider module name are embedded in the request, presumably to reduce |
|
// the number of provider lookups (but this should be trivial if the data is cached and accessed |
|
// from the same source). to keep the lookups consistent, use the first class name, combined |
|
// with the other information in the request, and create an object path that can be used to |
|
// resolve the provider using the ProviderRegistrar. |
|
|
|
// make target object path |
|
CIMObjectPath objectPath( |
|
System::getHostName(), |
|
request->nameSpace, |
|
request->classNames[0].getString()); |
|
|
|
ProviderName name( |
|
objectPath.toString(), |
String::EMPTY, | String::EMPTY, |
String::EMPTY, | String::EMPTY, |
objectPath.toString()); |
String::EMPTY, |
|
0); |
| |
name = findProvider(name.toString()); |
// resolve provider name |
*/ |
name = _resolveProviderName(name); |
| |
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY); | providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY); |
| |
/* |
|
// get the provider file name and logical name |
|
Triad<String, String, String> triad = |
|
getProviderRegistrar()->_getProviderRegPair(request->provider, request->providerModule); |
|
|
|
// get cached or load new provider module |
|
//Provider provider = |
|
OpProviderHolder ph = |
|
providerManager.getProvider(triad.first, triad.second, triad.third); |
|
*/ |
|
|
|
// convert arguments | // convert arguments |
OperationContext context; | OperationContext context; |
| |
context.insert(IdentityContainer(request->userName)); | context.insert(IdentityContainer(request->userName)); |
|
|
context.insert(SubscriptionInstanceContainer | context.insert(SubscriptionInstanceContainer |
(request->subscriptionInstance)); | (request->subscriptionInstance)); |
context.insert(SubscriptionFilterConditionContainer | context.insert(SubscriptionFilterConditionContainer |
|
|
request->nameSpace, | request->nameSpace, |
request->classNames[i]); | request->classNames[i]); |
| |
Logger::put(Logger::STANDARD_LOG, System::CIMSERVER, Logger::TRACE, |
|
"DefaultProviderManager::handleGetInstanceRequest - Host name: $0 Name space: $1 Class name: $2", |
|
System::getHostName(), |
|
request->nameSpace.getString(), |
|
className.toString()); |
|
|
|
classNames.append(className); | classNames.append(className); |
} | } |
| |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown Error"); | handler.setStatus(CIM_ERR_FAILED, "Unknown Error"); |
} | } |
| |
|
|
| |
try | try |
{ | { |
InternalProviderName name(""); |
String temp; |
| |
/* |
for(Uint32 i = 0, n = request->classNames.size(); i < n; i++) |
InternalProviderName name( |
{ |
|
temp.append(request->classNames[i].getString()); |
|
|
|
if(i == (n - 1)) |
|
{ |
|
temp.append(", "); |
|
} |
|
} |
|
|
|
Logger::put(Logger::STANDARD_LOG, System::CIMSERVER, Logger::TRACE, |
|
"DefaultProviderManager::handleDeleteSubscriptionRequest - Host name: $0 Name space: $1 Class name(s): $2", |
|
System::getHostName(), |
|
request->nameSpace.getString(), |
|
temp); |
|
|
|
// NOTE: the provider and provider module name are embedded in the request, presumably to reduce |
|
// the number of provider lookups (but this should be trivial if the data is cached and accessed |
|
// from the same source). to keep the lookups consistent, use the first class name, combined |
|
// with the other information in the request, and create an object path that can be used to |
|
// resolve the provider using the ProviderRegistrar. |
|
|
|
// make target object path |
|
CIMObjectPath objectPath( |
|
System::getHostName(), |
|
request->nameSpace, |
|
request->classNames[0].getString()); |
|
|
|
ProviderName name( |
|
objectPath.toString(), |
String::EMPTY, | String::EMPTY, |
String::EMPTY, | String::EMPTY, |
objectPath.toString()); |
String::EMPTY, |
|
0); |
| |
name = findProvider(name.toString()); |
// resolve provider name |
*/ |
name = _resolveProviderName(name); |
| |
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY); | providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY); |
| |
/* |
|
// get the provider file name and logical name |
|
Triad<String, String, String> triad = |
|
getProviderRegistrar()->_getProviderRegPair(request->provider, request->providerModule); |
|
|
|
// get cached or load new provider module |
|
//Provider provider = |
|
OpProviderHolder ph = |
|
providerManager.getProvider(triad.first, triad.second, triad.third); |
|
*/ |
|
|
|
// convert arguments | // convert arguments |
OperationContext context; | OperationContext context; |
| |
|
|
request->nameSpace, | request->nameSpace, |
request->classNames[i]); | request->classNames[i]); |
| |
Logger::put(Logger::STANDARD_LOG, System::CIMSERVER, Logger::TRACE, |
|
"DefaultProviderManager::handleGetInstanceRequest - Host name: $0 Name space: $1 Class name: $2", |
|
System::getHostName(), |
|
request->nameSpace.getString(), |
|
className.toString()); |
|
|
|
classNames.append(className); | classNames.append(className); |
} | } |
| |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(e.getCode(), e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n | handler.setStatus(CIM_ERR_FAILED, e.getContentLanguages(), e.getMessage()); // l10n |
} | } |
catch(...) | catch(...) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
|
|
handler.setStatus(CIM_ERR_FAILED, "Unknown Error"); | handler.setStatus(CIM_ERR_FAILED, "Unknown Error"); |
} | } |
| |
|
|
| |
try | try |
{ | { |
InternalProviderName name(""); |
ProviderName name(""); |
| |
/* | /* |
InternalProviderName name( |
ProviderName name( |
String::EMPTY, | String::EMPTY, |
String::EMPTY, | String::EMPTY, |
objectPath.toString()); | objectPath.toString()); |
| |
name = findProvider(name.toString()); |
// resolve provider name |
|
name = _resolveProviderName(name); |
*/ | */ |
| |
// get cached or load new provider module | // get cached or load new provider module |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
response->cimException = CIMException(e); | response->cimException = CIMException(e); |
} | } |
catch(Exception & e) | catch(Exception & e) |
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
//l10n |
|
//response->cimException = CIMException(CIM_ERR_FAILED, "Internal Error"); |
|
response->cimException = CIMException(CIM_ERR_FAILED, MessageLoaderParms( | response->cimException = CIMException(CIM_ERR_FAILED, MessageLoaderParms( |
"ProviderManager.DefaultProviderManager.INTERNAL_ERROR", | "ProviderManager.DefaultProviderManager.INTERNAL_ERROR", |
"Internal Error")); | "Internal Error")); |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: Unknown"); | "Exception: Unknown"); |
//l10n |
|
//response->cimException = CIMException(CIM_ERR_FAILED, "Unknown Error"); |
|
response->cimException = CIMException(CIM_ERR_FAILED, MessageLoaderParms( | response->cimException = CIMException(CIM_ERR_FAILED, MessageLoaderParms( |
"ProviderManager.DefaultProviderManager.UNKNOWN_ERROR", | "ProviderManager.DefaultProviderManager.UNKNOWN_ERROR", |
"Unknown Error")); | "Unknown Error")); |
|
|
| |
try | try |
{ | { |
InternalProviderName name(""); |
ProviderName name(""); |
| |
/* | /* |
InternalProviderName name( |
ProviderName name( |
String::EMPTY, | String::EMPTY, |
String::EMPTY, | String::EMPTY, |
objectPath.toString()); | objectPath.toString()); |
| |
name = findProvider(name.toString()); |
// resolve provider name |
|
name = _resolveProviderName(name); |
*/ | */ |
| |
// get cached or load new provider module | // get cached or load new provider module |
OpProviderHolder ph = | OpProviderHolder ph = |
providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY); | providerManager.getProvider(name.getPhysicalName(), name.getLogicalName(), String::EMPTY); |
| |
/* |
|
// get the provider file name and logical name |
|
Triad<String, String, String> triad = |
|
getProviderRegistrar()->_getProviderRegPair(request->consumer_provider, request->consumer_module); |
|
|
|
// get cached or load new provider module |
|
//Provider provider = |
|
OpProviderHolder ph = |
|
providerManager.getProvider(triad.first, triad.second, triad.third); |
|
*/ |
|
|
|
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Calling provider.: " + | "Calling provider.: " + |
ph.GetProvider().getName()); | ph.GetProvider().getName()); |
|
|
{ | { |
PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, | PEG_TRACE_STRING(TRC_PROVIDERMANAGER, Tracer::LEVEL4, |
"Exception: " + e.getMessage()); | "Exception: " + e.getMessage()); |
|
|
response->cimException = CIMException(e); | response->cimException = CIMException(e); |
} | } |
catch(Exception & e) | catch(Exception & e) |
|
|
Message * DefaultProviderManager::handleDisableModuleRequest(const Message * message) throw() | Message * DefaultProviderManager::handleDisableModuleRequest(const Message * message) throw() |
{ | { |
// HACK | // HACK |
ProviderRegistrationManager * _providerRegistrationManager = ProviderManager::getProviderRegistrationManager(); |
ProviderRegistrationManager * _providerRegistrationManager = GetProviderRegistrationManager(); |
| |
PEG_METHOD_ENTER(TRC_PROVIDERMANAGER, "DefaultProviderManager::handleDisableModuleRequest"); | PEG_METHOD_ENTER(TRC_PROVIDERMANAGER, "DefaultProviderManager::handleDisableModuleRequest"); |
| |
|
|
if(!disableProviderOnly) | if(!disableProviderOnly) |
{ | { |
Uint32 pos2 = mInstance.findProperty(CIMName ("OperationalStatus")); | Uint32 pos2 = mInstance.findProperty(CIMName ("OperationalStatus")); |
|
|
if(pos2 != PEG_NOT_FOUND) | if(pos2 != PEG_NOT_FOUND) |
{ | { |
// | // |
|
|
operationalStatus.remove(i); | operationalStatus.remove(i); |
} | } |
} | } |
|
|
operationalStatus.append(_MODULE_STOPPED); | operationalStatus.append(_MODULE_STOPPED); |
| |
if(_providerRegistrationManager->setProviderModuleStatus | if(_providerRegistrationManager->setProviderModuleStatus |
|
|
Message * DefaultProviderManager::handleEnableModuleRequest(const Message * message) throw() | Message * DefaultProviderManager::handleEnableModuleRequest(const Message * message) throw() |
{ | { |
// HACK | // HACK |
ProviderRegistrationManager * _providerRegistrationManager = ProviderManager::getProviderRegistrationManager(); |
ProviderRegistrationManager * _providerRegistrationManager = GetProviderRegistrationManager(); |
| |
PEG_METHOD_ENTER(TRC_PROVIDERMANAGER, "DefaultProviderManager::handleEnableModuleRequest"); | PEG_METHOD_ENTER(TRC_PROVIDERMANAGER, "DefaultProviderManager::handleEnableModuleRequest"); |
| |
|
|
return(tableKey); | return(tableKey); |
} | } |
| |
|
ProviderName DefaultProviderManager::_resolveProviderName(const ProviderName & providerName) |
|
{ |
|
ProviderName temp = findProvider(providerName); |
|
|
|
String physicalName = temp.getPhysicalName(); |
|
|
|
// fully qualify physical provider name (module), if not already done so. |
|
#if defined(PEGASUS_PLATFORM_WIN32_IX86_MSVC) |
|
physicalName = physicalName + 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") + physicalName + String(".so")); |
|
#elif defined(PEGASUS_OS_HPUX) |
|
String root = ConfigManager::getHomedPath(ConfigManager::getInstance()->getCurrentValue("providerDir")); |
|
physicalName = root + String("/lib") + moduleLocation + String(".sl")); |
|
#elif defined(PEGASUS_OS_OS400) |
|
// do nothing |
|
#else |
|
foo // needs code |
|
#endif |
|
|
|
temp.setPhysicalName(physicalName); |
|
|
|
return(temp); |
|
} |
|
|
PEGASUS_NAMESPACE_END | PEGASUS_NAMESPACE_END |