diff --git a/CHANGELOG.adoc b/CHANGELOG.adoc
index 77a9a944c..6236ba35b 100644
--- a/CHANGELOG.adoc
+++ b/CHANGELOG.adoc
@@ -13,6 +13,10 @@ and this project adheres to https://semver.org/spec/v2.0.0.html[Semantic Version
- Update API using Apache Tinkerpop
- Update package name of Graph to Tinkerpop
+== Fixed
+
+- MongoDB conversions applied also to other databases
+
== [1.1.3] - 2024-10-24
=== Added
diff --git a/jnosql-arangodb/pom.xml b/jnosql-arangodb/pom.xml
index 56533505d..d5a50da43 100644
--- a/jnosql-arangodb/pom.xml
+++ b/jnosql-arangodb/pom.xml
@@ -28,7 +28,7 @@
The Eclipse JNoSQL layer to ArangoDB
- 7.13.0
+ 7.15.0
diff --git a/jnosql-arangodb/src/main/java/org/eclipse/jnosql/databases/arangodb/communication/QueryAQLConverter.java b/jnosql-arangodb/src/main/java/org/eclipse/jnosql/databases/arangodb/communication/QueryAQLConverter.java
index f1ea0e3b7..834b609a7 100644
--- a/jnosql-arangodb/src/main/java/org/eclipse/jnosql/databases/arangodb/communication/QueryAQLConverter.java
+++ b/jnosql-arangodb/src/main/java/org/eclipse/jnosql/databases/arangodb/communication/QueryAQLConverter.java
@@ -130,6 +130,7 @@ private static void definesCondition(CriteriaCondition condition,
char entity, int counter) {
Element document = condition.element();
+ int localCounter = counter;
switch (condition.condition()) {
case IN:
appendCondition(aql, params, entity, document, IN);
@@ -157,27 +158,26 @@ private static void definesCondition(CriteriaCondition condition,
for (CriteriaCondition dc : document.get(new TypeReference>() {
})) {
- if (isFirstCondition(aql, counter)) {
+ if (isFirstCondition(aql, localCounter)) {
aql.append(AND);
}
- definesCondition(dc, aql, params, entity, ++counter);
+ definesCondition(dc, aql, params, entity, ++localCounter);
}
return;
case OR:
for (CriteriaCondition dc : document.get(new TypeReference>() {
})) {
- if (isFirstCondition(aql, counter)) {
+ if (isFirstCondition(aql, localCounter)) {
aql.append(OR);
}
- definesCondition(dc, aql, params, entity, ++counter);
+ definesCondition(dc, aql, params, entity, ++localCounter);
}
return;
case NOT:
CriteriaCondition documentCondition = document.get(CriteriaCondition.class);
- aql.append(NOT);
- aql.append(START_EXPRESSION);
- definesCondition(documentCondition, aql, params, entity, ++counter);
+ aql.append(NOT).append(START_EXPRESSION);
+ definesCondition(documentCondition, aql, params, entity, ++localCounter);
aql.append(END_EXPRESSION);
return;
default:
diff --git a/jnosql-mongodb/src/main/java/org/eclipse/jnosql/databases/mongodb/communication/DocumentQueryConversor.java b/jnosql-mongodb/src/main/java/org/eclipse/jnosql/databases/mongodb/communication/DocumentQueryConversor.java
index 031e1760e..e64cbf787 100644
--- a/jnosql-mongodb/src/main/java/org/eclipse/jnosql/databases/mongodb/communication/DocumentQueryConversor.java
+++ b/jnosql-mongodb/src/main/java/org/eclipse/jnosql/databases/mongodb/communication/DocumentQueryConversor.java
@@ -34,7 +34,7 @@ private DocumentQueryConversor() {
public static Bson convert(CriteriaCondition condition) {
Element document = condition.element();
- Object value = ValueUtil.convert(document.value());
+ Object value = ValueUtil.convert(document.value(), MongoDBValueWriteDecorator.MONGO_DB_VALUE_WRITER);
return switch (condition.condition()) {
case EQUALS -> Filters.eq(document.name(), value);
case GREATER_THAN -> Filters.gt(document.name(), value);
@@ -42,7 +42,7 @@ public static Bson convert(CriteriaCondition condition) {
case LESSER_THAN -> Filters.lt(document.name(), value);
case LESSER_EQUALS_THAN -> Filters.lte(document.name(), value);
case IN -> {
- List