IGNITE-2248: Refactoring of simple API calls that are always
succesessfull.


Project: http://git-wip-us.apache.org/repos/asf/ignite/repo
Commit: http://git-wip-us.apache.org/repos/asf/ignite/commit/a5d824c0
Tree: http://git-wip-us.apache.org/repos/asf/ignite/tree/a5d824c0
Diff: http://git-wip-us.apache.org/repos/asf/ignite/diff/a5d824c0

Branch: refs/heads/ignite-1786
Commit: a5d824c03110f996c780f3e6ab87ade7a5ca8722
Parents: bf566a8
Author: isapego <[email protected]>
Authored: Thu Jan 21 16:21:07 2016 +0300
Committer: isapego <[email protected]>
Committed: Thu Jan 21 16:21:07 2016 +0300

----------------------------------------------------------------------
 .../odbc/diagnostic/diagnosable_adapter.h       |  4 +++
 .../cpp/odbc/odbc-driver/src/statement.cpp      | 32 +++++---------------
 2 files changed, 12 insertions(+), 24 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/ignite/blob/a5d824c0/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnosable_adapter.h
----------------------------------------------------------------------
diff --git 
a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnosable_adapter.h
 
b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnosable_adapter.h
index ce9b7cd..5b01f49 100644
--- 
a/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnosable_adapter.h
+++ 
b/modules/platforms/cpp/odbc/odbc-driver/include/ignite/odbc/diagnostic/diagnosable_adapter.h
@@ -25,6 +25,10 @@
         SqlResult result = (__VA_ARGS__);           \
         diagnosticRecords.SetHeaderRecord(result)
 
+#define IGNITE_ODBC_API_CALL_ALWAYS_SUCCESS                     \
+        diagnosticRecords.Reset();                              \
+        diagnosticRecords.SetHeaderRecord(SQL_RESULT_SUCCESS)
+
 namespace ignite
 {
     namespace odbc

http://git-wip-us.apache.org/repos/asf/ignite/blob/a5d824c0/modules/platforms/cpp/odbc/odbc-driver/src/statement.cpp
----------------------------------------------------------------------
diff --git a/modules/platforms/cpp/odbc/odbc-driver/src/statement.cpp 
b/modules/platforms/cpp/odbc/odbc-driver/src/statement.cpp
index 4fd0294..d23c276 100644
--- a/modules/platforms/cpp/odbc/odbc-driver/src/statement.cpp
+++ b/modules/platforms/cpp/odbc/odbc-driver/src/statement.cpp
@@ -45,31 +45,25 @@ namespace ignite
 
         void Statement::BindColumn(uint16_t columnIdx, const 
app::ApplicationDataBuffer& buffer)
         {
-            diagnosticRecords.Reset();
+            IGNITE_ODBC_API_CALL_ALWAYS_SUCCESS;
 
             columnBindings[columnIdx] = buffer;
 
             columnBindings[columnIdx].SetPtrToOffsetPtr(&columnBindOffset);
-
-            diagnosticRecords.SetHeaderRecord(SQL_RESULT_SUCCESS);
         }
 
         void Statement::UnbindColumn(uint16_t columnIdx)
         {
-            diagnosticRecords.Reset();
+            IGNITE_ODBC_API_CALL_ALWAYS_SUCCESS;
 
             columnBindings.erase(columnIdx);
-
-            diagnosticRecords.SetHeaderRecord(SQL_RESULT_SUCCESS);
         }
 
         void Statement::UnbindAllColumns()
         {
-            diagnosticRecords.Reset();
+            IGNITE_ODBC_API_CALL_ALWAYS_SUCCESS;
 
             columnBindings.clear();
-
-            diagnosticRecords.SetHeaderRecord(SQL_RESULT_SUCCESS);
         }
 
         void Statement::SetColumnBindOffsetPtr(size_t * ptr)
@@ -109,49 +103,39 @@ namespace ignite
 
         void Statement::BindParameter(uint16_t paramIdx, const app::Parameter& 
param)
         {
-            diagnosticRecords.Reset();
+            IGNITE_ODBC_API_CALL_ALWAYS_SUCCESS;
 
             paramBindings[paramIdx] = param;
 
             
paramBindings[paramIdx].GetBuffer().SetPtrToOffsetPtr(&paramBindOffset);
-
-            diagnosticRecords.SetHeaderRecord(SQL_RESULT_SUCCESS);
         }
 
         void Statement::UnbindParameter(uint16_t paramIdx)
         {
-            diagnosticRecords.Reset();
+            IGNITE_ODBC_API_CALL_ALWAYS_SUCCESS;
 
             paramBindings.erase(paramIdx);
-
-            diagnosticRecords.SetHeaderRecord(SQL_RESULT_SUCCESS);
         }
 
         void Statement::UnbindAllParameters()
         {
-            diagnosticRecords.Reset();
+            IGNITE_ODBC_API_CALL_ALWAYS_SUCCESS;
 
             paramBindings.clear();
-
-            diagnosticRecords.SetHeaderRecord(SQL_RESULT_SUCCESS);
         }
 
         uint16_t Statement::GetParametersNumber()
         {
-            diagnosticRecords.Reset();
+            IGNITE_ODBC_API_CALL_ALWAYS_SUCCESS;
 
             return static_cast<uint16_t>(paramBindings.size());
-
-            diagnosticRecords.SetHeaderRecord(SQL_RESULT_SUCCESS);
         }
 
         void Statement::SetParamBindOffsetPtr(size_t* ptr)
         {
-            diagnosticRecords.Reset();
+            IGNITE_ODBC_API_CALL_ALWAYS_SUCCESS;
 
             paramBindOffset = ptr;
-
-            diagnosticRecords.SetHeaderRecord(SQL_RESULT_SUCCESS);
         }
 
         size_t * Statement::GetParamBindOffsetPtr()

Reply via email to