@Override protected QueryExpression itrValueComparisonExpression(ValueComparisonExpression q, Path context) { fieldInfo.add(resolveField(q.getField(), context, q, true)); return q; }
private static boolean isFieldQueried(Path field, ValueComparisonExpression q, Path context) { LOGGER.debug("Checking if field {} is queried by value comparison {}", field, q); return isFieldQueried(field, q.getField(), context); }
@Override protected QueryExpression itrValueComparisonExpression(ValueComparisonExpression q, Path context) { fieldInfo.add(resolveField(q.getField(), context, q, true)); return q; }
private static boolean isFieldQueried(Path field, ValueComparisonExpression q, Path context) { LOGGER.debug("Checking if field {} is queried by value comparison {}", field, q); return isFieldQueried(field, q.getField(), context); }
@Override protected KeySpec processValueComparisonExpression(ValueComparisonExpression q) { return simpleKeySpec(findFieldInfo(q.getField(),q)); }
@Override protected KeySpec processValueComparisonExpression(ValueComparisonExpression q) { return simpleKeySpec(findFieldInfo(q.getField(),q)); }
@Override protected QueryExpression itrValueComparisonExpression(ValueComparisonExpression q, Path context) { Path p = map(applyContext(context, q.getField())); if (p != null) { return new ValueComparisonExpression(removeContext(context, p, q.getField()), q.getOp(), q.getRvalue()); } else { return q; } }
@Override protected QueryExpression itrValueComparisonExpression(ValueComparisonExpression q, Path context) { Path p = map(applyContext(context, q.getField())); if (p != null) { return new ValueComparisonExpression(removeContext(context, p, q.getField()), q.getOp(), q.getRvalue()); } else { return q; } }
/** * Constructs evaluator for {field op value} style comparison * * @param expr The expression * @param md Entity metadata */ public ValueComparisonEvaluator(ValueComparisonExpression expr, FieldTreeNode context) { this.field = expr.getField(); fieldMd = context.resolve(field); if (fieldMd == null) { throw new EvaluationError(expr, CrudConstants.ERR_FIELD_NOT_THERE + field); } operator = expr.getOp(); rvalue = expr.getRvalue(); LOGGER.debug("ctor {} {}", field, operator); }
/** * Constructs evaluator for {field op value} style comparison * * @param expr The expression * @param md Entity metadata */ public ValueComparisonEvaluator(ValueComparisonExpression expr, FieldTreeNode context) { this.field = expr.getField(); fieldMd = context.resolve(field); if (fieldMd == null) { throw new EvaluationError(expr, CrudConstants.ERR_FIELD_NOT_THERE + field); } operator = expr.getOp(); rvalue = expr.getRvalue(); LOGGER.debug("ctor {} {}", field, operator); }
/** * Constructs evaluator for {field op value} style comparison * * @param expr The expression * @param md Entity metadata */ public ValueComparisonEvaluator(ValueComparisonExpression expr, FieldTreeNode context) { this.field = expr.getField(); fieldMd = context.resolve(field); if (fieldMd == null) { throw new EvaluationError(expr, CrudConstants.ERR_FIELD_NOT_THERE + field); } operator = expr.getOp(); rvalue = expr.getRvalue(); LOGGER.debug("ctor {} {}", field, operator); }
@Override protected QueryExpression itrValueComparisonExpression(ValueComparisonExpression q, Path context) { return new ValueComparisonExpression(toRelative(q.getField(), context), q.getOp(), q.getRvalue()); }
@Override protected QueryExpression itrValueComparisonExpression(ValueComparisonExpression q, Path context) { return new ValueComparisonExpression(toRelative(q.getField(), context), q.getOp(), q.getRvalue()); }
@Override protected LookupSpec processValueComparisonExpression(ValueComparisonExpression q) { switch(q.getOp()) { case _eq: return new ValueLookupSpec(simpleKeySpec(findFieldInfo(q.getField(),q)),q.getRvalue().getValue()); case _lte: case _lt: return new RangeLookupSpec(simpleKeySpec(findFieldInfo(q.getField(),q)),null,q.getRvalue().getValue()); case _gte: case _gt: return new RangeLookupSpec(simpleKeySpec(findFieldInfo(q.getField(),q)),q.getRvalue().getValue(),null); } return null; }
@Override protected LookupSpec processValueComparisonExpression(ValueComparisonExpression q) { switch(q.getOp()) { case _eq: return new ValueLookupSpec(simpleKeySpec(findFieldInfo(q.getField(),q)),q.getRvalue().getValue()); case _lte: case _lt: return new RangeLookupSpec(simpleKeySpec(findFieldInfo(q.getField(),q)),null,q.getRvalue().getValue()); case _gte: case _gt: return new RangeLookupSpec(simpleKeySpec(findFieldInfo(q.getField(),q)),q.getRvalue().getValue(),null); } return null; }
@Override protected QueryExpression itrValueComparisonExpression(ValueComparisonExpression q, Path context) { QueryFieldInfo qfi = findFieldInfo(q.getField(), q); if (qfi.getFieldEntity() != currentEntity) { return new TruePH(); } else if (qfi.getFieldNameInClause().equals(qfi.getEntityRelativeFieldName()) && nestedFieldPrefix.isEmpty()) { return q; } else { return new ValueComparisonExpression(addPrefix(qfi.getEntityRelativeFieldName()), q.getOp(), q.getRvalue()); } }
@Override protected QueryExpression itrValueComparisonExpression(ValueComparisonExpression q, Path context) { QueryFieldInfo qfi = findFieldInfo(q.getField(), q); if (qfi.getFieldEntity() != currentEntity) { return new TruePH(); } else if (qfi.getFieldNameInClause().equals(qfi.getEntityRelativeFieldName()) && nestedFieldPrefix.isEmpty()) { return q; } else { return new ValueComparisonExpression(addPrefix(qfi.getEntityRelativeFieldName()), q.getOp(), q.getRvalue()); } }