REPO-484: [REST API] 400 error for unsupported NOT operator in the 'where' predicate.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/BRANCHES/DEV/5.2.N/root@130610 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Ancuta Morarasu
2016-09-13 15:41:43 +00:00
parent 1b4fe8ad9e
commit e586f9f210
5 changed files with 85 additions and 77 deletions

View File

@@ -27,7 +27,6 @@ package org.alfresco.rest.framework.resource.parameters.where;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
@@ -67,7 +66,7 @@ public abstract class QueryHelper
/**
* One of EQUALS LESSTHAN GREATERTHAN LESSTHANOREQUALS GREATERTHANOREQUALS;
*/
void comparison(int type, String propertyName, String propertyValue);
void comparison(int type, String propertyName, String propertyValue, boolean negated);
/**
* Called any time an IN clause is encountered.
@@ -110,7 +109,7 @@ public abstract class QueryHelper
@Override
public void between(String propertyName, String firstValue, String secondValue, boolean negated) { throw UNSUPPORTED;}
@Override
public void comparison(int type, String propertyName, String propertyValue) { throw UNSUPPORTED;}
public void comparison(int type, String propertyName, String propertyValue, boolean negated) { throw UNSUPPORTED;}
@Override
public void in(String propertyName, boolean negated, String... propertyValues) { throw UNSUPPORTED;}
@Override
@@ -191,7 +190,7 @@ public abstract class QueryHelper
if (WhereClauseParser.PROPERTYNAME == tree.getChild(0).getType() &&
WhereClauseParser.PROPERTYVALUE == tree.getChild(1).getType())
{
callback.comparison(tree.getType(), tree.getChild(0).getText(), stripQuotes(tree.getChild(1).getText()));
callback.comparison(tree.getType(), tree.getChild(0).getText(), stripQuotes(tree.getChild(1).getText()), negated);
return;
}
break;