(file) Return to CMPI_Object.cpp CVS log (file) (dir) Up to [Pegasus] / pegasus / src / Pegasus / ProviderManager2 / CMPI

Diff for /pegasus/src/Pegasus/ProviderManager2/CMPI/CMPI_Object.cpp between version 1.15 and 1.16

version 1.15, 2006/11/01 22:26:58 version 1.16, 2007/07/25 07:16:01
Line 42 
Line 42 
 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++;
          }          }
Line 148 
Line 167 
    }    }
 } }
  
 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);
 } }
  


Legend:
Removed from v.1.15  
changed lines
  Added in v.1.16

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2