version 1.19, 2005/02/25 21:44:17
|
version 1.23, 2005/03/12 20:16:39
|
|
|
#define Pegasus_OperationResponseHandler_h | #define Pegasus_OperationResponseHandler_h |
| |
#include <Pegasus/Common/Config.h> | #include <Pegasus/Common/Config.h> |
#include <Pegasus/Server/Linkage.h> |
|
#include <Pegasus/Common/CIMMessage.h> | #include <Pegasus/Common/CIMMessage.h> |
#include <Pegasus/Common/MessageQueueService.h> | #include <Pegasus/Common/MessageQueueService.h> |
#include <Pegasus/Common/Constants.h> | #include <Pegasus/Common/Constants.h> |
|
|
_normalizer = | _normalizer = |
ObjectNormalizer( | ObjectNormalizer( |
cimClass, | cimClass, |
request->localOnly, |
|
request->includeQualifiers, | request->includeQualifiers, |
request->includeClassOrigin); | request->includeClassOrigin); |
#endif | #endif |
} | } |
| |
#ifdef PEGASUS_ENABLE_OBJECT_NORMALIZATION |
|
virtual void deliver(const CIMInstance & cimInstance) | virtual void deliver(const CIMInstance & cimInstance) |
{ | { |
// Normalize (if seeded, otherwise do nothing) and pass to subclass method for delivery. |
if(cimInstance.isUninitialized()) |
SimpleInstanceResponseHandler::deliver(_normalizer.processInstance(cimInstance)); |
{ |
|
MessageLoaderParms message( |
|
"Common.Exception.UNINITIALIZED_OBJECT_EXCEPTION", |
|
"The object is not initialized."); |
|
|
|
throw CIMException(CIM_ERR_FAILED, message); |
} | } |
|
|
|
#ifdef PEGASUS_ENABLE_OBJECT_NORMALIZATION |
|
// The normalizer expects an object path embedded in instances even |
|
// though it is not required by this operation. Use the requested |
|
// object path is missing from the instance. |
|
if(cimInstance.getPath().getKeyBindings().size() == 0) |
|
{ |
|
cimInstance.setPath(request->instanceName); |
|
} |
|
|
|
SimpleInstanceResponseHandler::deliver(_normalizer.processInstance(cimInstance)); |
|
#else |
|
SimpleInstanceResponseHandler::deliver(cimInstance); |
#endif | #endif |
|
} |
| |
protected: | protected: |
virtual String getClass(void) const | virtual String getClass(void) const |
|
|
_normalizer = | _normalizer = |
ObjectNormalizer( | ObjectNormalizer( |
cimClass, | cimClass, |
request->localOnly, |
|
request->includeQualifiers, | request->includeQualifiers, |
request->includeClassOrigin); | request->includeClassOrigin); |
#endif | #endif |
} | } |
| |
#ifdef PEGASUS_ENABLE_OBJECT_NORMALIZATION |
|
virtual void deliver(const CIMInstance & cimInstance) | virtual void deliver(const CIMInstance & cimInstance) |
{ | { |
// Normalize (if seeded, otherwise do nothing) and pass to subclass method for delivery. |
if(cimInstance.isUninitialized()) |
SimpleInstanceResponseHandler::deliver(_normalizer.processInstance(cimInstance)); |
{ |
|
MessageLoaderParms message( |
|
"Common.Exception.UNINITIALIZED_OBJECT_EXCEPTION", |
|
"The object is not initialized."); |
|
|
|
throw CIMException(CIM_ERR_FAILED, message); |
} | } |
|
|
|
#ifdef PEGASUS_ENABLE_OBJECT_NORMALIZATION |
|
SimpleInstanceResponseHandler::deliver(_normalizer.processInstance(cimInstance)); |
|
#else |
|
SimpleInstanceResponseHandler::deliver(cimInstance); |
#endif | #endif |
|
} |
| |
protected: | protected: |
virtual String getClass(void) const | virtual String getClass(void) const |
|
|
ObjectNormalizer( | ObjectNormalizer( |
cimClass, | cimClass, |
false, | false, |
false, |
|
false); | false); |
#endif | #endif |
} | } |
| |
#ifdef PEGASUS_ENABLE_OBJECT_NORMALIZATION |
|
virtual void deliver(const CIMObjectPath & cimObjectPath) | virtual void deliver(const CIMObjectPath & cimObjectPath) |
{ | { |
// Normalize (if seeded, otherwise do nothing) and pass to subclass method for delivery. |
if(cimObjectPath.getClassName().isNull()) |
SimpleObjectPathResponseHandler::deliver(_normalizer.processInstanceObjectPath(cimObjectPath)); |
{ |
|
MessageLoaderParms message( |
|
"Common.Exception.UNINITIALIZED_OBJECT_EXCEPTION", |
|
"The object is not initialized."); |
|
|
|
throw CIMException(CIM_ERR_FAILED, message); |
} | } |
|
|
|
#ifdef PEGASUS_ENABLE_OBJECT_NORMALIZATION |
|
SimpleObjectPathResponseHandler::deliver(_normalizer.processInstanceObjectPath(cimObjectPath)); |
|
#else |
|
SimpleObjectPathResponseHandler::deliver(cimObjectPath); |
#endif | #endif |
|
} |
| |
protected: | protected: |
virtual String getClass(void) const | virtual String getClass(void) const |
|
|
{ | { |
} | } |
| |
|
virtual void deliver(const CIMObjectPath & cimObjectPath) |
|
{ |
|
if(cimObjectPath.getClassName().isNull()) |
|
{ |
|
MessageLoaderParms message( |
|
"Common.Exception.UNINITIALIZED_OBJECT_EXCEPTION", |
|
"The object is not initialized."); |
|
|
|
throw CIMException(CIM_ERR_FAILED, message); |
|
} |
|
|
|
SimpleObjectPathResponseHandler::deliver(cimObjectPath); |
|
} |
|
|
protected: | protected: |
virtual String getClass(void) const | virtual String getClass(void) const |
{ | { |
|
|
{ | { |
} | } |
| |
|
virtual void deliver(const CIMValue & cimValue) |
|
{ |
|
if(cimValue.isNull()) |
|
{ |
|
MessageLoaderParms message( |
|
"Common.Exception.UNINITIALIZED_OBJECT_EXCEPTION", |
|
"The object is not initialized."); |
|
|
|
throw CIMException(CIM_ERR_FAILED, message); |
|
} |
|
|
|
SimpleValueResponseHandler::deliver(cimValue); |
|
} |
|
|
protected: | protected: |
virtual String getClass(void) const | virtual String getClass(void) const |
{ | { |
|
|
{ | { |
} | } |
| |
|
virtual void deliver(const CIMInstance & cimInstance) |
|
{ |
|
if(cimInstance.isUninitialized()) |
|
{ |
|
MessageLoaderParms message( |
|
"Common.Exception.UNINITIALIZED_OBJECT_EXCEPTION", |
|
"The object is not initialized."); |
|
|
|
throw CIMException(CIM_ERR_FAILED, message); |
|
} |
|
|
|
SimpleInstance2ObjectResponseHandler::deliver(cimInstance); |
|
} |
|
|
protected: | protected: |
virtual String getClass(void) const | virtual String getClass(void) const |
{ | { |
|
|
{ | { |
} | } |
| |
|
virtual void deliver(const CIMObject & cimObject) |
|
{ |
|
if(cimObject.isUninitialized()) |
|
{ |
|
MessageLoaderParms message( |
|
"Common.Exception.UNINITIALIZED_OBJECT_EXCEPTION", |
|
"The object is not initialized."); |
|
|
|
throw CIMException(CIM_ERR_FAILED, message); |
|
} |
|
|
|
SimpleObjectResponseHandler::deliver(cimObject); |
|
} |
|
|
protected: | protected: |
virtual String getClass(void) const | virtual String getClass(void) const |
{ | { |
|
|
{ | { |
} | } |
| |
|
virtual void deliver(const CIMObjectPath & cimObjectPath) |
|
{ |
|
if(cimObjectPath.getClassName().isNull()) |
|
{ |
|
MessageLoaderParms message( |
|
"Common.Exception.UNINITIALIZED_OBJECT_EXCEPTION", |
|
"The object is not initialized."); |
|
|
|
throw CIMException(CIM_ERR_FAILED, message); |
|
} |
|
|
|
SimpleObjectPathResponseHandler::deliver(cimObjectPath); |
|
} |
|
|
protected: | protected: |
virtual String getClass(void) const | virtual String getClass(void) const |
{ | { |
|
|
{ | { |
} | } |
| |
|
virtual void deliver(const CIMObject & cimObject) |
|
{ |
|
if(cimObject.isUninitialized()) |
|
{ |
|
MessageLoaderParms message( |
|
"Common.Exception.UNINITIALIZED_OBJECT_EXCEPTION", |
|
"The object is not initialized."); |
|
|
|
throw CIMException(CIM_ERR_FAILED, message); |
|
} |
|
|
|
SimpleObjectResponseHandler::deliver(cimObject); |
|
} |
|
|
protected: | protected: |
virtual String getClass(void) const | virtual String getClass(void) const |
{ | { |
|
|
{ | { |
} | } |
| |
|
virtual void deliver(const CIMObjectPath & cimObjectPath) |
|
{ |
|
if(cimObjectPath.getClassName().isNull()) |
|
{ |
|
MessageLoaderParms message( |
|
"Common.Exception.UNINITIALIZED_OBJECT_EXCEPTION", |
|
"The object is not initialized."); |
|
|
|
throw CIMException(CIM_ERR_FAILED, message); |
|
} |
|
|
|
SimpleObjectPathResponseHandler::deliver(cimObjectPath); |
|
} |
|
|
protected: | protected: |
virtual String getClass(void) const | virtual String getClass(void) const |
{ | { |
|
|
{ | { |
} | } |
| |
|
virtual void deliverParamValue(const CIMParamValue & cimParamValue) |
|
{ |
|
if(cimParamValue.isUninitialized()) |
|
{ |
|
MessageLoaderParms message( |
|
"Common.Exception.UNINITIALIZED_OBJECT_EXCEPTION", |
|
"The object is not initialized."); |
|
|
|
throw CIMException(CIM_ERR_FAILED, message); |
|
} |
|
|
|
SimpleMethodResultResponseHandler::deliverParamValue(cimParamValue); |
|
} |
|
|
|
virtual void deliver(const CIMValue & cimValue) |
|
{ |
|
if(cimValue.isNull()) |
|
{ |
|
MessageLoaderParms message( |
|
"Common.Exception.UNINITIALIZED_OBJECT_EXCEPTION", |
|
"The object is not initialized."); |
|
|
|
throw CIMException(CIM_ERR_FAILED, message); |
|
} |
|
|
|
SimpleMethodResultResponseHandler::deliver(cimValue); |
|
} |
|
|
protected: | protected: |
virtual String getClass(void) const | virtual String getClass(void) const |
{ | { |
|
|
| |
virtual void deliver(const OperationContext & context, const CIMIndication & cimIndication) | virtual void deliver(const OperationContext & context, const CIMIndication & cimIndication) |
{ | { |
|
if(cimIndication.isUninitialized()) |
|
{ |
|
MessageLoaderParms message( |
|
"Common.Exception.UNINITIALIZED_OBJECT_EXCEPTION", |
|
"The object is not initialized."); |
|
|
|
throw CIMException(CIM_ERR_FAILED, message); |
|
} |
|
|
// ATTN: temporarily convert indication to instance | // ATTN: temporarily convert indication to instance |
CIMInstance cimInstance(cimIndication); | CIMInstance cimInstance(cimIndication); |
| |