InfiniSQL  v0.1.2-alpha
Massive Scale Transaction Processing
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
ApiInterface Class Referenceabstract

Stored procedure API. More...

#include <infinisql.h>

Inheritance diagram for ApiInterface:
Collaboration diagram for ApiInterface:

Classes

struct  results_s
 results from SQL query More...
 

Public Member Functions

 ApiInterface ()
 
virtual ~ApiInterface ()
 
virtual void doit ()=0
 
virtual void continueFunc1 (int64_t entrypoint, void *statePtr)=0
 user-defined continuation function More...
 
virtual void continueFunc2 (int64_t entrypoint, void *statePtr)=0
 second user-defined continuation function More...
 
virtual void continuePgFunc (int64_t entrypoint, void *statePtr)=0
 after SQL activity is performed More...
 
virtual void continuePgCommitimplicit (int64_t entrypoint, void *statePtr)=0
 continuation function after implicit commit More...
 
virtual void continuePgCommitexplicit (int64_t entrypoint, void *statePtr)=0
 continuation function after explicit commit More...
 
virtual void continuePgRollbackimplicit (int64_t entrypoint, void *statePtr)=0
 continuation function after implicit rollback More...
 
virtual void continuePgRollbackexplicit (int64_t entrypoint, void *statePtr)=0
 continuation function after explicit rollback More...
 
void deserialize2Vector ()
 orphan More...
 
void beginTransaction ()
 start Transaction More...
 
void destruct ()
 orphan More...
 
void bouncebackproxy ()
 orphan More...
 
void insertRow (apifPtr re, int64_t recmd, void *reptr, int64_t tableid)
 deprecated More...
 
void deleteRow (apifPtr re, int64_t recmd, void *reptr, uuRecord_s &uur)
 deprecated More...
 
void replaceRow (apifPtr re, int64_t recmd, void *reptr)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, int64_t input)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, uint64_t input)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, bool input)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, long double input)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, char input)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, string *input)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, vector< int64_t > *input)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, vector< uint64_t > *input)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, vector< bool > *input)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, vector< long double > *input)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, vector< char > *input)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, vector< string > *input)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, int64_t lower, int64_t upper)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, uint64_t lower, uint64_t upper)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, bool lower, bool upper)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, long double lower, long double upper)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, char lower, char upper)
 deprecated More...
 
void selectRows (apifPtr re, int64_t recmd, void *reptr, int64_t tableid, int64_t fieldid, locktype_e locktype, operatortypes_e op, string *lower, string *upper)
 deprecated More...
 
void fetchRows (apifPtr re, int64_t recmd, void *reptr)
 deprecated More...
 
void unlock (apifPtr re, int64_t recmd, void *reptr, int64_t rowid, int64_t tableid, int64_t engineid)
 unlock row More...
 
void rollback (apifPtr re, int64_t recmd, void *reptr)
 rollback transaction More...
 
void rollback (apifPtr re, int64_t recmd, void *reptr, uuRecord_s &uur)
 rollback transaction More...
 
void commit (apifPtr re, int64_t recmd, void *reptr)
 commit transaction More...
 
void revert (apifPtr re, int64_t recmd, void *reptr, uuRecord_s &uur)
 deprecated More...
 
void updateRow (apifPtr re, int64_t recmd, void *reptr, uuRecord_s &uur)
 deprecated More...
 
void updateRowNullField (apifPtr re, int64_t recmd, void *reptr, uuRecord_s &uur, int64_t fieldid)
 deprecated More...
 
void updateRow (apifPtr re, int64_t recmd, void *reptr, uuRecord_s &uur, int64_t fieldid, int64_t input)
 deprecated More...
 
void updateRow (apifPtr re, int64_t recmd, void *reptr, uuRecord_s &uur, int64_t fieldid, uint64_t input)
 deprecated More...
 
void updateRow (apifPtr re, int64_t recmd, void *reptr, uuRecord_s &uur, int64_t fieldid, bool input)
 deprecated More...
 
void updateRow (apifPtr re, int64_t recmd, void *reptr, uuRecord_s &uur, int64_t fieldid, long double input)
 deprecated More...
 
void updateRow (apifPtr re, int64_t recmd, void *reptr, uuRecord_s &uur, int64_t fieldid, char input)
 deprecated More...
 
void updateRow (apifPtr re, int64_t recmd, void *reptr, uuRecord_s &uur, int64_t fieldid, string input)
 deprecated More...
 
bool unmakerow (int64_t tableid, string *rowstring, vector< fieldValue_s > *resultFields)
 deprecated More...
 
void prepareResponseVector (int64_t resultCode)
 deprecated More...
 
void addFieldToRow ()
 deprecated More...
 
void addFieldToRow (int64_t val)
 deprecated More...
 
void addFieldToRow (uint64_t val)
 deprecated More...
 
void addFieldToRow (bool val)
 deprecated More...
 
void addFieldToRow (long double val)
 deprecated More...
 
void addFieldToRow (char val)
 deprecated More...
 
void addFieldToRow (string &val)
 deprecated More...
 
void setReEntry (apifPtr re, int64_t recmd, void *reptr)
 set continuation target back to ApiInterface object More...
 
void sendResponse (int64_t resultCode, vector< std::string > *v)
 deprecated More...
 
bool execStatement (const char *stmtname, Statement *stmtPtr, apifPtr reentryfunction, int64_t reentrypoint, void *reentrydata)
 execute SQL statement More...
 
bool execStatement (const char *stmtname, vector< std::string > &args, apifPtr reentryfunction, int64_t reentrypoint, void *reentrydata)
 execute SQL statement More...
 
int64_t getResultCode ()
 get resultCode from most recent transactional activity More...
 
void deleteTransaction ()
 delete Transaction More...
 
void deleteStatement ()
 delete Statement More...
 
void getStoredProcedureArgs (Statement *stmtPtr, std::vector< std::string > &argsRef)
 put args from stored procedure Statement into vector of strings More...
 

Public Attributes

class TransactionAgenttaPtr
 
class ApiInterfacepgPtr
 
class StatementstatementPtr
 
std::vector< std::string > inputVector
 
class TransactiontransactionPtr
 
procedureResponse_s response
 
std::vector< std::string > responseVector
 
void * destroyerPtr
 
apifPtr continueFunc1Ptr
 
apifPtr continueFunc2Ptr
 
apifPtr continuePgFuncPtr
 
int sockfd
 
int64_t domainid
 
results_s results
 

Detailed Description

Stored procedure API.

Stored procedure programming is described in http://www.infinisql.org/docs/reference/

Definition at line 243 of file infinisql.h.

Constructor & Destructor Documentation

ApiInterface::ApiInterface ( )
inline

Definition at line 261 of file infinisql.h.

262  {
263  ;
264  }
virtual ApiInterface::~ApiInterface ( )
inlinevirtual

Definition at line 265 of file infinisql.h.

266  {
267  ;
268  }

Member Function Documentation

void ApiInterface::addFieldToRow ( )

deprecated

Definition at line 762 of file api.cc.

References Transaction::addFieldToRow(), and transactionPtr.

763 {
765 }

Here is the call graph for this function:

void ApiInterface::addFieldToRow ( int64_t  val)

deprecated

Definition at line 767 of file api.cc.

References Transaction::addFieldToRow(), and transactionPtr.

768 {
770 }

Here is the call graph for this function:

void ApiInterface::addFieldToRow ( uint64_t  val)

deprecated

Definition at line 772 of file api.cc.

References Transaction::addFieldToRow(), and transactionPtr.

773 {
775 }

Here is the call graph for this function:

void ApiInterface::addFieldToRow ( bool  val)

deprecated

Definition at line 777 of file api.cc.

References Transaction::addFieldToRow(), and transactionPtr.

778 {
780 }

Here is the call graph for this function:

void ApiInterface::addFieldToRow ( long double  val)

deprecated

Definition at line 782 of file api.cc.

References Transaction::addFieldToRow(), and transactionPtr.

783 {
785 }

Here is the call graph for this function:

void ApiInterface::addFieldToRow ( char  val)

deprecated

Definition at line 787 of file api.cc.

References Transaction::addFieldToRow(), and transactionPtr.

788 {
790 }

Here is the call graph for this function:

void ApiInterface::addFieldToRow ( string &  val)

deprecated

Definition at line 792 of file api.cc.

References Transaction::addFieldToRow(), and transactionPtr.

793 {
795 }

Here is the call graph for this function:

void ApiInterface::beginTransaction ( )

start Transaction

Definition at line 44 of file api.cc.

References transactionPtr.

45 {
47 }
void ApiInterface::bouncebackproxy ( )

orphan

Definition at line 55 of file api.cc.

References Transaction::reenter(), and transactionPtr.

56 {
58 }

Here is the call graph for this function:

void ApiInterface::commit ( apifPtr  re,
int64_t  recmd,
void *  reptr 
)

commit transaction

Definition at line 231 of file api.cc.

References APISTATUS_PENDING, Transaction::commit(), NOCOMMAND, Transaction::pendingcmd, Transaction::reenter(), setReEntry(), and transactionPtr.

232 {
233  setReEntry(re, recmd, reptr);
234 
236  {
238  return;
239  }
240 
242 }

Here is the call graph for this function:

virtual void ApiInterface::continueFunc1 ( int64_t  entrypoint,
void *  statePtr 
)
pure virtual

user-defined continuation function

Parameters
entrypointentrypoint for continuation
statePtrstate data

Implemented in Pg.

virtual void ApiInterface::continueFunc2 ( int64_t  entrypoint,
void *  statePtr 
)
pure virtual

second user-defined continuation function

Parameters
entrypointentrypoint for continuation
statePtrstate data

Implemented in Pg.

virtual void ApiInterface::continuePgCommitexplicit ( int64_t  entrypoint,
void *  statePtr 
)
pure virtual

continuation function after explicit commit

explicit commit is sent as COMMIT or END at end of transaction

Parameters
entrypointentry point to continue
statePtrstate data to continue with

Implemented in Pg.

Referenced by Pg::sqlcommitexplicit().

Here is the caller graph for this function:

virtual void ApiInterface::continuePgCommitimplicit ( int64_t  entrypoint,
void *  statePtr 
)
pure virtual

continuation function after implicit commit

implicit commit done after a single statement is entered, not in a transaction already, and session_isautocommit is true

Parameters
entrypointentry point to continue
statePtrstate data to continue with

Implemented in Pg.

Referenced by Pg::closesocket(), and Pg::sqlcommitimplicit().

Here is the caller graph for this function:

virtual void ApiInterface::continuePgFunc ( int64_t  entrypoint,
void *  statePtr 
)
pure virtual

after SQL activity is performed

based on the statement type and transaction state, a variety of things if session_isautocommit==true, and is SELECT, INSERT, UPDATE, DELETE, then output If autocommit==false, and SELECT, INSERT, UPDATE, DELETE, then prepare output but don't output if COMMIT (END), then commit open transaction and output results already prepared if ROLLBACK, then rollback open transaction and output results CommandComplete at the end of everything returned If set, then set whatever

Parameters
entrypointentry point to contiue
statePtrstate data to continue with

Implemented in Pg.

Referenced by Pg::executeStatement().

Here is the caller graph for this function:

virtual void ApiInterface::continuePgRollbackexplicit ( int64_t  entrypoint,
void *  statePtr 
)
pure virtual

continuation function after explicit rollback

explicit commit is sent as ROLLBACK statement within transaction

Parameters
entrypointentry point to continue
statePtrstate data to continue with

Implemented in Pg.

Referenced by Pg::sqlrollbackexplicit().

Here is the caller graph for this function:

virtual void ApiInterface::continuePgRollbackimplicit ( int64_t  entrypoint,
void *  statePtr 
)
pure virtual

continuation function after implicit rollback

implicit rollback done generally after a failure of some kind which forces a rollback

Parameters
entrypointentry point to continue
statePtrstate data to continue with

Implemented in Pg.

Referenced by Pg::sqlrollbackimplicit().

Here is the caller graph for this function:

void ApiInterface::deleteRow ( apifPtr  re,
int64_t  recmd,
void *  reptr,
uuRecord_s uur 
)

deprecated

Parameters
re
recmd
reptr
uur

Definition at line 151 of file api.cc.

References APISTATUS_NOTOK, Transaction::currentCmdState, DELETE, DELETEROW, uuRecord_s::engineid, Transaction::getnextpendingcmdid(), NOCOMMAND, Transaction::cmdState_s::originaluur, PAYLOADSUBTRANSACTION, Transaction::pendingcmd, Transaction::pendingcmdid, Transaction::reenter(), uuRecord_s::rowid, MessageSubtransactionCmd::subtransaction_s::rowid, Transaction::sendTransaction(), setReEntry(), Transaction::stagedRows, MessageSubtransactionCmd::subtransactionStruct, uuRecord_s::tableid, MessageSubtransactionCmd::subtransaction_s::tableid, transactionPtr, WRITELOCK, and Transaction::zeroCurrentCmdState().

153 {
154  setReEntry(re, recmd, reptr);
155 
156  if (!transactionPtr->stagedRows.count(uur))
157  {
159  return;
160  }
161 
162  if (transactionPtr->stagedRows[uur].locktype != WRITELOCK ||
163  transactionPtr->stagedRows[uur].cmd != NOCOMMAND ||
165  {
167  return;
168  }
169 
173 
175 
176  // tableid,rowid,DELETEROW,SUBTRANSACTIONCMDPAYLOAD, returns status
177  class MessageSubtransactionCmd *msg = new class MessageSubtransactionCmd();
178  class MessageSubtransactionCmd &msgref = *msg;
179  msgref.subtransactionStruct.rowid =
185  (void *)msg);
186 }

Here is the call graph for this function:

void ApiInterface::deleteStatement ( )

delete Statement

Definition at line 830 of file api.cc.

References pgPtr, and statementPtr.

831 {
832  delete pgPtr->statementPtr;
833 }
void ApiInterface::deleteTransaction ( )

delete Transaction

Definition at line 825 of file api.cc.

References transactionPtr.

826 {
827  delete transactionPtr;
828 }
void ApiInterface::deserialize2Vector ( )

orphan

Definition at line 36 of file api.cc.

References TransactionAgent::args, TransactionAgent::argsize, inputVector, and taPtr.

37 {
38  msgpack::unpacked msg;
39  msgpack::unpack(&msg, taPtr->args, taPtr->argsize);
40  msgpack::object obj = msg.get();
41  obj.convert(&inputVector);
42 }
void ApiInterface::destruct ( )

orphan

Definition at line 49 of file api.cc.

References destroyerPtr.

50 {
52  d(this);
53 }
virtual void ApiInterface::doit ( )
pure virtual

Implemented in Pg.

bool ApiInterface::execStatement ( const char *  stmtname,
Statement stmtPtr,
apifPtr  reentryfunction,
int64_t  reentrypoint,
void *  reentrydata 
)

execute SQL statement

Parameters
stmtnamestatement name
stmtPtrStatement
reentryfunctionfunction to reenter to
reentrypointcontinuation entry point
reentrydatacontinuation state
Returns
success or failure to execute statement

Definition at line 797 of file api.cc.

References Statement::queries.

800 {
801  return execStatement(stmtname, stmtPtr->queries[0].storedProcedureArgs,
802  reentryfunction, reentrypoint, reentrydata);
803 }
bool ApiInterface::execStatement ( const char *  stmtname,
vector< std::string > &  args,
apifPtr  reentryfunction,
int64_t  reentrypoint,
void *  reentrydata 
)

execute SQL statement

Parameters
stmtnamestatement name
argsstatement parameters
reentryfunctionfunction to reenter to
reentrypointcontinuation entry point
reentrydatacontinuation state
Returns
success or failure to execute statement

Definition at line 805 of file api.cc.

References domainid, Statement::execute(), TransactionAgent::statements, taPtr, and transactionPtr.

808 {
809  if (!taPtr->statements[domainid].count(string(stmtname)))
810  {
811  return false;
812  }
813  class Statement *stmt = new class Statement;
814  *stmt=taPtr->statements[domainid][string(stmtname)];
815  stmt->execute(this, reentryfunction, reentrypoint, reentrydata,
816  transactionPtr, args);
817  return true;
818 }

Here is the call graph for this function:

void ApiInterface::fetchRows ( apifPtr  re,
int64_t  recmd,
void *  reptr 
)

deprecated

Definition at line 202 of file api.cc.

References APISTATUS_PENDING, FETCH, Transaction::getnextpendingcmdid(), NOCOMMAND, Transaction::pendingcmd, Transaction::pendingcmdid, Transaction::reenter(), setReEntry(), and transactionPtr.

203 {
204  setReEntry(re, recmd, reptr);
205 
207  {
209  return;
210  }
211 
214 }

Here is the call graph for this function:

int64_t ApiInterface::getResultCode ( )

get resultCode from most recent transactional activity

Returns
resultCode

Definition at line 820 of file api.cc.

References Transaction::resultCode, and transactionPtr.

821 {
822  return transactionPtr->resultCode;
823 }
void ApiInterface::getStoredProcedureArgs ( Statement stmtPtr,
std::vector< std::string > &  argsRef 
)

put args from stored procedure Statement into vector of strings

Parameters
stmtPtrStatement
argsRefresulting arguments

Definition at line 835 of file api.cc.

References Statement::queries.

837 {
838  argsRef=stmtPtr->queries[0].storedProcedureArgs;
839 }
void ApiInterface::insertRow ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid 
)

deprecated

Parameters
re
recmd
reptr
tableid

Definition at line 61 of file api.cc.

References APISTATUS_FIELD, APISTATUS_NOTOK, APISTATUS_NULLCONSTRAINT, APISTATUS_PENDING, Transaction::checkNullConstraintOK(), Transaction::currentCmdState, Table::fields, Transaction::fieldValues, Transaction::getEngineid(), Transaction::getnextpendingcmdid(), Transaction::cmdState_s::indexEntries, INSERT, NEWROW, NOCOMMAND, NONE, PAYLOADSUBTRANSACTION, Transaction::pendingcmd, Transaction::pendingcmdid, Transaction::reenter(), Transaction::returnNewRow, Transaction::cmdState_s::row, MessageSubtransactionCmd::row, Transaction::cmdState_s::rowEngineid, Transaction::cmdState_s::rowidsEngineids, Transaction::schemaPtr, Transaction::sendTransaction(), setReEntry(), MessageSubtransactionCmd::subtransactionStruct, Transaction::cmdState_s::tableid, MessageSubtransactionCmd::subtransaction_s::tableid, Transaction::tableid, Transaction::cmdState_s::tablePtr, Schema::tables, transactionPtr, Table::unmakerow(), and Transaction::zeroCurrentCmdState().

63 {
64  setReEntry(re, recmd, reptr);
65 
67  {
69  return;
70  }
71 
72  uuRecord_s uur = { -1, -1, -1 };
73  transactionPtr->returnNewRow = uur; // why this here?
79  transactionPtr->schemaPtr->tables[tableid];
80 
81  indexInfo_s blankIdxInfo = {};
83  (transactionPtr->currentCmdState.tablePtr->fields.size(), blankIdxInfo);
84  indexEntry_s blankIdxEntry = {};
86  (transactionPtr->currentCmdState.tablePtr->fields.size(), blankIdxEntry);
87 
88  for (size_t n=0; n<transactionPtr->currentCmdState.tablePtr->fields.size();
89  n++)
90  {
92  {
94  return;
95  }
96 
97  if (transactionPtr->currentCmdState.tablePtr->fields[n].indextype != NONE)
98  {
106  }
107  else
108  {
109  transactionPtr->currentCmdState.indexEntries[n].engineid = -1;
110  }
111 
114  }
115 
118 
120  {
122  return;
123  }
124 
125  // now, prepare message for Engine, which expects:
126  // transaction_enginecmd NEWROW, transaction_messageStruct.payloadtype
127  // SUBTRANSACTIONCMDPAYLOAD
128  // reentrypoint 1
129  // tableid, row
130  // expects in return: rowid
131  class MessageSubtransactionCmd *msg = new class MessageSubtransactionCmd();
132  class MessageSubtransactionCmd &msgref = *msg;
133  msgref.subtransactionStruct.tableid=tableid;
134 
136  makerow(&transactionPtr->fieldValues, &msgref.row)==false)
137  {
139  delete msg;
140  return;
141  }
142 
143  vector<fieldValue_s> f;
148  (void *)msg);
149 }

Here is the call graph for this function:

void ApiInterface::prepareResponseVector ( int64_t  resultCode)

deprecated

Definition at line 746 of file api.cc.

References response, responseVector, procedureResponse_s::resultCode, and procedureResponse_s::sbuf.

747 {
748  response.resultCode = resultCode;
749  msgpack::sbuffer *sbuf = new msgpack::sbuffer;
750  msgpack::pack(*sbuf, responseVector);
751  response.sbuf = sbuf;
752 }
void ApiInterface::replaceRow ( apifPtr  re,
int64_t  recmd,
void *  reptr 
)

deprecated

Parameters
re
recmd
reptr

Definition at line 188 of file api.cc.

References APISTATUS_PENDING, Transaction::getnextpendingcmdid(), NOCOMMAND, Transaction::pendingcmd, Transaction::pendingcmdid, Transaction::reenter(), REPLACE, setReEntry(), and transactionPtr.

189 {
190  setReEntry(re, recmd, reptr);
191 
193  {
195  return;
196  }
197 
200 }

Here is the call graph for this function:

void ApiInterface::revert ( apifPtr  re,
int64_t  recmd,
void *  reptr,
uuRecord_s uur 
)

deprecated

Definition at line 271 of file api.cc.

References APISTATUS_PENDING, NOCOMMAND, Transaction::pendingcmd, Transaction::reenter(), Transaction::revert(), setReEntry(), and transactionPtr.

272 {
273  setReEntry(re, recmd, reptr);
274 
276  {
278  return;
279  }
280 
281  transactionPtr->revert(uur);
282 }

Here is the call graph for this function:

void ApiInterface::rollback ( apifPtr  re,
int64_t  recmd,
void *  reptr 
)

rollback transaction

Definition at line 244 of file api.cc.

References APISTATUS_PENDING, NOCOMMAND, Transaction::pendingcmd, Transaction::reenter(), Transaction::rollback(), setReEntry(), and transactionPtr.

245 {
246  setReEntry(re, recmd, reptr);
247 
249  {
251  return;
252  }
253 
255 }

Here is the call graph for this function:

void ApiInterface::rollback ( apifPtr  re,
int64_t  recmd,
void *  reptr,
uuRecord_s uur 
)

rollback transaction

Definition at line 257 of file api.cc.

References APISTATUS_PENDING, NOCOMMAND, Transaction::pendingcmd, Transaction::reenter(), Transaction::rollback(), setReEntry(), and transactionPtr.

259 {
260  setReEntry(re, recmd, reptr);
261 
263  {
265  return;
266  }
267 
268  transactionPtr->rollback(uur);
269 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op 
)

deprecated

Definition at line 285 of file api.cc.

References APISTATUS_NOTOK, searchParams_s::op, OPERATOR_ISNOTNULL, OPERATOR_ISNULL, OPERATOR_SELECTALL, Transaction::reenter(), MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), and transactionPtr.

288 {
289  setReEntry(re, recmd, reptr);
290 
291  if ((op != OPERATOR_ISNULL) && (op != OPERATOR_ISNOTNULL) &&
292  (op != OPERATOR_SELECTALL))
293  {
295  return;
296  }
297 
299  searchParameters.op = op;
300  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
301 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
int64_t  input 
)

deprecated

Definition at line 304 of file api.cc.

References MessageSubtransactionCmd::fieldVal, fieldInput_u::integer, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldValue_s::value, and searchParams_s::values.

308 {
309  setReEntry(re, recmd, reptr);
311  searchParameters.op = op;
312  fieldValue_s fieldVal = {};
313  fieldVal.value.integer = input;
314  searchParameters.values.push_back(fieldVal);
315  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
316 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
uint64_t  input 
)

deprecated

Definition at line 318 of file api.cc.

References MessageSubtransactionCmd::fieldVal, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldInput_u::uinteger, fieldValue_s::value, and searchParams_s::values.

322 {
323  setReEntry(re, recmd, reptr);
325  searchParameters.op = op;
326  fieldValue_s fieldVal = {};
327  fieldVal.value.uinteger = input;
328  searchParameters.values.push_back(fieldVal);
329  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
330 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
bool  input 
)

deprecated

Definition at line 332 of file api.cc.

References fieldInput_u::boolean, MessageSubtransactionCmd::fieldVal, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldValue_s::value, and searchParams_s::values.

336 {
337  setReEntry(re, recmd, reptr);
339  searchParameters.op = op;
340  fieldValue_s fieldVal = {};
341  fieldVal.value.boolean = input;
342  searchParameters.values.push_back(fieldVal);
343  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
344 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
long double  input 
)

deprecated

Definition at line 346 of file api.cc.

References MessageSubtransactionCmd::fieldVal, fieldInput_u::floating, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldValue_s::value, and searchParams_s::values.

350 {
351  setReEntry(re, recmd, reptr);
353  searchParameters.op = op;
354  fieldValue_s fieldVal = {};
355  fieldVal.value.floating = input;
356  searchParameters.values.push_back(fieldVal);
357  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
358 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
char  input 
)

deprecated

Definition at line 360 of file api.cc.

References fieldInput_u::character, MessageSubtransactionCmd::fieldVal, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldValue_s::value, and searchParams_s::values.

364 {
365  setReEntry(re, recmd, reptr);
367  searchParameters.op = op;
368  fieldValue_s fieldVal = {};
369  fieldVal.value.character = input;
370  searchParameters.values.push_back(fieldVal);
371  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
372 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
string *  input 
)

deprecated

Definition at line 374 of file api.cc.

References MessageSubtransactionCmd::fieldVal, searchParams_s::op, OPERATOR_REGEX, searchParams_s::regexString, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), fieldValue_s::str, transactionPtr, and searchParams_s::values.

378 {
379  setReEntry(re, recmd, reptr);
381  searchParameters.op = op;
382 
383  if (op == OPERATOR_REGEX)
384  {
385  searchParameters.regexString = *input;
386  }
387  else
388  {
389  fieldValue_s fieldVal = {};
390  fieldVal.str = *input;
391  searchParameters.values.push_back(fieldVal);
392  }
393 
394  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
395 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
vector< int64_t > *  input 
)

deprecated

Definition at line 398 of file api.cc.

References MessageSubtransactionCmd::fieldVal, fieldInput_u::integer, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldValue_s::value, and searchParams_s::values.

402 {
403  setReEntry(re, recmd, reptr);
405  searchParameters.op = op;
406 
407  fieldValue_s blankFieldVal = {};
409  searchParameters.values.reserve(input->size());
410 
411  for (size_t n=0; n<input->size(); n++)
412  {
413  fieldVal = blankFieldVal;
414  fieldVal.value.integer = input->at(n);
415  searchParameters.values[n] = fieldVal;
416  }
417 
418  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
419 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
vector< uint64_t > *  input 
)

deprecated

Definition at line 421 of file api.cc.

References MessageSubtransactionCmd::fieldVal, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldInput_u::uinteger, fieldValue_s::value, and searchParams_s::values.

425 {
426  setReEntry(re, recmd, reptr);
428  searchParameters.op = op;
429 
430  fieldValue_s blankFieldVal = {};
432  searchParameters.values.reserve(input->size());
433 
434  for (size_t n=0; n<input->size(); n++)
435  {
436  fieldVal = blankFieldVal;
437  fieldVal.value.uinteger = input->at(n);
438  searchParameters.values[n] = fieldVal;
439  }
440 
441  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
442 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
vector< bool > *  input 
)

deprecated

Definition at line 444 of file api.cc.

References fieldInput_u::boolean, MessageSubtransactionCmd::fieldVal, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldValue_s::value, and searchParams_s::values.

448 {
449  setReEntry(re, recmd, reptr);
451  searchParameters.op = op;
452 
453  fieldValue_s blankFieldVal = {};
455  searchParameters.values.reserve(input->size());
456 
457  for (size_t n=0; n<input->size(); n++)
458  {
459  fieldVal = blankFieldVal;
460  fieldVal.value.boolean = input->at(n);
461  searchParameters.values[n] = fieldVal;
462  }
463 
464  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
465 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
vector< long double > *  input 
)

deprecated

Definition at line 467 of file api.cc.

References MessageSubtransactionCmd::fieldVal, fieldInput_u::floating, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldValue_s::value, and searchParams_s::values.

471 {
472  setReEntry(re, recmd, reptr);
474  searchParameters.op = op;
475 
476  fieldValue_s blankFieldVal = {};
478  searchParameters.values.reserve(input->size());
479 
480  for (size_t n=0; n<input->size(); n++)
481  {
482  fieldVal = blankFieldVal;
483  fieldVal.value.floating = input->at(n);
484  searchParameters.values[n] = fieldVal;
485  }
486 
487  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
488 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
vector< char > *  input 
)

deprecated

Definition at line 490 of file api.cc.

References fieldInput_u::character, MessageSubtransactionCmd::fieldVal, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldValue_s::value, and searchParams_s::values.

494 {
495  setReEntry(re, recmd, reptr);
497  searchParameters.op = op;
498 
499  fieldValue_s blankFieldVal = {};
501  searchParameters.values.reserve(input->size());
502 
503  for (size_t n=0; n<input->size(); n++)
504  {
505  fieldVal = blankFieldVal;
506  fieldVal.value.character = input->at(n);
507  searchParameters.values[n] = fieldVal;
508  }
509 
510  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
511 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
vector< string > *  input 
)

deprecated

Definition at line 513 of file api.cc.

References MessageSubtransactionCmd::fieldVal, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), fieldValue_s::str, transactionPtr, and searchParams_s::values.

517 {
518  setReEntry(re, recmd, reptr);
520  searchParameters.op = op;
521 
522  fieldValue_s blankFieldVal = {};
524  searchParameters.values.reserve(input->size());
525 
526  for (size_t n=0; n<input->size(); n++)
527  {
528  fieldVal = blankFieldVal;
529  fieldVal.str = input->at(n);
530  searchParameters.values[n] = fieldVal;
531  }
532 
533  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
534 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
int64_t  lower,
int64_t  upper 
)

deprecated

Definition at line 537 of file api.cc.

References MessageSubtransactionCmd::fieldVal, fieldInput_u::integer, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldValue_s::value, and searchParams_s::values.

541 {
542  setReEntry(re, recmd, reptr);
544  searchParameters.op = op;
545  searchParameters.values.reserve(2);
546  fieldValue_s fieldVal = {};
547  fieldVal.value.integer = lower;
548  searchParameters.values[0] = fieldVal;
549  fieldVal.value.integer = upper;
550  searchParameters.values[1] = fieldVal;
551  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
552 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
uint64_t  lower,
uint64_t  upper 
)

deprecated

Definition at line 554 of file api.cc.

References MessageSubtransactionCmd::fieldVal, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldInput_u::uinteger, fieldValue_s::value, and searchParams_s::values.

558 {
559  setReEntry(re, recmd, reptr);
561  searchParameters.op = op;
562  searchParameters.values.reserve(2);
563  fieldValue_s fieldVal = {};
564  fieldVal.value.uinteger = lower;
565  searchParameters.values[0] = fieldVal;
566  fieldVal.value.uinteger = upper;
567  searchParameters.values[1] = fieldVal;
568  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
569 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
bool  lower,
bool  upper 
)

deprecated

Definition at line 572 of file api.cc.

References fieldInput_u::boolean, MessageSubtransactionCmd::fieldVal, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldValue_s::value, and searchParams_s::values.

576 {
577  setReEntry(re, recmd, reptr);
579  searchParameters.op = op;
580  searchParameters.values.reserve(2);
581  fieldValue_s fieldVal = {};
582  fieldVal.value.boolean = lower;
583  searchParameters.values[0] = fieldVal;
584  fieldVal.value.boolean = upper;
585  searchParameters.values[1] = fieldVal;
586  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
587 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
long double  lower,
long double  upper 
)

deprecated

Definition at line 589 of file api.cc.

References MessageSubtransactionCmd::fieldVal, fieldInput_u::floating, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldValue_s::value, and searchParams_s::values.

593 {
594  setReEntry(re, recmd, reptr);
596  searchParameters.op = op;
597  searchParameters.values.reserve(2);
598  fieldValue_s fieldVal = {};
599  fieldVal.value.floating = lower;
600  searchParameters.values[0] = fieldVal;
601  fieldVal.value.floating = upper;
602  searchParameters.values[1] = fieldVal;
603  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
604 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
char  lower,
char  upper 
)

deprecated

Definition at line 606 of file api.cc.

References fieldInput_u::character, MessageSubtransactionCmd::fieldVal, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), transactionPtr, fieldValue_s::value, and searchParams_s::values.

610 {
611  setReEntry(re, recmd, reptr);
613  searchParameters.op = op;
614  searchParameters.values.reserve(2);
615  fieldValue_s fieldVal = {};
616  fieldVal.value.character = lower;
617  searchParameters.values[0] = fieldVal;
618  fieldVal.value.character = upper;
619  searchParameters.values[1] = fieldVal;
620  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
621 }

Here is the call graph for this function:

void ApiInterface::selectRows ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  tableid,
int64_t  fieldid,
locktype_e  locktype,
operatortypes_e  op,
string *  lower,
string *  upper 
)

deprecated

Definition at line 623 of file api.cc.

References MessageSubtransactionCmd::fieldVal, searchParams_s::op, MessageSubtransactionCmd::searchParameters, Transaction::select(), setReEntry(), fieldValue_s::str, transactionPtr, and searchParams_s::values.

627 {
628  setReEntry(re, recmd, reptr);
630  searchParameters.op = op;
631  searchParameters.values.reserve(2);
632  fieldValue_s fieldVal = {};
633  fieldVal.str = *lower;
634  searchParameters.values[0] = fieldVal;
635  fieldVal.str = *upper;
636  searchParameters.values[1] = fieldVal;
637  transactionPtr->select(tableid, fieldid, locktype, &searchParameters);
638 }

Here is the call graph for this function:

void ApiInterface::sendResponse ( int64_t  resultCode,
vector< std::string > *  v 
)

deprecated

Parameters
resultCode
v

Definition at line 640 of file api.cc.

References TransactionAgent::sendResponse(), TransactionAgent::sockfd, sockfd, and taPtr.

641 {
642  taPtr->sockfd = sockfd;
643  taPtr->sendResponse(false, resultCode, v);
644 }

Here is the call graph for this function:

void ApiInterface::setReEntry ( apifPtr  re,
int64_t  recmd,
void *  reptr 
)

set continuation target back to ApiInterface object

Parameters
rethis
recmdentry point
reptrstate data

Definition at line 754 of file api.cc.

References Transaction::reentryCmd, Transaction::reentryFuncPtr, Transaction::reentryObject, Transaction::reentryState, and transactionPtr.

Referenced by commit(), deleteRow(), fetchRows(), insertRow(), replaceRow(), revert(), rollback(), selectRows(), unlock(), updateRow(), and updateRowNullField().

755 {
758  transactionPtr->reentryCmd = recmd;
759  transactionPtr->reentryState = reptr;
760 }

Here is the caller graph for this function:

void ApiInterface::unlock ( apifPtr  re,
int64_t  recmd,
void *  reptr,
int64_t  rowid,
int64_t  tableid,
int64_t  engineid 
)

unlock row

Definition at line 216 of file api.cc.

References APISTATUS_PENDING, Transaction::getnextpendingcmdid(), NOCOMMAND, Transaction::pendingcmd, Transaction::pendingcmdid, Transaction::reenter(), setReEntry(), transactionPtr, and UNLOCK.

218 {
219  setReEntry(re, recmd, reptr);
220 
222  {
224  return;
225  }
226 
229 }

Here is the call graph for this function:

bool ApiInterface::unmakerow ( int64_t  tableid,
string *  rowstring,
vector< fieldValue_s > *  resultFields 
)

deprecated

Definition at line 646 of file api.cc.

References Transaction::schemaPtr, Schema::tables, and transactionPtr.

648 {
649  return transactionPtr->schemaPtr->tables[tableid]->unmakerow(rowstring,
650  resultFields);
651 }
void ApiInterface::updateRow ( apifPtr  re,
int64_t  recmd,
void *  reptr,
uuRecord_s uur 
)

deprecated

Definition at line 653 of file api.cc.

References Transaction::currentCmdState, Transaction::cmdState_s::isupdatemultiplefields, Transaction::cmdState_s::originaluur, setReEntry(), transactionPtr, and Transaction::updateRow().

655 {
656  setReEntry(re, recmd, reptr);
659  // uses Transaction::fieldsToUpdate map
661 }

Here is the call graph for this function:

void ApiInterface::updateRow ( apifPtr  re,
int64_t  recmd,
void *  reptr,
uuRecord_s uur,
int64_t  fieldid,
int64_t  input 
)
void ApiInterface::updateRow ( apifPtr  re,
int64_t  recmd,
void *  reptr,
uuRecord_s uur,
int64_t  fieldid,
uint64_t  input 
)
void ApiInterface::updateRow ( apifPtr  re,
int64_t  recmd,
void *  reptr,
uuRecord_s uur,
int64_t  fieldid,
bool  input 
)
void ApiInterface::updateRow ( apifPtr  re,
int64_t  recmd,
void *  reptr,
uuRecord_s uur,
int64_t  fieldid,
long double  input 
)
void ApiInterface::updateRow ( apifPtr  re,
int64_t  recmd,
void *  reptr,
uuRecord_s uur,
int64_t  fieldid,
char  input 
)
void ApiInterface::updateRow ( apifPtr  re,
int64_t  recmd,
void *  reptr,
uuRecord_s uur,
int64_t  fieldid,
string  input 
)
void ApiInterface::updateRowNullField ( apifPtr  re,
int64_t  recmd,
void *  reptr,
uuRecord_s uur,
int64_t  fieldid 
)

Member Data Documentation

apifPtr ApiInterface::continueFunc1Ptr

Definition at line 736 of file infinisql.h.

apifPtr ApiInterface::continueFunc2Ptr

Definition at line 737 of file infinisql.h.

apifPtr ApiInterface::continuePgFuncPtr

Definition at line 738 of file infinisql.h.

void* ApiInterface::destroyerPtr

Definition at line 735 of file infinisql.h.

Referenced by destruct().

int64_t ApiInterface::domainid

Definition at line 740 of file infinisql.h.

Referenced by Pg::continueLogin(), execStatement(), and Pg::Pg().

std::vector<std::string> ApiInterface::inputVector

Definition at line 731 of file infinisql.h.

Referenced by deserialize2Vector().

class ApiInterface* ApiInterface::pgPtr

Definition at line 729 of file infinisql.h.

Referenced by deleteStatement().

procedureResponse_s ApiInterface::response

Definition at line 733 of file infinisql.h.

Referenced by prepareResponseVector().

std::vector<std::string> ApiInterface::responseVector

Definition at line 734 of file infinisql.h.

Referenced by prepareResponseVector().

int ApiInterface::sockfd

Definition at line 739 of file infinisql.h.

Referenced by sendResponse().


The documentation for this class was generated from the following files: