@Override public RangeTerminationExcludable below(Object below) { rangeContext.setTo( below ); return new ConnectedMultiFieldsRangeQueryBuilder( rangeContext, queryCustomizer, fieldContexts, queryContext ); }
private Query createQuery(FieldContext fieldContext, ConversionContext conversionContext) { final Query perFieldQuery; final String fieldName = fieldContext.getField(); final DocumentBuilderIndexedEntity documentBuilder = queryContext.getDocumentBuilder(); if ( Helper.requiresNumericQuery( documentBuilder, fieldContext, rangeContext.getFrom(), rangeContext.getTo() ) ) { perFieldQuery = createNumericRangeQuery( fieldName, rangeContext ); } else { perFieldQuery = createKeywordRangeQuery( fieldName, rangeContext, queryContext, conversionContext, fieldContext ); } return fieldContext.getFieldCustomizer().setWrappedQuery( perFieldQuery ).createQuery(); }
@Override public Query createQuery() { final int size = fieldContexts.size(); final ConversionContext conversionContext = new ContextualExceptionBridgeHelper(); if ( size == 1 ) { return queryCustomizer.setWrappedQuery( createQuery( fieldContexts.get( 0 ), conversionContext ) ).createQuery(); } else { BooleanQuery.Builder aggregatedFieldsQueryBuilder = new BooleanQuery.Builder(); for ( FieldContext fieldContext : fieldContexts ) { aggregatedFieldsQueryBuilder.add( createQuery( fieldContext, conversionContext ), BooleanClause.Occur.SHOULD ); } return queryCustomizer.setWrappedQuery( aggregatedFieldsQueryBuilder.build() ).createQuery(); } }
private Query createQuery(FieldContext fieldContext, ConversionContext conversionContext) { final Query perFieldQuery; final String fieldName = fieldContext.getField(); final DocumentBuilderIndexedEntity documentBuilder = queryContext.getDocumentBuilder(); if ( Helper.requiresNumericQuery( documentBuilder, fieldContext, rangeContext.getFrom(), rangeContext.getTo() ) ) { perFieldQuery = createNumericRangeQuery( fieldName, rangeContext ); } else { perFieldQuery = createKeywordRangeQuery( fieldName, rangeContext, queryContext, conversionContext, fieldContext ); } return fieldContext.getFieldCustomizer().setWrappedQuery( perFieldQuery ).createQuery(); }
@Override public Query createQuery() { final int size = fieldContexts.size(); final ConversionContext conversionContext = new ContextualExceptionBridgeHelper(); if ( size == 1 ) { return queryCustomizer.setWrappedQuery( createQuery( fieldContexts.get( 0 ), conversionContext ) ).createQuery(); } else { BooleanQuery.Builder aggregatedFieldsQueryBuilder = new BooleanQuery.Builder(); for ( FieldContext fieldContext : fieldContexts ) { aggregatedFieldsQueryBuilder.add( createQuery( fieldContext, conversionContext ), BooleanClause.Occur.SHOULD ); } return queryCustomizer.setWrappedQuery( aggregatedFieldsQueryBuilder.build() ).createQuery(); } }
@Override public RangeTerminationExcludable to(T to) { mother.rangeContext.setTo( to ); return new ConnectedMultiFieldsRangeQueryBuilder( mother.rangeContext, mother.queryCustomizer, mother.fieldContexts, mother.queryContext ); }
@Override public RangeTerminationExcludable to(T to) { mother.rangeContext.setTo( to ); return new ConnectedMultiFieldsRangeQueryBuilder( mother.rangeContext, mother.queryCustomizer, mother.fieldContexts, mother.queryContext ); }
@Override public RangeTerminationExcludable below(Object below) { rangeContext.setTo( below ); return new ConnectedMultiFieldsRangeQueryBuilder( rangeContext, queryCustomizer, fieldContexts, queryContext ); }
@Override public RangeTerminationExcludable above(Object above) { rangeContext.setFrom( above ); return new ConnectedMultiFieldsRangeQueryBuilder( rangeContext, queryCustomizer, fieldContexts, queryContext ); }
@Override public RangeTerminationExcludable above(Object above) { rangeContext.setFrom( above ); return new ConnectedMultiFieldsRangeQueryBuilder( rangeContext, queryCustomizer, fieldContexts, queryContext ); }