__pCurrentRow(null),
__columnCount(0),
__rowCount(0),
- __currentRowIndex(-1)
+ __currentRowIndex(-1),
+ __dataSetDeleted(0)
{
}
_DataSetEnumeratorImpl::~_DataSetEnumeratorImpl(void)
{
-
+ if (__dataSetDeleted == 0)
+ {
+ __pEnumImplList->Remove(*this);
+ }
}
result
_DataSetEnumeratorImpl::MoveNext(void)
{
SysTryReturnResult(NID_IO, __pDataSet != null, E_INVALID_STATE,
- "The Object is not constructed or the dataset is already been deleted.");
+ "The Object is not constructed.");
+ SysTryReturnResult(NID_IO, __dataSetDeleted != 1, E_INVALID_STATE,
+ "The dataset is already been deleted.");
if (__currentRowIndex +1 == __rowCount)
return E_OUT_OF_RANGE;
_DataSetEnumeratorImpl::MovePrevious(void)
{
SysTryReturnResult(NID_IO, __pDataSet != null, E_INVALID_STATE,
- "The Object is not constructed or the dataset is already been deleted.");
+ "The Object is not constructed.");
+ SysTryReturnResult(NID_IO, __dataSetDeleted != 1, E_INVALID_STATE,
+ "The dataset is already been deleted.");
if (__currentRowIndex == 0)
return E_OUT_OF_RANGE;
_DataSetEnumeratorImpl::MoveFirst(void)
{
SysTryReturnResult(NID_IO, __pDataSet != null, E_INVALID_STATE,
- "The Object is not constructed or the dataset is already been deleted.");
+ "The Object is not constructed.");
+ SysTryReturnResult(NID_IO, __dataSetDeleted != 1, E_INVALID_STATE,
+ "The dataset is already been deleted.");
__currentRowIndex = 0;
__pCurrentRow = static_cast<ArrayList*>(__pDataSet->GetAt(__currentRowIndex));
_DataSetEnumeratorImpl::MoveLast(void)
{
SysTryReturnResult(NID_IO, __pDataSet != null, E_INVALID_STATE,
- "The Object is not constructed or the dataset is already been deleted.");
+ "The Object is not constructed.");
+ SysTryReturnResult(NID_IO, __dataSetDeleted != 1, E_INVALID_STATE,
+ "The dataset is already been deleted.");
__currentRowIndex = __rowCount -1;
__pCurrentRow = static_cast<ArrayList*>(__pDataSet->GetAt(__currentRowIndex));
_DataSetEnumeratorImpl::Reset(void)
{
SysTryReturnResult(NID_IO, __pDataSet != null, E_INVALID_STATE,
- "The Object is not constructed or the dataset is already been deleted.");
+ "The Object is not constructed.");
+ SysTryReturnResult(NID_IO, __dataSetDeleted != 1, E_INVALID_STATE,
+ "The dataset is already been deleted.");
__currentRowIndex = -1;
__pCurrentRow = null;
result r = E_SUCCESS;
SysTryReturnResult(NID_IO, __pDataSet != null, E_INVALID_STATE,
- "The Object is not constructed or the dataset is already been deleted.");
+ "The Object is not constructed.");
+ SysTryReturnResult(NID_IO, __dataSetDeleted != 1, E_INVALID_STATE,
+ "The dataset is already been deleted.");
SysTryReturnResult(NID_IO, columnIndex >= 0 && columnIndex < __columnCount, E_INVALID_ARG,
"Given column index is out of range.");
SysTryReturnResult(NID_IO, __pCurrentRow != null, E_INVALID_STATE,
result r = E_SUCCESS;
SysTryReturnResult(NID_IO, __pDataSet != null, E_INVALID_STATE,
- "The Object is not constructed or the dataset is already been deleted.");
+ "The Object is not constructed.");
+ SysTryReturnResult(NID_IO, __dataSetDeleted != 1, E_INVALID_STATE,
+ "The dataset is already been deleted.");
SysTryReturnResult(NID_IO, columnIndex >= 0 && columnIndex < __columnCount, E_INVALID_ARG,
"Given column index is out of range.");
SysTryReturnResult(NID_IO, __pCurrentRow != null, E_INVALID_STATE,
result r = E_SUCCESS;
SysTryReturnResult(NID_IO, __pDataSet != null, E_INVALID_STATE,
- "The Object is not constructed or the dataset is already been deleted.");
+ "The Object is not constructed.");
+ SysTryReturnResult(NID_IO, __dataSetDeleted != 1, E_INVALID_STATE,
+ "The dataset is already been deleted.");
SysTryReturnResult(NID_IO, columnIndex >= 0 && columnIndex < __columnCount, E_INVALID_ARG,
"Given column index is out of range.");
SysTryReturnResult(NID_IO, __pCurrentRow != null, E_INVALID_STATE,
result r = E_SUCCESS;
SysTryReturnResult(NID_IO, __pDataSet != null, E_INVALID_STATE,
- "The Object is not constructed or the dataset is already been deleted.");
+ "The Object is not constructed.");
+ SysTryReturnResult(NID_IO, __dataSetDeleted != 1, E_INVALID_STATE,
+ "The dataset is already been deleted.");
SysTryReturnResult(NID_IO, columnIndex >= 0 && columnIndex < __columnCount, E_INVALID_ARG,
"Given column index is out of range.");
SysTryReturnResult(NID_IO, __pCurrentRow != null, E_INVALID_STATE,
ByteBuffer* pBuffer = null;
SysTryReturnResult(NID_IO, __pDataSet != null, E_INVALID_STATE,
- "The Object is not constructed or the dataset is already been deleted.");
+ "The Object is not constructed.");
+ SysTryReturnResult(NID_IO, __dataSetDeleted != 1, E_INVALID_STATE,
+ "The dataset is already been deleted.");
SysTryReturnResult(NID_IO, columnIndex >= 0 && columnIndex < __columnCount, E_INVALID_ARG,
"Given column index is out of range.");
SysTryReturnResult(NID_IO, __pCurrentRow != null, E_INVALID_STATE,
ByteBuffer* pBuffer = null;
SysTryReturnResult(NID_IO, __pDataSet != null, E_INVALID_STATE,
- "The Object is not constructed or the dataset is already been deleted.");
+ "The Object is not constructed.");
+ SysTryReturnResult(NID_IO, __dataSetDeleted != 1, E_INVALID_STATE,
+ "The dataset is already been deleted.");
SysTryReturnResult(NID_IO, columnIndex >= 0 && columnIndex < __columnCount, E_INVALID_ARG,
"Given column index is out of range.");
SysTryReturnResult(NID_IO, __pCurrentRow != null, E_INVALID_STATE,
String* pStr = null;
SysTryReturnResult(NID_IO, __pDataSet != null, E_INVALID_STATE,
- "The instance is not constructed or the dataset is already been deleted.");
+ "The Object is not constructed.");
+ SysTryReturnResult(NID_IO, __dataSetDeleted != 1, E_INVALID_STATE,
+ "The dataset is already been deleted.");
SysTryReturnResult(NID_IO, columnIndex >= 0 && columnIndex < __columnCount, E_INVALID_ARG,
"Given column index is out of range.");
SysTryReturnResult(NID_IO, __pCurrentRow != null, E_INVALID_STATE,
int
_DataSetEnumeratorImpl::GetColumnCount(void) const
{
- SysTryReturnResult(NID_IO, __pDataSet != null, E_INVALID_STATE,
- "The Object is not constructed or the dataset is already been deleted.");
+ SysTryReturn(NID_IO, __pDataSet != null, -1, E_INVALID_STATE,
+ "[E_INVALID_STATE] The Object is not constructed.");
+ SysTryReturn(NID_IO, __dataSetDeleted != 1, -1, E_INVALID_STATE,
+ "[E_INVALID_STATE] The dataset is already been deleted.");
return __columnCount;
}
DbColumnType type = DB_COLUMNTYPE_UNDEFINED;
SysTryReturn(NID_IO, __pDataSet != null, DB_COLUMNTYPE_UNDEFINED, E_INVALID_STATE,
- "[E_INVALID_STATE] The instance is not constructed or the dataset is already been deleted.");
-
+ "[E_INVALID_STATE] The instance is not constructed.");
+ SysTryReturn(NID_IO, __dataSetDeleted != 1, DB_COLUMNTYPE_UNDEFINED, E_INVALID_STATE,
+ "[E_INVALID_STATE] The dataset is already been deleted.");
SysTryReturn(NID_IO, columnIndex >= 0 && columnIndex < __columnCount, DB_COLUMNTYPE_UNDEFINED, E_INVALID_ARG,
"[E_INVALID_ARG] Given column index is out of range.");
_DataSetEnumeratorImpl::GetColumnName(int columnIndex) const
{
SysTryReturn(NID_IO, __pDataSet != null, null, E_INVALID_STATE,
- "[E_INVALID_STATE] The instance is not constructed or the dataset is already been deleted.");
-
+ "[E_INVALID_STATE] The instance is not constructed.");
+ SysTryReturn(NID_IO, __dataSetDeleted != 1, null, E_INVALID_STATE,
+ "[E_INVALID_STATE] The dataset is already been deleted.");
SysTryReturn(NID_IO, columnIndex >= 0 && columnIndex < __columnCount, null, E_INVALID_ARG,
"[E_INVALID_ARG] Given column index is out of range.");
int bytes = 0;
SysTryReturn(NID_IO, __pDataSet != null, -1, E_INVALID_STATE,
- "[E_INVALID_STATE] The instance is not constructed or the dataset is already been deleted.");
-
+ "[E_INVALID_STATE] The instance is not constructed.");
+ SysTryReturn(NID_IO, __dataSetDeleted != 1, -1, E_INVALID_STATE,
+ "[E_INVALID_STATE] The dataset is already been deleted.");
SysTryReturn(NID_IO, columnIndex >= 0 && columnIndex < __columnCount, -1, E_INVALID_ARG,
"[E_INVALID_ARG] Given column index is out of range.");
-
SysTryReturn(NID_IO, __pCurrentRow != null, -1, E_INVALID_STATE,
"[E_INVALID_STATE] The method has tried to fetch the column data of a result set that is not activated.");