@Override public DocumentCondition negate() { if (NOT.equals(this.condition)) { return this.document.get(DocumentCondition.class); } else { Document document = Document.of(NOT.getNameField(), this); return new DefaultDocumentCondition(document, NOT); } }
@Override public DocumentCondition and(DocumentCondition condition) { requireNonNull(condition, "Conditions is required"); if (AND.equals(this.condition)) { Document column = getConditions(condition, AND); return new DefaultDocumentCondition(column, AND); } return DefaultDocumentCondition.and(this, condition); }
static DefaultDocumentCondition and(DocumentCondition... conditions) { requireNonNull(conditions, "condition is required"); Document document = Document.of(AND.getNameField(), asList(conditions)); return DefaultDocumentCondition.of(document, AND); }
@Override public DocumentCondition or(DocumentCondition condition) { requireNonNull(condition, "Condition is required"); if (OR.equals(this.condition)) { Document document = getConditions(condition, OR); return new DefaultDocumentCondition(document, OR); } return DefaultDocumentCondition.or(this, condition); }
private Document getConditions(DocumentCondition columnCondition, Condition condition) { List<DocumentCondition> conditions = new ArrayList<>(document.get(new TypeReference<List<DocumentCondition>>() { })); conditions.add(columnCondition); return Document.of(condition.getNameField(), conditions); }
@Override public ColumnCondition negate() { if (NOT.equals(this.condition)) { return this.column.get(ColumnCondition.class); } else { Column column = Column.of(NOT.getNameField(), this); return new DefaultColumnCondition(column, NOT); } }
@Override public ColumnCondition and(ColumnCondition condition) { requireNonNull(condition, "Conditions is required"); if (AND.equals(this.condition)) { Column column = getConditions(condition, AND); return new DefaultColumnCondition(column, AND); } return DefaultColumnCondition.and(this, condition); }
static DefaultDocumentCondition or(DocumentCondition... conditions) { requireNonNull(conditions, "condition is required"); Document document = Document.of(OR.getNameField(), asList(conditions)); return DefaultDocumentCondition.of(document, OR); }
@Override public ColumnCondition or(ColumnCondition condition) { requireNonNull(condition, "Condition is required"); if (OR.equals(this.condition)) { Column column = getConditions(condition, OR); return new DefaultColumnCondition(column, OR); } return DefaultColumnCondition.or(this, condition); }
static DefaultColumnCondition or(ColumnCondition... conditions) { requireNonNull(conditions, "condition is required"); Column column = Column.of(OR.getNameField(), asList(conditions)); return DefaultColumnCondition.of(column, OR); }
if (IN.equals(condition.getCondition())) { inKeys(keys, documentCollection, document); } else if (EQUALS.equals(condition.getCondition())) { eqKeys(keys, documentCollection, document); if(Condition.BETWEEN.equals(condition.getCondition()) || Condition.IN.equals(condition.getCondition())) { params.put(document.getName(), ValueUtil.convertToList(document.getValue())); } else {
private Column getConditions(ColumnCondition columnCondition, Condition condition) { List<ColumnCondition> conditions = new ArrayList<>(column.get(new TypeReference<List<ColumnCondition>>() { })); conditions.add(columnCondition); return Column.of(condition.getNameField(), conditions); }
static DefaultColumnCondition and(ColumnCondition... conditions) { requireNonNull(conditions, "condition is required"); Column column = Column.of(AND.getNameField(), asList(conditions)); return DefaultColumnCondition.of(column, AND); }