version 1.263.4.2, 2007/06/11 08:16:14
|
version 1.263.4.3, 2008/02/22 21:49:57
|
|
|
// ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION | // ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION |
// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. | // WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. |
// | // |
//============================================================================== |
//============================================================================= |
// | // |
//%///////////////////////////////////////////////////////////////////////////// |
//%//////////////////////////////////////////////////////////////////////////// |
| |
#include "CIMOperationRequestDispatcher.h" | #include "CIMOperationRequestDispatcher.h" |
| |
|
|
PEGASUS_QUEUENAME_CONTROLSERVICE); | PEGASUS_QUEUENAME_CONTROLSERVICE); |
| |
_routing_table.insert_record( | _routing_table.insert_record( |
|
PEGASUS_CLASSNAME_PG_ELEMENTCONFORMSTOPROFILE_RP_RP, |
|
_wild, |
|
DynamicRoutingTable::INTERNAL, |
|
0, |
|
static_cast<MessageQueueService*>( |
|
MessageQueue::lookup(PEGASUS_QUEUENAME_CONTROLSERVICE)), |
|
PEGASUS_MODULENAME_INTEROPPROVIDER, |
|
PEGASUS_QUEUENAME_CONTROLSERVICE); |
|
|
|
_routing_table.insert_record( |
PEGASUS_CLASSNAME_PG_SUBPROFILEREQUIRESPROFILE, | PEGASUS_CLASSNAME_PG_SUBPROFILEREQUIRESPROFILE, |
PEGASUS_NAMESPACENAME_INTEROP, | PEGASUS_NAMESPACENAME_INTEROP, |
DynamicRoutingTable::INTERNAL, | DynamicRoutingTable::INTERNAL, |
|
|
#ifdef PEGASUS_ENABLE_REMOTE_CMPI | #ifdef PEGASUS_ENABLE_REMOTE_CMPI |
String remoteInformation; | String remoteInformation; |
Boolean isRemote = false; | Boolean isRemote = false; |
isRemote = _repository->isRemoteNameSpace(nameSpace, remoteInformation); |
isRemote = _repository->isRemoteNameSpace( |
|
nameSpace, |
|
remoteInformation); |
if (isRemote) | if (isRemote) |
providercontainer = new ProviderIdContainer( | providercontainer = new ProviderIdContainer( |
pmInstance, pInstance, isRemote, remoteInformation); | pmInstance, pInstance, isRemote, remoteInformation); |
|
|
} | } |
catch (...) | catch (...) |
{ | { |
cimException = PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
cimException = |
|
PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
} | } |
| |
if (tmp.size() > 0) | if (tmp.size() > 0) |
|
|
| |
if (providerNames.size() == 0) | if (providerNames.size() == 0) |
{ | { |
PEG_TRACE_STRING(TRC_DISPATCHER, Tracer::LEVEL4, |
PEG_TRACE_STRING( |
"Association Provider NOT found for Class " + assocClass.getString() |
TRC_DISPATCHER, |
+ " in nameSpace " + nameSpace.getString()); |
Tracer::LEVEL4, |
|
"Association Provider NOT found for Class " + |
|
assocClass.getString() + |
|
" in nameSpace " + |
|
nameSpace.getString()); |
} | } |
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
return providerNames; | return providerNames; |
|
|
} | } |
catch (...) | catch (...) |
{ | { |
cimException = PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
cimException = |
|
PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
} | } |
| |
response->cimInstance = cimInstance; | response->cimInstance = cimInstance; |
|
|
} | } |
catch (...) | catch (...) |
{ | { |
cimException = PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
cimException = |
|
PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
} | } |
| |
response->cimException = cimException; | response->cimException = cimException; |
|
|
} | } |
catch (...) | catch (...) |
{ | { |
cimException = PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
cimException = |
|
PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
} | } |
| |
response->cimException = cimException; | response->cimException = cimException; |
|
|
} | } |
catch (...) | catch (...) |
{ | { |
cimException = PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
cimException = |
|
PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
} | } |
| |
response->cimException = cimException; | response->cimException = cimException; |
|
|
} | } |
catch (...) | catch (...) |
{ | { |
cimException = PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
cimException = |
|
PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
} | } |
| |
response->instanceName = instanceName; | response->instanceName = instanceName; |
|
|
} | } |
catch (...) | catch (...) |
{ | { |
cimException = PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
cimException = |
|
PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
} | } |
| |
response->cimException = cimException; | response->cimException = cimException; |
|
|
} | } |
catch (...) | catch (...) |
{ | { |
cimException = PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
cimException = |
|
PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
} | } |
| |
response->cimClasses = cimClasses; | response->cimClasses = cimClasses; |
|
|
| |
PEG_LOGGER_TRACE(( | PEG_LOGGER_TRACE(( |
Logger::STANDARD_LOG, System::CIMSERVER, Logger::TRACE, | Logger::STANDARD_LOG, System::CIMSERVER, Logger::TRACE, |
"CIMOperationRequestDispatcher::handleEnumerateClassNamesRequest - " |
"CIMOperationRequestDispatcher::handleEnumerateClassNamesRequest" |
"Namespace: $0 Class name: $1", |
" - Namespace: $0 Class name: $1", |
request->nameSpace.getString(), | request->nameSpace.getString(), |
request->className.getString())); | request->className.getString())); |
} | } |
|
|
} | } |
catch (...) | catch (...) |
{ | { |
cimException = PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
cimException = |
|
PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
} | } |
| |
response->classNames = classNames; | response->classNames = classNames; |
|
|
} | } |
catch (...) | catch (...) |
{ | { |
cimException = PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
cimException = |
|
PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
} | } |
| |
if (cimException.getCode() != CIM_ERR_SUCCESS) | if (cimException.getCode() != CIM_ERR_SUCCESS) |
|
|
| |
PEG_LOGGER_TRACE(( | PEG_LOGGER_TRACE(( |
Logger::STANDARD_LOG, System::CIMSERVER, Logger::TRACE, | Logger::STANDARD_LOG, System::CIMSERVER, Logger::TRACE, |
"CIMOperationRequestDispatcher::handleEnumerateQualifiersRequest - " |
"CIMOperationRequestDispatcher::handleEnumerateQualifiersRequest" |
"Namespace: $0", |
" - Namespace: $0", |
request->nameSpace.getString())); | request->nameSpace.getString())); |
} | } |
catch (const CIMException& exception) | catch (const CIMException& exception) |
|
|
} | } |
catch (...) | catch (...) |
{ | { |
cimException = PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
cimException = |
|
PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, String::EMPTY); |
} | } |
| |
if (cimException.getCode() != CIM_ERR_SUCCESS) | if (cimException.getCode() != CIM_ERR_SUCCESS) |
|
|
2. prune the properties if localOnly or deepInheritance are set. | 2. prune the properties if localOnly or deepInheritance are set. |
This function does not send any responses. | This function does not send any responses. |
*/ | */ |
void CIMOperationRequestDispatcher::handleEnumerateInstancesResponseAggregation( |
void CIMOperationRequestDispatcher:: |
|
handleEnumerateInstancesResponseAggregation( |
OperationAggregate* poA) | OperationAggregate* poA) |
{ | { |
PEG_METHOD_ENTER(TRC_DISPATCHER, | PEG_METHOD_ENTER(TRC_DISPATCHER, |
|
|
catch (Exception& e) | catch (Exception& e) |
{ | { |
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
throw PEGASUS_CIM_EXCEPTION(CIM_ERR_FAILED, e.getMessage()); |
throw PEGASUS_CIM_EXCEPTION( |
|
CIM_ERR_FAILED, |
|
e.getMessage()); |
} | } |
catch (...) | catch (...) |
{ | { |
|
|
| |
if (inParameters[i].getValue().isNull()) | if (inParameters[i].getValue().isNull()) |
{ | { |
newValue.setNullValue(param.getType(), param.isArray()); |
newValue.setNullValue( |
|
param.getType(), |
|
param.isArray()); |
} | } |
else if (inParameters[i].getValue().isArray() != | else if (inParameters[i].getValue().isArray() != |
param.isArray()) | param.isArray()) |
|
|
} | } |
else | else |
{ | { |
newValue = _convertValueType(inParameters[i].getValue(), |
newValue = _convertValueType( |
|
inParameters[i].getValue(), |
paramType); | paramType); |
} | } |
| |