1717
1818import java .util .Collection ;
1919import java .util .List ;
20- import java .util .Locale ;
2120import java .util .regex .Pattern ;
2221
2322import org .springframework .data .couchbase .core .query .QueryCriteria ;
4847 */
4948public abstract class CouchbaseDocumentSerializer implements Visitor <Object , Void > {
5049
51- boolean workInProgress = true ;
52-
5350 public Object handle (Expression <?> expression ) {
5451 return expression .accept (this , null );
5552 }
@@ -167,25 +164,22 @@ public Object visit(Operation<?> expr, Void context) {
167164 return QueryCriteria .where (asDBKey (expr , 0 )).startingWith (asDBValue (expr , 1 ));
168165 } else if (op == Ops .STARTS_WITH_IC ) {
169166 // 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 ());
172168 } else if (op == Ops .ENDS_WITH ) {
173169 // return asDocument(asDBKey(expr, 0), new CBRegularExpression(regexValue(expr, 1) + "$"));
174170 return QueryCriteria .where (asDBKey (expr , 0 )).endingWith (asDBValue (expr , 1 ));
175171 } else if (op == Ops .ENDS_WITH_IC ) {
176172 // 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 ());
179174 } else if (op == Ops .EQ_IGNORE_CASE ) {
180175 // 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 ());
182177 } else if (op == Ops .STRING_CONTAINS ) {
183178 // return asDocument(asDBKey(expr, 0), new CBRegularExpression(".*" + regexValue(expr, 1) + ".*"));
184179 return QueryCriteria .where (asDBKey (expr , 0 )).containing (asDBValue (expr , 1 ));
185180 } else if (op == Ops .STRING_CONTAINS_IC ) {
186181 // 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 ());
189183 /*
190184 } else if (op == Ops.MATCHES) {
191185 //return asDocument(asDBKey(expr, 0), new CBRegularExpression(asDBValue(expr, 1).toString()));
@@ -201,7 +195,7 @@ public Object visit(Operation<?> expr, Void context) {
201195 } else if (op == Ops .LIKE_IC ) {
202196 // String regex = ExpressionUtils.likeToRegex((Expression) expr.getArg(1)).toString();
203197 // 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 ());
205199 } else if (op == Ops .BETWEEN ) {
206200 // Document value = new Document("$gte", this.asDBValue(expr, 1));
207201 // value.append("$lte", this.asDBValue(expr, 2));
0 commit comments