From 126258f2c4ffa42826a307c7c20557e0e8d79b92 Mon Sep 17 00:00:00 2001 From: Ruben Dijkstra Date: Fri, 20 Mar 2015 16:08:20 +0100 Subject: [PATCH] Change $or to $nor in serialization of Ops.NOT in MongodbSerializer --- .../main/java/com/querydsl/mongodb/MongodbSerializer.java | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/querydsl-mongodb/src/main/java/com/querydsl/mongodb/MongodbSerializer.java b/querydsl-mongodb/src/main/java/com/querydsl/mongodb/MongodbSerializer.java index 09a84acf1..c7eb77732 100644 --- a/querydsl-mongodb/src/main/java/com/querydsl/mongodb/MongodbSerializer.java +++ b/querydsl-mongodb/src/main/java/com/querydsl/mongodb/MongodbSerializer.java @@ -127,11 +127,9 @@ public abstract class MongodbSerializer implements Visitor { if (subOp == Ops.IN) { return visit(OperationImpl.create(Boolean.class, Ops.NOT_IN, subOperation.getArg(0), subOperation.getArg(1)), context); - } else if (subOp == Ops.COL_IS_EMPTY) { - DBObject visit = (DBObject)visit(OperationImpl.create(Boolean.class, Ops.COL_IS_EMPTY, subOperation.getArg(0)), context); - Object existingOperator = visit.removeField("$or"); - visit.put("$nor", existingOperator); - return visit; + } else if (key.equals("$or")) { + return asDBObject("$nor", arg.get(key)); + } else if (subOp != Ops.EQ && subOp != Ops.STRING_IS_EMPTY) { return asDBObject(key, asDBObject("$not", arg.get(key))); } else {