version 1.12, 2004/10/17 20:39:57
|
version 1.12.2.2, 2005/08/12 22:52:43
|
|
|
case CIM_REFERENCE_NAMES_RESPONSE_MESSAGE: | case CIM_REFERENCE_NAMES_RESPONSE_MESSAGE: |
case CIM_GET_PROPERTY_RESPONSE_MESSAGE: | case CIM_GET_PROPERTY_RESPONSE_MESSAGE: |
case CIM_SET_PROPERTY_RESPONSE_MESSAGE: | case CIM_SET_PROPERTY_RESPONSE_MESSAGE: |
|
case CIM_INVOKE_METHOD_RESPONSE_MESSAGE: |
try | try |
{ | { |
_response.insert_last_wait(message); | _response.insert_last_wait(message); |
|
|
memcpy(dp->os400PH, os400PH, 12); | memcpy(dp->os400PH, os400PH, 12); |
#endif | #endif |
| |
|
ThreadStatus rtn = |
MessageQueueService::get_thread_pool()->allocate_and_awaken(dp, _dispatch); | MessageQueueService::get_thread_pool()->allocate_and_awaken(dp, _dispatch); |
|
if (rtn != PEGASUS_THREAD_OK) |
|
{ |
|
Logger::put(Logger::STANDARD_LOG, System::CIMSERVER, Logger::TRACE, |
|
"Not enough threads to create a worker to dispatch a request. "); |
|
|
|
Tracer::trace(TRC_CIMOM_HANDLE, Tracer::LEVEL2, |
|
"Could not allocate thread for %s to dispatch a request."); |
|
delete dp; |
|
PEG_METHOD_EXIT(); |
|
throw CIMException(CIM_ERR_FAILED, MessageLoaderParms( |
|
"Provider.CIMOMHandle.CANNOT_ALLOCATE_THREAD", |
|
"Could not create a worker for the dispatch request.")); |
|
} |
| |
_request = request; | _request = request; |
| |
|
|
} | } |
| |
CIMValue value = response->retValue; | CIMValue value = response->retValue; |
|
outParameters = response->outParameters; |
| |
delete response; | delete response; |
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |