interpreter.setMin(columnName, 0D);
}
}
else if (interpreter.getClause() != null)
{
throw new QueryHandlerException("Condition:" + condition
+ " not supported for REDIS with nested AND/OR Clause.");
}
else
{
throw new QueryHandlerException("Condition:" + condition + " not supported for REDIS");
}
}
else
{
String opr = clause.toString().trim();
if (interpreter.getClause() == null)
{
if (opr.equalsIgnoreCase("AND"))
{
interpreter.setClause(Clause.INTERSECT);
}
else if (opr.equalsIgnoreCase("OR"))
{
interpreter.setClause(Clause.UNION);
}
else
{
throw new QueryHandlerException("Invalid intra clause:" + opr + " not supported for REDIS");
}
}
else if (RedisQueryInterpreter.getMappedClause(opr) == null)
{
throw new QueryHandlerException("Invalid intra clause:" + opr + " not supported for REDIS");
}
else if (interpreter.getClause() != null
&& !interpreter.getClause().equals(RedisQueryInterpreter.getMappedClause(opr)))
{
throw new QueryHandlerException("Multiple combination of AND/OR clause not supported for REDIS");
}
// it is a case of "AND", "OR" clause
}
}