Date: Wednesday, November 23, 2005 @ 18:51:45
Author: marc
Path: /cvsroot/carob/carob
Modified: include/Request.hpp (1.1 -> 1.2) src/Request.cpp (1.1 -> 1.2)
src/RequestWithResultSetParameters.cpp (1.1 -> 1.2)
src/Statement.cpp (1.5 -> 1.6) test/TestBeginCommitRollback.cpp
(1.3 -> 1.4) test/TestExecWriteRequest.cpp (1.7 -> 1.8)
Simplified Request constructor. TODO: do the same for RequestWithRSParameters
----------------------------------------+
include/Request.hpp | 18 +++++++++++-------
src/Request.cpp | 10 ++++------
src/RequestWithResultSetParameters.cpp | 8 +++++++-
src/Statement.cpp | 2 +-
test/TestBeginCommitRollback.cpp | 8 ++++----
test/TestExecWriteRequest.cpp | 14 ++++++++------
6 files changed, 35 insertions(+), 25 deletions(-)
Index: carob/include/Request.hpp
diff -u carob/include/Request.hpp:1.1 carob/include/Request.hpp:1.2
--- carob/include/Request.hpp:1.1 Wed Nov 23 15:13:02 2005
+++ carob/include/Request.hpp Wed Nov 23 18:51:45 2005
@@ -43,8 +43,7 @@
* @param timeoutInSeconds Timeout for this request in seconds, value 0 means
* no timeout
*/
- Request(wstring sql, bool nullSqlTemplate, wstring sqlTemplate,
- bool escapeProcessing, int timeoutInSeconds);
+ Request(wstring sql);
virtual ~Request();
/**
* Serializes the request on the output stream by sending only the needed
@@ -67,14 +66,19 @@
* Sets the escapeProcessing value.
* @param escapeProcessingPrm escapeProcessing to set.
*/
- void setEscapeProcessing (bool escapeProcessingPrm)
- { escapeProcessing = escapeProcessingPrm; }
+ Request& setEscapeProcessing (bool escapeProcessingPrm)
+ { escapeProcessing = escapeProcessingPrm; return
*this;}
/**
* Returns the sqlQuery value.
* @return Returns the sqlQuery.
*/
wstring getSqlQuery() const { return sqlQuery; }
/**
+ * Sets the sqlTemplate.
+ */
+ Request& setSqlTemplate(wstring sqlTemplatePrm)
+ { sqlTemplateIsNull = false; sqlTemplate = sqlTemplatePrm; return
*this;}
+ /**
* Sets the sqlQuery value.
*/
void setSqlQuery(wstring sqlQueryPrm) { sqlQuery = sqlQueryPrm;
}
@@ -125,13 +129,13 @@
* Sets the timeoutInSeconds value.
* @param timeoutInSecondsPrm The timeoutInSeconds to set.
*/
- void setTimeoutInSeconds(int timeoutInSecondsPrm)
- { timeoutInSeconds = timeoutInSecondsPrm; }
+ Request& setTimeoutInSeconds(int timeoutInSecondsPrm)
+ { timeoutInSeconds = timeoutInSecondsPrm; return
*this;}
protected:
private:
- /** SQL query (should be set in constructor). */
+ /** SQL query (should be set in constructor). TODO: should probably be const
*/
wstring sqlQuery;
/**
* SQL query skeleton as it appears in PreparedStatements.
Index: carob/src/Request.cpp
diff -u carob/src/Request.cpp:1.1 carob/src/Request.cpp:1.2
--- carob/src/Request.cpp:1.1 Wed Nov 23 15:13:02 2005
+++ carob/src/Request.cpp Wed Nov 23 18:51:45 2005
@@ -1,14 +1,12 @@
#include "Request.hpp"
-Request::Request(wstring sql, bool nullSqlTemplate, wstring sqlTemplatePrm,
- bool escapeProcessingPrm, int timeoutInSecondsPrm) :
+Request::Request(wstring sql) :
sqlQuery(sql),
-sqlTemplate(sqlTemplatePrm),
-sqlTemplateIsNull(nullSqlTemplate),
+sqlTemplateIsNull(true),
isReadOnly(false),
isAutoCommit(true),
-timeoutInSeconds(timeoutInSecondsPrm),
-escapeProcessing(escapeProcessingPrm)
+timeoutInSeconds(0),
+escapeProcessing(true)
{
}
Index: carob/src/RequestWithResultSetParameters.cpp
diff -u carob/src/RequestWithResultSetParameters.cpp:1.1
carob/src/RequestWithResultSetParameters.cpp:1.2
--- carob/src/RequestWithResultSetParameters.cpp:1.1 Wed Nov 23 15:13:02 2005
+++ carob/src/RequestWithResultSetParameters.cpp Wed Nov 23 18:51:45 2005
@@ -1,13 +1,19 @@
#include "RequestWithResultSetParameters.hpp"
+// TODO: use the Named Parameters Idiom just like in superclass Request
RequestWithResultSetParameters::RequestWithResultSetParameters(wstring sql,
bool nullSqlTemplate, wstring sqlTemplatePrm, bool escapeProcessingPrm,
int timeoutInSecondsPrm) :
-Request(sql, nullSqlTemplate, sqlTemplatePrm, escapeProcessingPrm,
timeoutInSecondsPrm),
+Request(sql),
maxRows(0),
fetchSize(0),
cursorNameIsNull(true)
{
+ if (!nullSqlTemplate)
+ setSqlTemplate(sqlTemplatePrm);
+
+ setEscapeProcessing(escapeProcessingPrm)
+ .setTimeoutInSeconds(timeoutInSecondsPrm);
}
RequestWithResultSetParameters::~RequestWithResultSetParameters()
Index: carob/src/Statement.cpp
diff -u carob/src/Statement.cpp:1.5 carob/src/Statement.cpp:1.6
--- carob/src/Statement.cpp:1.5 Wed Nov 23 16:16:46 2005
+++ carob/src/Statement.cpp Wed Nov 23 18:51:45 2005
@@ -98,7 +98,7 @@
resultPtr->close();
resultPtr = NULL;
}
- Request request(sql, true, L"", escapeProcessing, timeout);
+ Request request =
Request(sql).setEscapeProcessing(escapeProcessing).setTimeoutInSeconds(timeout);
int updateCount = connectionPtr->statementExecuteUpdate(request);
return updateCount;
}
Index: carob/test/TestBeginCommitRollback.cpp
diff -u carob/test/TestBeginCommitRollback.cpp:1.3
carob/test/TestBeginCommitRollback.cpp:1.4
--- carob/test/TestBeginCommitRollback.cpp:1.3 Wed Nov 23 15:16:36 2005
+++ carob/test/TestBeginCommitRollback.cpp Wed Nov 23 18:51:45 2005
@@ -76,8 +76,8 @@
try
{
connectionPtr->setAutoCommit(false);
- Request updtReq(L"update product set name='commited' where id=0", true,
L"",
- false, 2);
+ Request updtReq = Request(L"update product set name='commited' where id=0")
+ .setEscapeProcessing(false).setTimeoutInSeconds(2);
if (isDebugEnabled())
{
logDebug(fctName, L"Executing write");
@@ -100,8 +100,8 @@
try
{
connectionPtr->setAutoCommit(false);
- Request updtReq(L"update product set name='rollbacked' where id=0", true,
- L"", false, 2);
+ Request updtReq = Request(L"update product set name='rollbacked' where
id=0")
+ .setEscapeProcessing(false).setTimeoutInSeconds(2);
if (isDebugEnabled())
{
logDebug(fctName, L"Executing write");
Index: carob/test/TestExecWriteRequest.cpp
diff -u carob/test/TestExecWriteRequest.cpp:1.7
carob/test/TestExecWriteRequest.cpp:1.8
--- carob/test/TestExecWriteRequest.cpp:1.7 Wed Nov 23 15:16:36 2005
+++ carob/test/TestExecWriteRequest.cpp Wed Nov 23 18:51:45 2005
@@ -31,7 +31,8 @@
wstring fctName(L"TestExecWriteRequest::testWriteBadRequest");
try
{
- Request updtReq(L"dummy request", true, L"", false, 2);
+ Request updtReq = Request(L"dummy request")
+ .setEscapeProcessing(false).setTimeoutInSeconds(2);
if (isDebugEnabled())
{
logDebug(fctName, L"Executing write");
@@ -57,8 +58,8 @@
wstring fctName(L"TestExecWriteRequest::testWriteBadTable");
try
{
- Request updtReq(L"update dummy set name='gotit' where id=0", true, L"",
- false, 2);
+ Request updtReq = Request(L"update dummy set name='gotit' where id=0")
+ .setEscapeProcessing(false).setTimeoutInSeconds(2);
if (isDebugEnabled())
{
logDebug(fctName, L"Executing write");
@@ -84,8 +85,8 @@
wstring fctName(L"TestExecWriteRequest::testWriteGood");
try
{
- Request updtReq(L"update product set name='changed' where id=0", true, L"",
- false, 2);
+ Request updtReq = Request(L"update product set name='changed' where id=0")
+ .setEscapeProcessing(false).setTimeoutInSeconds(2);
if (isDebugEnabled())
{
logDebug(fctName, L"Executing write");
@@ -114,7 +115,8 @@
wstring requestBegin = L"UPDATE product SET cost=";
wstring requestEnd = L" where id=";
- Request updtReq(L"", true, L"", false, 2);
+ Request updtReq = Request(L"")
+ .setEscapeProcessing(false).setTimeoutInSeconds(2);
if (isDebugEnabled())
{
logDebug(fctName, L"Executing 1000 writes");
_______________________________________________
Carob-commits mailing list
[email protected]
https://forge.continuent.org/mailman/listinfo/carob-commits