version 1.14, 2007/07/25 07:16:01
|
version 1.15, 2007/09/02 16:41:52
|
|
|
#include "CMPI_Ftabs.h" | #include "CMPI_Ftabs.h" |
#include "CMPI_Value.h" | #include "CMPI_Value.h" |
#include "CMPI_String.h" | #include "CMPI_String.h" |
|
#include <Pegasus/Common/Tracer.h> |
| |
PEGASUS_USING_STD; | PEGASUS_USING_STD; |
PEGASUS_NAMESPACE_BEGIN | PEGASUS_NAMESPACE_BEGIN |
|
|
| |
CMPIStatus scndRelease(CMPISelectCond* eSc) | CMPIStatus scndRelease(CMPISelectCond* eSc) |
{ | { |
|
PEG_METHOD_ENTER( |
|
TRC_CMPIPROVIDERINTERFACE, |
|
"CMPI_SelectCond:scndRelease()"); |
CMPI_SelectCond *sc = (CMPI_SelectCond*)eSc->hdl; | CMPI_SelectCond *sc = (CMPI_SelectCond*)eSc->hdl; |
if (sc) | if (sc) |
{ | { |
|
|
} | } |
delete sc; | delete sc; |
reinterpret_cast<CMPI_Object*>(eSc)->unlinkAndDelete(); | reinterpret_cast<CMPI_Object*>(eSc)->unlinkAndDelete(); |
|
PEG_METHOD_EXIT(); |
CMReturn(CMPI_RC_OK); | CMReturn(CMPI_RC_OK); |
} | } |
else | else |
{ | { |
|
PEG_METHOD_EXIT(); |
CMReturn(CMPI_RC_ERR_INVALID_HANDLE); | CMReturn(CMPI_RC_ERR_INVALID_HANDLE); |
} | } |
} | } |
|
|
int* type, | int* type, |
CMPIStatus* rc) | CMPIStatus* rc) |
{ | { |
|
PEG_METHOD_ENTER( |
|
TRC_CMPIPROVIDERINTERFACE, |
|
"CMPI_SelectCond:scndGetCountAndType()"); |
CMPI_SelectCond *sc=(CMPI_SelectCond*)eSc->hdl; | CMPI_SelectCond *sc=(CMPI_SelectCond*)eSc->hdl; |
if (!sc) | if (!sc) |
{ | { |
|
PEG_TRACE_CSTRING( |
|
TRC_CMPIPROVIDERINTERFACE, |
|
Tracer::LEVEL2, |
|
"Invalid hanle in \ |
|
CMPI_SelectCond:scndGetCountAndType"); |
CMSetStatus (rc, CMPI_RC_ERR_INVALID_HANDLE); | CMSetStatus (rc, CMPI_RC_ERR_INVALID_HANDLE); |
|
PEG_METHOD_EXIT(); |
return 0; | return 0; |
} | } |
CMPI_SelectCondData *data = (CMPI_SelectCondData *)sc->priv; | CMPI_SelectCondData *data = (CMPI_SelectCondData *)sc->priv; |
|
|
{ | { |
if (type!=NULL) *type=data->type; | if (type!=NULL) *type=data->type; |
CMSetStatus(rc,CMPI_RC_OK); | CMSetStatus(rc,CMPI_RC_OK); |
|
PEG_METHOD_EXIT(); |
return data->tableau->size(); | return data->tableau->size(); |
} | } |
|
PEG_METHOD_EXIT(); |
return 0; | return 0; |
} | } |
| |
|
|
unsigned int index, | unsigned int index, |
CMPIStatus* rc) | CMPIStatus* rc) |
{ | { |
|
PEG_METHOD_ENTER( |
|
TRC_CMPIPROVIDERINTERFACE, |
|
"CMPI_SelectCond:scndGetSubCondAt()"); |
CMPI_SelectCond *sc=(CMPI_SelectCond*)eSc->hdl; | CMPI_SelectCond *sc=(CMPI_SelectCond*)eSc->hdl; |
if (!sc) | if (!sc) |
{ | { |
|
PEG_TRACE_CSTRING( |
|
TRC_CMPIPROVIDERINTERFACE, |
|
Tracer::LEVEL2, |
|
"Invalid hanle in \ |
|
CMPI_SelectCond:scndGetSubCondAt"); |
CMSetStatus (rc, CMPI_RC_ERR_INVALID_HANDLE); | CMSetStatus (rc, CMPI_RC_ERR_INVALID_HANDLE); |
return 0; | return 0; |
} | } |
|
|
CMPISubCond *sbc=(CMPISubCond*)new CMPI_SubCond(row); | CMPISubCond *sbc=(CMPISubCond*)new CMPI_SubCond(row); |
CMPI_Object *obj = new CMPI_Object(sbc); | CMPI_Object *obj = new CMPI_Object(sbc); |
CMSetStatus(rc,CMPI_RC_OK); | CMSetStatus(rc,CMPI_RC_OK); |
return reinterpret_cast<CMPISubCond *>(obj); |
CMPISubCond* cmpiSubCond = |
|
reinterpret_cast<CMPISubCond *>(obj); |
|
PEG_METHOD_EXIT(); |
|
return cmpiSubCond; |
} | } |
} | } |
else | else |
{ | { |
|
PEG_TRACE_CSTRING( |
|
TRC_CMPIPROVIDERINTERFACE, |
|
Tracer::LEVEL2, |
|
"Property Not Found in \ |
|
CMPI_SelectCond:scndGetSubCondAt"); |
CMSetStatus(rc,CMPI_RC_ERR_NO_SUCH_PROPERTY); | CMSetStatus(rc,CMPI_RC_ERR_NO_SUCH_PROPERTY); |
} | } |
|
PEG_METHOD_EXIT(); |
return NULL; | return NULL; |
} | } |
| |