17
17
18
18
import java .util .Collection ;
19
19
import java .util .List ;
20
- import java .util .Locale ;
21
20
import java .util .regex .Pattern ;
22
21
23
22
import org .springframework .data .couchbase .core .query .QueryCriteria ;
48
47
*/
49
48
public abstract class CouchbaseDocumentSerializer implements Visitor <Object , Void > {
50
49
51
- boolean workInProgress = true ;
52
-
53
50
public Object handle (Expression <?> expression ) {
54
51
return expression .accept (this , null );
55
52
}
@@ -167,25 +164,22 @@ public Object visit(Operation<?> expr, Void context) {
167
164
return QueryCriteria .where (asDBKey (expr , 0 )).startingWith (asDBValue (expr , 1 ));
168
165
} else if (op == Ops .STARTS_WITH_IC ) {
169
166
// return asDocument(asDBKey(expr, 0), new CBRegularExpression("^" + regexValue(expr, 1), "i"));
170
- return QueryCriteria .where (asDBKey (expr , 0 )).upper ()
171
- .startingWith (asDBValue (expr , 1 ).toString ().toUpperCase (Locale .ROOT ));
167
+ return QueryCriteria .where (asDBKey (expr , 0 )).startingWith (true , asDBValue (expr , 1 ).toString ());
172
168
} else if (op == Ops .ENDS_WITH ) {
173
169
// return asDocument(asDBKey(expr, 0), new CBRegularExpression(regexValue(expr, 1) + "$"));
174
170
return QueryCriteria .where (asDBKey (expr , 0 )).endingWith (asDBValue (expr , 1 ));
175
171
} else if (op == Ops .ENDS_WITH_IC ) {
176
172
// return asDocument(asDBKey(expr, 0), new CBRegularExpression(regexValue(expr, 1) + "$", "i"));
177
- return QueryCriteria .where (asDBKey (expr , 0 )).upper ()
178
- .endingWith (asDBValue (expr , 1 ).toString ().toUpperCase (Locale .ROOT ));
173
+ return QueryCriteria .where (asDBKey (expr , 0 )).endingWith (true , asDBValue (expr , 1 ).toString ());
179
174
} else if (op == Ops .EQ_IGNORE_CASE ) {
180
175
// return asDocument(asDBKey(expr, 0), new CBRegularExpression("^" + regexValue(expr, 1) + "$", "i"));
181
- return QueryCriteria .where (asDBKey (expr , 0 )).upper (). eq (asDBValue (expr , 1 ).toString (). toUpperCase ( Locale . ROOT ));
176
+ return QueryCriteria .where (asDBKey (expr , 0 )).eq (true , asDBValue (expr , 1 ).toString ());
182
177
} else if (op == Ops .STRING_CONTAINS ) {
183
178
// return asDocument(asDBKey(expr, 0), new CBRegularExpression(".*" + regexValue(expr, 1) + ".*"));
184
179
return QueryCriteria .where (asDBKey (expr , 0 )).containing (asDBValue (expr , 1 ));
185
180
} else if (op == Ops .STRING_CONTAINS_IC ) {
186
181
// return asDocument(asDBKey(expr, 0), new CBRegularExpression(".*" + regexValue(expr, 1) + ".*", "i"));
187
- return QueryCriteria .where (asDBKey (expr , 0 )).upper ()
188
- .containing (asDBValue (expr , 1 ).toString ().toUpperCase (Locale .ROOT ));
182
+ return QueryCriteria .where (asDBKey (expr , 0 )).containing (true , asDBValue (expr , 1 ).toString ());
189
183
/*
190
184
} else if (op == Ops.MATCHES) {
191
185
//return asDocument(asDBKey(expr, 0), new CBRegularExpression(asDBValue(expr, 1).toString()));
@@ -201,7 +195,7 @@ public Object visit(Operation<?> expr, Void context) {
201
195
} else if (op == Ops .LIKE_IC ) {
202
196
// String regex = ExpressionUtils.likeToRegex((Expression) expr.getArg(1)).toString();
203
197
// return asDocument(asDBKey(expr, 0), new CBRegularExpression(regex, "i"));
204
- return QueryCriteria .where (asDBKey (expr , 0 )).upper (). like (asDBValue (expr , 1 ).toString (). toUpperCase ( Locale . ROOT ));
198
+ return QueryCriteria .where (asDBKey (expr , 0 )).like (true , asDBValue (expr , 1 ).toString ());
205
199
} else if (op == Ops .BETWEEN ) {
206
200
// Document value = new Document("$gte", this.asDBValue(expr, 1));
207
201
// value.append("$lte", this.asDBValue(expr, 2));
0 commit comments