private boolean createsRangeWith(OBinaryCondition left, OBooleanExpression next) { if (!(next instanceof OBinaryCondition)) { return false; } OBinaryCondition right = (OBinaryCondition) next; if (!left.getLeft().equals(right.getLeft())) { return false; } OBinaryCompareOperator leftOperator = left.getOperator(); OBinaryCompareOperator rightOperator = right.getOperator(); if (leftOperator instanceof OGeOperator || leftOperator instanceof OGtOperator) { return rightOperator instanceof OLeOperator || rightOperator instanceof OLtOperator; } if (leftOperator instanceof OLeOperator || leftOperator instanceof OLtOperator) { return rightOperator instanceof OGeOperator || rightOperator instanceof OGtOperator; } return false; }
if (item instanceof OBinaryCondition) { if (((OBinaryCondition) item).getOperator() instanceof OEqualsCompareOperator) { conditionItems.add(((OBinaryCondition) item).getLeft().toString()); } else if (i != conditions.getSubBlocks().size() - 1) { return false;
private void processBinaryCondition() { OIndexDefinition definition = index.getDefinition(); OBinaryCompareOperator operator = ((OBinaryCondition) condition).getOperator(); OExpression left = ((OBinaryCondition) condition).getLeft(); if (!left.toString().equalsIgnoreCase("key")) { throw new OCommandExecutionException("search for index for " + condition + " is not supported yet"); } Object rightValue = ((OBinaryCondition) condition).getRight().execute((OResult) null, ctx); cursor = createCursor(operator, definition, rightValue, ctx); }
private void processBinaryCondition() { OIndexDefinition definition = index.getDefinition(); OBinaryCompareOperator operator = ((OBinaryCondition) condition).getOperator(); OExpression left = ((OBinaryCondition) condition).getLeft(); if (!left.toString().equalsIgnoreCase("key")) { throw new OCommandExecutionException("search for index for " + condition + " is not supported yet"); } Object rightValue = ((OBinaryCondition) condition).getRight().execute((OResult) null, ctx); cursor = createCursor(operator, definition, rightValue, ctx); if (cursor != null) { fetchNextEntry(); } }
private boolean isRidRange(OBooleanExpression booleanExpression, OCommandContext ctx) { if (booleanExpression instanceof OBinaryCondition) { OBinaryCondition cond = ((OBinaryCondition) booleanExpression); OBinaryCompareOperator operator = cond.getOperator(); if (isRangeOperator(operator) && cond.getLeft().toString().equalsIgnoreCase("@rid")) { Object obj; if (cond.getRight().getRid() != null) { obj = cond.getRight().getRid().toRecordId((OResult) null, ctx); } else { obj = cond.getRight().execute((OResult) null, ctx); } return obj instanceof OIdentifiable; } } return false; }
OBooleanExpression singleExp = blockIterator.next(); if (singleExp instanceof OBinaryCondition) { OExpression left = ((OBinaryCondition) singleExp).getLeft(); if (left.isBaseIdentifier()) { String fieldName = left.getDefaultAlias().getStringValue();