diff --git a/pom.xml b/pom.xml
index 682b56f4..bf2d4bbc 100644
--- a/pom.xml
+++ b/pom.xml
@@ -6,7 +6,7 @@
com.kingsrook.qqq
qqq-backend-module-rdbms
- 1.0-SNAPSHOT
+ 0.0-SNAPSHOT
diff --git a/src/main/java/com/kingsrook/qqq/backend/module/rdbms/actions/RDBMSInsertAction.java b/src/main/java/com/kingsrook/qqq/backend/module/rdbms/actions/RDBMSInsertAction.java
index 63f6727d..087fe7cf 100644
--- a/src/main/java/com/kingsrook/qqq/backend/module/rdbms/actions/RDBMSInsertAction.java
+++ b/src/main/java/com/kingsrook/qqq/backend/module/rdbms/actions/RDBMSInsertAction.java
@@ -1,7 +1,6 @@
package com.kingsrook.qqq.backend.module.rdbms.actions;
-import java.io.Serializable;
import java.sql.Connection;
import java.util.ArrayList;
import java.util.List;
@@ -9,8 +8,6 @@ import java.util.stream.Collectors;
import com.kingsrook.qqq.backend.core.exceptions.QException;
import com.kingsrook.qqq.backend.core.model.actions.InsertRequest;
import com.kingsrook.qqq.backend.core.model.actions.InsertResult;
-import com.kingsrook.qqq.backend.core.model.actions.QFilterCriteria;
-import com.kingsrook.qqq.backend.core.model.actions.QFilterOrderBy;
import com.kingsrook.qqq.backend.core.model.data.QRecord;
import com.kingsrook.qqq.backend.core.model.data.QRecordWithStatus;
import com.kingsrook.qqq.backend.core.model.metadata.QFieldMetaData;
@@ -37,7 +34,7 @@ public class RDBMSInsertAction extends AbstractRDBMSAction implements InsertInte
InsertResult rs = new InsertResult();
QTableMetaData table = insertRequest.getTable();
- List insertableFields = table.getFields().stream()
+ List insertableFields = table.getFields().values().stream()
.filter(field -> !field.getName().equals("id")) // todo - intent here is to avoid non-insertable fields.
.toList();
@@ -98,71 +95,4 @@ public class RDBMSInsertAction extends AbstractRDBMSAction implements InsertInte
}
}
-
-
- /*******************************************************************************
- **
- *******************************************************************************/
- private String makeWhereClause(QTableMetaData table, List criteria, List params) throws IllegalArgumentException
- {
- List clauses = new ArrayList<>();
- for(QFilterCriteria criterion : criteria)
- {
- QFieldMetaData field = table.getField(criterion.getFieldName());
- String column = getColumnName(field);
- String clause = column;
- Integer expectedNoOfParams = null;
- switch(criterion.getOperator())
- {
- case EQUALS:
- {
- clause += " = ? ";
- expectedNoOfParams = 1;
- break;
- }
- case NOT_EQUALS:
- {
- clause += " != ? ";
- expectedNoOfParams = 1;
- break;
- }
- case IN:
- {
- clause += " IN (" + criterion.getValues().stream().map(x -> "?").collect(Collectors.joining(",")) + ") ";
- break;
- }
- default:
- {
- throw new IllegalArgumentException("Unexpected operator: " + criterion.getOperator());
- }
- }
- clauses.add(clause);
- if(expectedNoOfParams != null && criterion.getValues().size() != expectedNoOfParams)
- {
- throw new IllegalArgumentException("Incorrect number of values given for criteria [" + field.getName() + "]");
- }
- params.addAll(criterion.getValues());
- }
-
- return (String.join(" AND ", clauses));
- }
-
-
-
- /*******************************************************************************
- **
- *******************************************************************************/
- private String makeOrderByClause(QTableMetaData table, List orderBys)
- {
- List clauses = new ArrayList<>();
-
- for(QFilterOrderBy orderBy : orderBys)
- {
- QFieldMetaData field = table.getField(orderBy.getFieldName());
- String column = getColumnName(field);
- clauses.add(column + " " + (orderBy.getIsAscending() ? "ASC" : "DESC"));
- }
- return (String.join(", ", clauses));
- }
-
}
diff --git a/src/main/java/com/kingsrook/qqq/backend/module/rdbms/actions/RDBMSQueryAction.java b/src/main/java/com/kingsrook/qqq/backend/module/rdbms/actions/RDBMSQueryAction.java
index 5bd14abd..a60ac7ff 100644
--- a/src/main/java/com/kingsrook/qqq/backend/module/rdbms/actions/RDBMSQueryAction.java
+++ b/src/main/java/com/kingsrook/qqq/backend/module/rdbms/actions/RDBMSQueryAction.java
@@ -41,7 +41,8 @@ public class RDBMSQueryAction extends AbstractRDBMSAction implements QueryInterf
QTableMetaData table = queryRequest.getTable();
String tableName = table.getName();
- String columns = table.getFields().stream()
+ List fieldList = new ArrayList<>(table.getFields().values());
+ String columns = fieldList.stream()
.map(this::getColumnName)
.collect(Collectors.joining(", "));
@@ -93,7 +94,7 @@ public class RDBMSQueryAction extends AbstractRDBMSAction implements QueryInterf
for(int i = 1; i <= metaData.getColumnCount(); i++)
{
- QFieldMetaData qFieldMetaData = table.getFields().get(i - 1);
+ QFieldMetaData qFieldMetaData = fieldList.get(i - 1);
String value = QueryManager.getString(resultSet, i); // todo - types!
values.put(qFieldMetaData.getName(), value);
if(qFieldMetaData.getName().equals(table.getPrimaryKeyField()))
diff --git a/src/test/java/com/kingsrook/qqq/backend/module/rdbms/actions/RDBMSActionTest.java b/src/test/java/com/kingsrook/qqq/backend/module/rdbms/actions/RDBMSActionTest.java
index 90d64730..b6b75d73 100644
--- a/src/test/java/com/kingsrook/qqq/backend/module/rdbms/actions/RDBMSActionTest.java
+++ b/src/test/java/com/kingsrook/qqq/backend/module/rdbms/actions/RDBMSActionTest.java
@@ -4,7 +4,7 @@ package com.kingsrook.qqq.backend.module.rdbms.actions;
import java.io.InputStream;
import java.sql.Connection;
import java.util.List;
-import com.kingsrook.qqq.backend.core.model.QInstance;
+import com.kingsrook.qqq.backend.core.model.metadata.QInstance;
import com.kingsrook.qqq.backend.core.model.metadata.QBackendMetaData;
import com.kingsrook.qqq.backend.core.model.metadata.QFieldMetaData;
import com.kingsrook.qqq.backend.core.model.metadata.QFieldType;
@@ -59,6 +59,7 @@ public class RDBMSActionTest
{
return new QTableMetaData()
.withName("person")
+ .withLabel("Person")
.withBackendName(defineBackend().getName())
.withPrimaryKeyField("id")
.withField(new QFieldMetaData("id", QFieldType.INTEGER))