This is an automated email from the ASF dual-hosted git repository.
doebele pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/empire-db.git
The following commit(s) were added to refs/heads/master by this push:
new 5fd23fd9 EMPIREDB-403 Added reference to DBMS in DBCommand constructor
5fd23fd9 is described below
commit 5fd23fd9c8afd017fcba28530b86e278004f282b
Author: Rainer Döbele <[email protected]>
AuthorDate: Thu Mar 9 12:46:16 2023 +0100
EMPIREDB-403
Added reference to DBMS in DBCommand constructor
---
.../java/org/apache/empire/db/DBCombinedCmd.java | 1 +
.../main/java/org/apache/empire/db/DBCommand.java | 8 ++++--
.../java/org/apache/empire/db/DBCommandExpr.java | 33 +++++++++++-----------
.../org/apache/empire/dbms/DBMSHandlerBase.java | 6 ++--
.../org/apache/empire/dbms/h2/DBMSHandlerH2.java | 6 ++--
.../org/apache/empire/dbms/hsql/DBCommandHSql.java | 4 +--
.../apache/empire/dbms/hsql/DBMSHandlerHSql.java | 2 +-
.../apache/empire/dbms/mysql/DBMSHandlerMySQL.java | 6 ++--
.../apache/empire/dbms/oracle/DBCommandOracle.java | 4 +--
.../empire/dbms/oracle/DBMSHandlerOracle.java | 2 +-
.../empire/dbms/postgresql/DBCommandPostgres.java | 4 +--
.../dbms/postgresql/DBMSHandlerPostgreSQL.java | 2 +-
.../empire/dbms/sqlite/DBMSHandlerSQLite.java | 6 ++--
.../empire/dbms/sqlserver/DBMSHandlerMSSQL.java | 6 ++--
14 files changed, 46 insertions(+), 44 deletions(-)
diff --git a/empire-db/src/main/java/org/apache/empire/db/DBCombinedCmd.java
b/empire-db/src/main/java/org/apache/empire/db/DBCombinedCmd.java
index fa1d5c0e..2729fcf8 100644
--- a/empire-db/src/main/java/org/apache/empire/db/DBCombinedCmd.java
+++ b/empire-db/src/main/java/org/apache/empire/db/DBCombinedCmd.java
@@ -52,6 +52,7 @@ public class DBCombinedCmd extends DBCommandExpr
*/
public DBCombinedCmd(DBCommandExpr left, String keyWord, DBCommandExpr
right)
{
+ super(left.getDbms());
this.left = left;
this.right = right;
this.keyWord = keyWord;
diff --git a/empire-db/src/main/java/org/apache/empire/db/DBCommand.java
b/empire-db/src/main/java/org/apache/empire/db/DBCommand.java
index d15ed678..f2ba88c6 100644
--- a/empire-db/src/main/java/org/apache/empire/db/DBCommand.java
+++ b/empire-db/src/main/java/org/apache/empire/db/DBCommand.java
@@ -40,6 +40,7 @@ import org.apache.empire.db.expr.join.DBCrossJoinExpr;
import org.apache.empire.db.expr.join.DBJoinExpr;
import org.apache.empire.db.expr.order.DBOrderByExpr;
import org.apache.empire.db.expr.set.DBSetExpr;
+import org.apache.empire.dbms.DBMSHandler;
import org.apache.empire.dbms.DBSqlPhrase;
import org.apache.empire.exceptions.InvalidArgumentException;
import org.apache.empire.exceptions.ItemNotFoundException;
@@ -114,8 +115,9 @@ public abstract class DBCommand extends DBCommandExpr
*
* @param db the current database object
*/
- protected DBCommand(boolean autoPrepareStmt, DBCmdParamList cmdParams)
+ protected DBCommand(DBMSHandler dbms, boolean autoPrepareStmt,
DBCmdParamList cmdParams)
{
+ super(dbms);
this.autoPrepareStmt = autoPrepareStmt;
this.cmdParams = cmdParams;
}
@@ -125,9 +127,9 @@ public abstract class DBCommand extends DBCommandExpr
*
* @param db the current database object
*/
- protected DBCommand(boolean autoPrepareStmt)
+ protected DBCommand(DBMSHandler dbms, boolean autoPrepareStmt)
{
- this(autoPrepareStmt, new DBCmdParamList());
+ this(dbms, autoPrepareStmt, new DBCmdParamList());
}
/**
diff --git a/empire-db/src/main/java/org/apache/empire/db/DBCommandExpr.java
b/empire-db/src/main/java/org/apache/empire/db/DBCommandExpr.java
index edaa4ea1..1b883ec2 100644
--- a/empire-db/src/main/java/org/apache/empire/db/DBCommandExpr.java
+++ b/empire-db/src/main/java/org/apache/empire/db/DBCommandExpr.java
@@ -57,9 +57,9 @@ public abstract class DBCommandExpr extends DBExpr
* @param cmd the command expression
* @param exprList
*/
- public DBCmdQuery(DBCommandExpr cmd, DBColumnExpr[] exprList)
+ public DBCmdQuery(DBCommandExpr cmd, DBDatabase db, DBColumnExpr[]
exprList)
{ // Set the column expressions
- super(cmd.getDatabase());
+ super(db);
this.cmd = cmd;
// Add Expressions to list
for (int i = 0; i < exprList.length; i++)
@@ -283,13 +283,24 @@ public abstract class DBCommandExpr extends DBExpr
}
// Members
+ private final DBMSHandler dbms;
protected DBCmdQuery cmdQuery = null;
protected List<DBOrderByExpr> orderBy = null;
/** Constructs an empty DBCommandExpr object */
- public DBCommandExpr()
+ public DBCommandExpr(DBMSHandler dbms)
{
// Default Constructor
+ this.dbms = dbms;
+ }
+
+ /**
+ * returns the DBMSHandler this command belongs to
+ * @return the DBMSHandler
+ */
+ public final DBMSHandler getDbms()
+ {
+ return dbms;
}
/**
@@ -411,7 +422,6 @@ public abstract class DBCommandExpr extends DBExpr
*/
public DBCommandExpr union(DBCommandExpr other)
{ // give dbms a chance to subclass DBCombinedCmd
- DBMSHandler dbms = getDatabase().getDbms();
return dbms.createCombinedCommand(this, "UNION", other);
}
@@ -425,7 +435,6 @@ public abstract class DBCommandExpr extends DBExpr
*/
public DBCommandExpr unionAll(DBCommandExpr other)
{ // give dbms a chance to subclass DBCombinedCmd
- DBMSHandler dbms = getDatabase().getDbms();
return dbms.createCombinedCommand(this, "UNION ALL", other);
}
@@ -438,7 +447,6 @@ public abstract class DBCommandExpr extends DBExpr
*/
public DBCommandExpr intersect(DBCommandExpr other)
{ // give dbms a chance to subclass DBCombinedCmd
- DBMSHandler dbms = getDatabase().getDbms();
return dbms.createCombinedCommand(this, "INTERSECT", other);
}
@@ -596,15 +604,6 @@ public abstract class DBCommandExpr extends DBExpr
}
return getInsertInto(table, select, inscols);
}
- /**
- * creates a new DBSQLBuilder
- * @param initalSQL
- * @return the new DBSQLBuilder
- */
- protected DBMSHandler getDbms()
- {
- return this.getDatabase().getDbms();
- }
/**
* creates a new DBSQLBuilder
@@ -613,7 +612,7 @@ public abstract class DBCommandExpr extends DBExpr
*/
protected DBSQLBuilder createSQLBuilder(String initalSQL)
{
- DBSQLBuilder sql = getDbms().createSQLBuilder();
+ DBSQLBuilder sql = dbms.createSQLBuilder();
if (initalSQL!=null)
sql.append(initalSQL);
return sql;
@@ -635,7 +634,7 @@ public abstract class DBCommandExpr extends DBExpr
}
// Check if we already have a Command Query
if (cmdQuery == null)
- cmdQuery = new DBCmdQuery(this, getSelectExprList());
+ cmdQuery = new DBCmdQuery(this, col.getDatabase(),
getSelectExprList());
// create a command column
return new DBCmdColumn(cmdQuery, col);
}
diff --git
a/empire-db/src/main/java/org/apache/empire/dbms/DBMSHandlerBase.java
b/empire-db/src/main/java/org/apache/empire/dbms/DBMSHandlerBase.java
index 2f25cdb5..e8efb700 100644
--- a/empire-db/src/main/java/org/apache/empire/dbms/DBMSHandlerBase.java
+++ b/empire-db/src/main/java/org/apache/empire/dbms/DBMSHandlerBase.java
@@ -101,9 +101,9 @@ public abstract class DBMSHandlerBase implements DBMSHandler
*/
public static final class DBMSCommand extends DBCommand
{
- protected DBMSCommand(boolean autoPrepareStmt)
+ protected DBMSCommand(DBMSHandler dbms, boolean autoPrepareStmt)
{
- super(autoPrepareStmt);
+ super(dbms, autoPrepareStmt);
}
}
@@ -315,7 +315,7 @@ public abstract class DBMSHandlerBase implements DBMSHandler
@Override
public DBCommand createCommand(boolean autoPrepareStmt)
{
- return new DBMSCommand(autoPrepareStmt);
+ return new DBMSCommand(this, autoPrepareStmt);
}
/**
diff --git
a/empire-db/src/main/java/org/apache/empire/dbms/h2/DBMSHandlerH2.java
b/empire-db/src/main/java/org/apache/empire/dbms/h2/DBMSHandlerH2.java
index 61479d29..b7b519c2 100644
--- a/empire-db/src/main/java/org/apache/empire/dbms/h2/DBMSHandlerH2.java
+++ b/empire-db/src/main/java/org/apache/empire/dbms/h2/DBMSHandlerH2.java
@@ -62,9 +62,9 @@ public class DBMSHandlerH2 extends DBMSHandlerBase
protected int limitRows = -1;
protected int skipRows = 0;
- public DBCommandH2(boolean autoPrepareStmt)
+ public DBCommandH2(DBMSHandlerH2 dbms, boolean autoPrepareStmt)
{
- super(autoPrepareStmt);
+ super(dbms, autoPrepareStmt);
}
@Override
@@ -196,7 +196,7 @@ public class DBMSHandlerH2 extends DBMSHandlerBase
public DBCommand createCommand(boolean autoPrepareStmt)
{
// create command object
- return new DBCommandH2(autoPrepareStmt);
+ return new DBCommandH2(this, autoPrepareStmt);
}
/**
diff --git
a/empire-db/src/main/java/org/apache/empire/dbms/hsql/DBCommandHSql.java
b/empire-db/src/main/java/org/apache/empire/dbms/hsql/DBCommandHSql.java
index 4d071547..d0c64a72 100644
--- a/empire-db/src/main/java/org/apache/empire/dbms/hsql/DBCommandHSql.java
+++ b/empire-db/src/main/java/org/apache/empire/dbms/hsql/DBCommandHSql.java
@@ -45,9 +45,9 @@ public class DBCommandHSql extends DBCommand
/**
* Constructs an HSqlDB command object.
*/
- public DBCommandHSql(boolean autoPrepareStmt)
+ public DBCommandHSql(DBMSHandlerHSql dbms, boolean autoPrepareStmt)
{
- super(autoPrepareStmt);
+ super(dbms, autoPrepareStmt);
}
@Override
diff --git
a/empire-db/src/main/java/org/apache/empire/dbms/hsql/DBMSHandlerHSql.java
b/empire-db/src/main/java/org/apache/empire/dbms/hsql/DBMSHandlerHSql.java
index deba595d..22f6760e 100644
--- a/empire-db/src/main/java/org/apache/empire/dbms/hsql/DBMSHandlerHSql.java
+++ b/empire-db/src/main/java/org/apache/empire/dbms/hsql/DBMSHandlerHSql.java
@@ -91,7 +91,7 @@ public class DBMSHandlerHSql extends DBMSHandlerBase
@Override
public DBCommand createCommand(boolean autoPrepareStmt)
{
- return new DBCommandHSql(autoPrepareStmt);
+ return new DBCommandHSql(this, autoPrepareStmt);
}
/**
diff --git
a/empire-db/src/main/java/org/apache/empire/dbms/mysql/DBMSHandlerMySQL.java
b/empire-db/src/main/java/org/apache/empire/dbms/mysql/DBMSHandlerMySQL.java
index ad1ddd03..ac0b322d 100644
--- a/empire-db/src/main/java/org/apache/empire/dbms/mysql/DBMSHandlerMySQL.java
+++ b/empire-db/src/main/java/org/apache/empire/dbms/mysql/DBMSHandlerMySQL.java
@@ -67,9 +67,9 @@ public class DBMSHandlerMySQL extends DBMSHandlerBase
protected int limit = -1;
protected int skip = -1;
- public DBCommandMySQL(boolean autoPrepareStmt)
+ public DBCommandMySQL(DBMSHandlerMySQL dbms, boolean autoPrepareStmt)
{
- super(autoPrepareStmt);
+ super(dbms, autoPrepareStmt);
}
@Override
@@ -938,7 +938,7 @@ public class DBMSHandlerMySQL extends DBMSHandlerBase
public DBCommand createCommand(boolean autoPrepareStmt)
{
// create command object
- return new DBCommandMySQL(autoPrepareStmt);
+ return new DBCommandMySQL(this, autoPrepareStmt);
}
/**
diff --git
a/empire-db/src/main/java/org/apache/empire/dbms/oracle/DBCommandOracle.java
b/empire-db/src/main/java/org/apache/empire/dbms/oracle/DBCommandOracle.java
index f2394763..d93ec9ef 100644
--- a/empire-db/src/main/java/org/apache/empire/dbms/oracle/DBCommandOracle.java
+++ b/empire-db/src/main/java/org/apache/empire/dbms/oracle/DBCommandOracle.java
@@ -64,9 +64,9 @@ public class DBCommandOracle extends DBCommand
*
* @param db the oracle database object this command belongs to
*/
- public DBCommandOracle(boolean autoPrepareStmt)
+ public DBCommandOracle(DBMSHandlerOracle dbms, boolean autoPrepareStmt)
{
- super(autoPrepareStmt);
+ super(dbms, autoPrepareStmt);
}
public String getOptimizerHint()
diff --git
a/empire-db/src/main/java/org/apache/empire/dbms/oracle/DBMSHandlerOracle.java
b/empire-db/src/main/java/org/apache/empire/dbms/oracle/DBMSHandlerOracle.java
index 0f3c59d2..923782d9 100644
---
a/empire-db/src/main/java/org/apache/empire/dbms/oracle/DBMSHandlerOracle.java
+++
b/empire-db/src/main/java/org/apache/empire/dbms/oracle/DBMSHandlerOracle.java
@@ -155,7 +155,7 @@ public class DBMSHandlerOracle extends DBMSHandlerBase
public DBCommand createCommand(boolean autoPrepareStmt)
{
// create oracle command
- return new DBCommandOracle(autoPrepareStmt);
+ return new DBCommandOracle(this, autoPrepareStmt);
}
/**
diff --git
a/empire-db/src/main/java/org/apache/empire/dbms/postgresql/DBCommandPostgres.java
b/empire-db/src/main/java/org/apache/empire/dbms/postgresql/DBCommandPostgres.java
index b6fb8f7c..fdc37214 100644
---
a/empire-db/src/main/java/org/apache/empire/dbms/postgresql/DBCommandPostgres.java
+++
b/empire-db/src/main/java/org/apache/empire/dbms/postgresql/DBCommandPostgres.java
@@ -37,9 +37,9 @@ public class DBCommandPostgres extends DBCommand
protected int limit = -1;
protected int skip = -1;
- public DBCommandPostgres(boolean autoPrepareStmt)
+ public DBCommandPostgres(DBMSHandlerPostgreSQL dbms, boolean
autoPrepareStmt)
{
- super(autoPrepareStmt);
+ super(dbms, autoPrepareStmt);
}
/**
diff --git
a/empire-db/src/main/java/org/apache/empire/dbms/postgresql/DBMSHandlerPostgreSQL.java
b/empire-db/src/main/java/org/apache/empire/dbms/postgresql/DBMSHandlerPostgreSQL.java
index 39367e5e..8ad4e782 100644
---
a/empire-db/src/main/java/org/apache/empire/dbms/postgresql/DBMSHandlerPostgreSQL.java
+++
b/empire-db/src/main/java/org/apache/empire/dbms/postgresql/DBMSHandlerPostgreSQL.java
@@ -131,7 +131,7 @@ public class DBMSHandlerPostgreSQL extends DBMSHandlerBase
@Override
public DBCommandPostgres createCommand(boolean autoPrepareStmt)
{ // create command object
- return new DBCommandPostgres(autoPrepareStmt);
+ return new DBCommandPostgres(this, autoPrepareStmt);
}
/**
diff --git
a/empire-db/src/main/java/org/apache/empire/dbms/sqlite/DBMSHandlerSQLite.java
b/empire-db/src/main/java/org/apache/empire/dbms/sqlite/DBMSHandlerSQLite.java
index c2de819e..b6ff2c00 100644
---
a/empire-db/src/main/java/org/apache/empire/dbms/sqlite/DBMSHandlerSQLite.java
+++
b/empire-db/src/main/java/org/apache/empire/dbms/sqlite/DBMSHandlerSQLite.java
@@ -73,9 +73,9 @@ public class DBMSHandlerSQLite extends DBMSHandlerBase
* the database
* @see org.apache.empire.db.DBCommand
*/
- public DBCommandSQLite(boolean autoPrepareStmt)
+ public DBCommandSQLite(DBMSHandlerSQLite dmbs, boolean autoPrepareStmt)
{
- super(autoPrepareStmt);
+ super(dmbs, autoPrepareStmt);
}
@Override
@@ -271,7 +271,7 @@ public class DBMSHandlerSQLite extends DBMSHandlerBase
public DBCommand createCommand(boolean autoPrepareStmt)
{
// create command object
- return new DBCommandSQLite(autoPrepareStmt);
+ return new DBCommandSQLite(this, autoPrepareStmt);
}
/**
diff --git
a/empire-db/src/main/java/org/apache/empire/dbms/sqlserver/DBMSHandlerMSSQL.java
b/empire-db/src/main/java/org/apache/empire/dbms/sqlserver/DBMSHandlerMSSQL.java
index 70f7adab..6d046df6 100644
---
a/empire-db/src/main/java/org/apache/empire/dbms/sqlserver/DBMSHandlerMSSQL.java
+++
b/empire-db/src/main/java/org/apache/empire/dbms/sqlserver/DBMSHandlerMSSQL.java
@@ -66,9 +66,9 @@ public class DBMSHandlerMSSQL extends DBMSHandlerBase
// *Deprecated* private static final long serialVersionUID = 1L;
protected int limit = -1;
- public DBCommandMSSQL(boolean autoPrepareStmt)
+ public DBCommandMSSQL(DBMSHandlerMSSQL dbms, boolean autoPrepareStmt)
{
- super(autoPrepareStmt);
+ super(dbms, autoPrepareStmt);
}
@Override
@@ -311,7 +311,7 @@ public class DBMSHandlerMSSQL extends DBMSHandlerBase
public DBCommand createCommand(boolean autoPrepareStmt)
{
// create command object
- return new DBCommandMSSQL(autoPrepareStmt);
+ return new DBCommandMSSQL(this, autoPrepareStmt);
}
/**