Skip to content

Commit 6263277

Browse files
committed
JAVA-802: Use $query and $orderby in query document instead of query and orderby
1 parent c4a4d7c commit 6263277

File tree

2 files changed

+42
-42
lines changed

2 files changed

+42
-42
lines changed

src/main/com/mongodb/QueryOpBuilder.java

Lines changed: 30 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -106,36 +106,36 @@ public QueryOpBuilder addReadPreference(DBObject readPref){
106106
* Constructs the query operation DBObject
107107
* @return DBObject representing the query command to be sent to server
108108
*/
109-
public DBObject get(){
110-
DBObject lclQuery = query;
111-
112-
//must always have a query
113-
if(lclQuery == null){
114-
lclQuery = new BasicDBObject();
115-
}
116-
117-
if (hasSpecialQueryFields()) {
118-
DBObject queryop = (specialFields == null ? new BasicDBObject() : specialFields);
119-
120-
addToQueryObject(queryop, "query", lclQuery, true);
121-
addToQueryObject(queryop, "orderby", orderBy, false);
122-
if (hintStr != null)
123-
addToQueryObject(queryop, "$hint", hintStr);
124-
if (hintObj != null)
125-
addToQueryObject(queryop, "$hint", hintObj);
126-
127-
if (explain)
128-
queryop.put("$explain", true);
129-
if (snapshot)
130-
queryop.put("$snapshot", true);
131-
if (readPref != null)
132-
queryop.put(READ_PREFERENCE_META_OPERATOR, readPref);
133-
134-
return queryop;
135-
}
136-
137-
return lclQuery;
138-
}
109+
public DBObject get() {
110+
DBObject lclQuery = query;
111+
112+
//must always have a query
113+
if (lclQuery == null) {
114+
lclQuery = new BasicDBObject();
115+
}
116+
117+
if (hasSpecialQueryFields()) {
118+
DBObject queryop = (specialFields == null ? new BasicDBObject() : specialFields);
119+
120+
addToQueryObject(queryop, "$query", lclQuery, true);
121+
addToQueryObject(queryop, "$orderby", orderBy, false);
122+
if (hintStr != null)
123+
addToQueryObject(queryop, "$hint", hintStr);
124+
if (hintObj != null)
125+
addToQueryObject(queryop, "$hint", hintObj);
126+
127+
if (explain)
128+
queryop.put("$explain", true);
129+
if (snapshot)
130+
queryop.put("$snapshot", true);
131+
if (readPref != null)
132+
queryop.put(READ_PREFERENCE_META_OPERATOR, readPref);
133+
134+
return queryop;
135+
}
136+
137+
return lclQuery;
138+
}
139139

140140
private boolean hasSpecialQueryFields(){
141141

src/test/com/mongodb/QueryOpTest.java

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -30,41 +30,41 @@ public void testQueryAndOthers(){
3030

3131

3232
DBObject queryOp = new QueryOpBuilder().addQuery(query).addOrderBy(orderBy).addHint(hintStr).get();
33-
assertEquals(queryOp.get("query"), query);
34-
assertEquals(queryOp.get("orderby"), orderBy);
33+
assertEquals(queryOp.get("$query"), query);
34+
assertEquals(queryOp.get("$orderby"), orderBy);
3535
assertEquals(queryOp.get("$hint"), hintStr);
3636
assertNull(queryOp.get("$explain"));
3737
assertNull(queryOp.get("$snapshot"));
3838

3939
//orderby should only be there if added
4040
queryOp = new QueryOpBuilder().addQuery(query).addHint(hintStr).get();
41-
assertEquals(queryOp.get("query"), query);
42-
assertNull(queryOp.get("orderby"));
41+
assertEquals(queryOp.get("$query"), query);
42+
assertNull(queryOp.get("$orderby"));
4343

4444
//hintObj takes precedence over hintStr
4545
queryOp = new QueryOpBuilder().addQuery(query).addOrderBy(orderBy).addHint(hintStr).addHint(hintObj).get();
46-
assertEquals(queryOp.get("query"), query);
47-
assertEquals(queryOp.get("orderby"), orderBy);
46+
assertEquals(queryOp.get("$query"), query);
47+
assertEquals(queryOp.get("$orderby"), orderBy);
4848
assertEquals(queryOp.get("$hint"), hintObj);
4949

5050
queryOp = new QueryOpBuilder().addQuery(query).addExplain(true).addSnapshot(true).get();
51-
assertEquals(queryOp.get("query"), query);
52-
assertNull(queryOp.get("orderby"));
51+
assertEquals(queryOp.get("$query"), query);
52+
assertNull(queryOp.get("$orderby"));
5353
assertNull(queryOp.get("$hint"));
5454
assertEquals(queryOp.get("$explain"), true);
5555
assertEquals(queryOp.get("$snapshot"), true);
5656

5757
queryOp = new QueryOpBuilder().addQuery(query).addSpecialFields(new BasicDBObject("flag", "val")).get();
5858
assertEquals(queryOp.get("flag"), "val");
59-
assertEquals(queryOp.get("query"), query);
60-
assertNull(queryOp.get("orderby"));
59+
assertEquals(queryOp.get("$query"), query);
60+
assertNull(queryOp.get("$orderby"));
6161
assertNull(queryOp.get("$hint"));
6262
assertNull(queryOp.get("$explain"));
6363
assertNull(queryOp.get("$snapshot"));
6464

6565
queryOp = new QueryOpBuilder().addQuery(query).addReadPreference(readPref).get();
66-
assertEquals(queryOp.get("query"), query);
67-
assertNull(queryOp.get("orderby"));
66+
assertEquals(queryOp.get("$query"), query);
67+
assertNull(queryOp.get("$orderby"));
6868
assertNull(queryOp.get("$hint"));
6969
assertNull(queryOp.get("$explain"));
7070
assertNull(queryOp.get("$snapshot"));

0 commit comments

Comments
 (0)