Change file path of domain socket
[platform/framework/native/appfw.git] / src / io / FIo_DataSetImpl.cpp
old mode 100755 (executable)
new mode 100644 (file)
index 9670bd3..012d78f
@@ -1,5 +1,4 @@
 //
-// Open Service Platform
 // Copyright (c) 2013 Samsung Electronics Co., Ltd.
 //
 // Licensed under the Apache License, Version 2.0 (the License);
@@ -37,15 +36,21 @@ using namespace Tizen::Base::Collection;
 namespace Tizen { namespace Io
 {
 _DataSetImpl::_DataSetImpl(void)
-       :__rowCount(0),
-       __pDataSet(null),
-       __pColumnList(null),
-       __pColumnTypeList(null)
+       : __columnCount(0)
+       , __rowCount(0)
+       , __pDataSet(null)
+       , __pColumnList(null)
+       , __pColumnTypeList(null)
 {
 }
 
 _DataSetImpl::~_DataSetImpl(void)
 {
+       for (int i = 0; i< __enumImplList.GetCount() ; i++)
+               (static_cast<_DataSetEnumeratorImpl*>(__enumImplList.GetAt(i)))->__dataSetDeleted = true;
+       for (int i = 0; i< __rowImplList.GetCount() ; i++)
+               (static_cast<_DataRowImpl*>(__rowImplList.GetAt(i)))->__dataSetDeleted = true;
+
        delete __pDataSet;
        delete __pColumnList;
        delete __pColumnTypeList;
@@ -99,6 +104,11 @@ _DataSetImpl::CreateDataRowN(void)
 
        _DataRowImpl::GetInstance(*pDataRow)->__pColumnTypeList = __pColumnTypeList;
 
+       r = __rowImplList.Add(_DataRowImpl::GetInstance(*pDataRow));
+       SysTryReturn(NID_IO, r == E_SUCCESS, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Add to LinkedList Falied");
+
+       _DataRowImpl::GetInstance(*pDataRow)->__pRowImplList = &__rowImplList;
+
        __rowCount = __pDataSet->GetCount();
        //SysLog(NID_IO, "row count is %d", __rowCount);
 
@@ -109,6 +119,8 @@ _DataSetImpl::CreateDataRowN(void)
 DataSetEnumerator*
 _DataSetImpl::GetDataSetEnumeratorN(void)
 {
+       result r;
+
        unique_ptr<DataSetEnumerator> pDataSetEnum(_DataSetEnumeratorImpl::CreateDataSetEnumeratorInstanceN());
 
        _DataSetEnumeratorImpl::GetInstance(*pDataSetEnum)->__pDataSet = __pDataSet;
@@ -118,6 +130,11 @@ _DataSetImpl::GetDataSetEnumeratorN(void)
 
        //SysLog(NID_IO, "row count is %d, column count is %d", __rowCount, __columnCount);
 
+       r = __enumImplList.Add(_DataSetEnumeratorImpl::GetInstance(*pDataSetEnum));
+       SysTryReturn(NID_IO, r == E_SUCCESS, null, E_OUT_OF_MEMORY, "[E_OUT_OF_MEMORY] Add to LinkedList Falied");
+
+       _DataSetEnumeratorImpl::GetInstance(*pDataSetEnum)->__pEnumImplList = &__enumImplList;
+
        return pDataSetEnum.release();
 }