version 1.15, 2006/11/01 22:26:58
|
version 1.16, 2007/07/25 07:16:01
|
|
|
PEGASUS_USING_STD; | PEGASUS_USING_STD; |
PEGASUS_NAMESPACE_BEGIN | PEGASUS_NAMESPACE_BEGIN |
| |
CMPI_Object::CMPI_Object(CMPI_Object *obj) { |
CMPI_Object::CMPI_Object(CMPI_Object *obj) |
|
{ |
hdl=obj->hdl; | hdl=obj->hdl; |
ftab=obj->ftab; | ftab=obj->ftab; |
priv=obj->priv; | priv=obj->priv; |
} | } |
// Add a flag here? | // Add a flag here? |
CMPI_Object::CMPI_Object(CIMInstance* ci) { |
CMPI_Object::CMPI_Object(CIMInstance* ci) |
|
{ |
CMPI_ThreadContext::addObject(this); | CMPI_ThreadContext::addObject(this); |
hdl=(void*)ci; | hdl=(void*)ci; |
ftab=CMPI_Instance_Ftab; | ftab=CMPI_Instance_Ftab; |
priv=NULL; | priv=NULL; |
} | } |
| |
CMPI_Object::CMPI_Object(CIMObjectPath* cop) { |
CMPI_Object::CMPI_Object(CIMObjectPath* cop) |
|
{ |
CMPI_ThreadContext::addObject(this); | CMPI_ThreadContext::addObject(this); |
hdl=(void*)cop; | hdl=(void*)cop; |
ftab=CMPI_ObjectPath_Ftab; | ftab=CMPI_ObjectPath_Ftab; |
} | } |
| |
CMPI_Object::CMPI_Object(CIMDateTime* cdt) { |
CMPI_Object::CMPI_Object(CIMDateTime* cdt) |
|
{ |
CMPI_ThreadContext::addObject(this); | CMPI_ThreadContext::addObject(this); |
hdl=(void*)cdt; | hdl=(void*)cdt; |
ftab=CMPI_DateTime_Ftab; | ftab=CMPI_DateTime_Ftab; |
} | } |
| |
CMPI_Object::CMPI_Object(CIMError* cer) { |
CMPI_Object::CMPI_Object(CIMError* cer) |
|
{ |
CMPI_ThreadContext::addObject(this); | CMPI_ThreadContext::addObject(this); |
hdl=(void*)cer; | hdl=(void*)cer; |
ftab=CMPI_Error_Ftab; | ftab=CMPI_Error_Ftab; |
} | } |
| |
CMPI_Object::CMPI_Object(const String& str) { |
CMPI_Object::CMPI_Object(const String& str) |
|
{ |
CMPI_ThreadContext::addObject(this); | CMPI_ThreadContext::addObject(this); |
const CString st=str.getCString(); | const CString st=str.getCString(); |
hdl=(void*)strdup((const char*)st); | hdl=(void*)strdup((const char*)st); |
ftab=CMPI_String_Ftab; | ftab=CMPI_String_Ftab; |
} | } |
| |
CMPI_Object::CMPI_Object(const char *str) { |
CMPI_Object::CMPI_Object(const char *str) |
|
{ |
CMPI_ThreadContext::addObject(this); | CMPI_ThreadContext::addObject(this); |
hdl=(void*)strdup(str); | hdl=(void*)strdup(str); |
ftab=CMPI_String_Ftab; | ftab=CMPI_String_Ftab; |
} | } |
| |
CMPI_Object::CMPI_Object(Array<CIMParamValue> *args) { |
CMPI_Object::CMPI_Object(Array<CIMParamValue> *args) |
|
{ |
CMPI_ThreadContext::addObject(this); | CMPI_ThreadContext::addObject(this); |
hdl=(void*)args; | hdl=(void*)args; |
ftab=CMPI_Args_Ftab; | ftab=CMPI_Args_Ftab; |
} | } |
| |
CMPI_Object::CMPI_Object(CMPIData *dta) { |
CMPI_Object::CMPI_Object(CMPIData *dta) |
|
{ |
CMPI_ThreadContext::addObject(this); | CMPI_ThreadContext::addObject(this); |
hdl=(void*)dta; | hdl=(void*)dta; |
ftab=CMPI_Array_Ftab; | ftab=CMPI_Array_Ftab; |
} | } |
| |
CMPI_Object::CMPI_Object(CMPISelectCond *dta) { |
CMPI_Object::CMPI_Object(CMPISelectCond *dta) |
|
{ |
CMPI_ThreadContext::addObject(this); | CMPI_ThreadContext::addObject(this); |
hdl=(void*)dta; | hdl=(void*)dta; |
ftab=CMPI_SelectCond_Ftab; | ftab=CMPI_SelectCond_Ftab; |
} | } |
| |
CMPI_Object::CMPI_Object(CMPISubCond *dta) { |
CMPI_Object::CMPI_Object(CMPISubCond *dta) |
|
{ |
CMPI_ThreadContext::addObject(this); | CMPI_ThreadContext::addObject(this); |
hdl=(void*)dta; | hdl=(void*)dta; |
ftab=CMPI_SubCond_Ftab; | ftab=CMPI_SubCond_Ftab; |
} | } |
| |
CMPI_Object::CMPI_Object(CMPIPredicate *dta) { |
CMPI_Object::CMPI_Object(CMPIPredicate *dta) |
|
{ |
CMPI_ThreadContext::addObject(this); | CMPI_ThreadContext::addObject(this); |
hdl=(void*)dta; | hdl=(void*)dta; |
ftab=CMPI_Predicate_Ftab; | ftab=CMPI_Predicate_Ftab; |
} | } |
| |
CMPI_Object::CMPI_Object(CMPI_ObjEnumeration *dta) { |
CMPI_Object::CMPI_Object(CMPI_ObjEnumeration *dta) |
|
{ |
CMPI_ThreadContext::addObject(this); | CMPI_ThreadContext::addObject(this); |
hdl=(void*)dta; | hdl=(void*)dta; |
ftab=CMPI_ObjEnumeration_Ftab; | ftab=CMPI_ObjEnumeration_Ftab; |
} | } |
| |
CMPI_Object::CMPI_Object(CMPI_InstEnumeration *dta) { |
CMPI_Object::CMPI_Object(CMPI_InstEnumeration *dta) |
|
{ |
CMPI_ThreadContext::addObject(this); | CMPI_ThreadContext::addObject(this); |
hdl=(void*)dta; | hdl=(void*)dta; |
ftab=CMPI_InstEnumeration_Ftab; | ftab=CMPI_InstEnumeration_Ftab; |
} | } |
| |
CMPI_Object::CMPI_Object(CMPI_OpEnumeration *dta) { |
CMPI_Object::CMPI_Object(CMPI_OpEnumeration *dta) |
|
{ |
CMPI_ThreadContext::addObject(this); | CMPI_ThreadContext::addObject(this); |
hdl=(void*)dta; | hdl=(void*)dta; |
ftab=CMPI_OpEnumeration_Ftab; | ftab=CMPI_OpEnumeration_Ftab; |
} | } |
| |
CMPI_Object::~CMPI_Object() { |
CMPI_Object::~CMPI_Object() |
if (ftab==CMPI_Instance_Ftab) { |
{ |
|
if (ftab == CMPI_Instance_Ftab) |
|
{ |
char **list=(char**)priv; | char **list=(char**)priv; |
if (priv) { |
if (priv) |
while (*list) { |
{ |
|
while (*list) |
|
{ |
free (*list); | free (*list); |
list++; | list++; |
} | } |
|
|
} | } |
} | } |
| |
void CMPI_Object::unlinkAndDelete() { |
void CMPI_Object::unlinkAndDelete() |
|
{ |
CMPI_ThreadContext::remObject(this); | CMPI_ThreadContext::remObject(this); |
delete this; | delete this; |
} | } |
| |
void CMPI_Object::unlink() { |
void CMPI_Object::unlink() |
|
{ |
CMPI_ThreadContext::remObject(this); | CMPI_ThreadContext::remObject(this); |
} | } |
| |