@Override public Query createQuery() { return queryCustomizer.setWrappedQuery( createSpatialQuery() ).createQuery(); }
@Override public Query createQuery() { return queryCustomizer.setWrappedQuery( createSpatialQuery() ).createQuery(); }
@Override public Query createQuery() { final int size = fieldContexts.size(); if ( size == 1 ) { return queryCustomizer.setWrappedQuery( createQuery( fieldContexts.get( 0 ) ) ).createQuery(); } else { BooleanQuery.Builder aggregatedFieldsQueryBuilder = new BooleanQuery.Builder(); for ( FieldContext fieldContext : fieldContexts ) { aggregatedFieldsQueryBuilder.add( createQuery( fieldContext ), BooleanClause.Occur.SHOULD ); } BooleanQuery aggregatedFieldsQuery = aggregatedFieldsQueryBuilder.build(); return queryCustomizer.setWrappedQuery( aggregatedFieldsQuery ).createQuery(); } }
@Override public Query createQuery() { final int size = fieldContexts.size(); if ( size == 1 ) { return queryCustomizer.setWrappedQuery( createQuery( fieldContexts.get( 0 ) ) ).createQuery(); } else { BooleanQuery.Builder aggregatedFieldsQueryBuilder = new BooleanQuery.Builder(); for ( FieldContext fieldContext : fieldContexts ) { aggregatedFieldsQueryBuilder.add( createQuery( fieldContext ), BooleanClause.Occur.SHOULD ); } BooleanQuery aggregatedFieldsQuery = aggregatedFieldsQueryBuilder.build(); return queryCustomizer.setWrappedQuery( aggregatedFieldsQuery ).createQuery(); } }
@Override public Query createQuery() { Query query; if ( clauses.size() == 1 ) { query = clauses.get( 0 ).getQuery(); } else { BooleanQuery.Builder booleanQueryBuilder = new BooleanQuery.Builder(); for ( BooleanClause clause : clauses ) { booleanQueryBuilder.add( clause ); } query = booleanQueryBuilder.build(); } return queryCustomizer.setWrappedQuery( query ).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 Query createQuery() { Query query; if ( clauses.size() == 1 ) { query = clauses.get( 0 ).getQuery(); } else { BooleanQuery.Builder booleanQueryBuilder = new BooleanQuery.Builder(); for ( BooleanClause clause : clauses ) { booleanQueryBuilder.add( clause ); } query = booleanQueryBuilder.build(); } return queryCustomizer.setWrappedQuery( query ).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(); } }
/** * Factory method to generate a prefix query. */ @Override protected Query newPrefixQuery(String text) { BooleanQuery.Builder bqb = new BooleanQuery.Builder().setDisableCoord( true ); for ( FieldsContext fieldsContext : fieldsContexts ) { for ( FieldContext fieldContext : fieldsContext ) { PrefixQuery prefix = new PrefixQuery( new Term( fieldContext.getField(), text ) ); bqb.add( fieldContext.getFieldCustomizer().setWrappedQuery( prefix ).createQuery(), BooleanClause.Occur.SHOULD ); } } return simplify( bqb.build() ); }
/** * Factory method to generate a prefix query. */ @Override protected Query newPrefixQuery(String text) { BooleanQuery.Builder bqb = new BooleanQuery.Builder().setDisableCoord( true ); for ( FieldsContext fieldsContext : fieldsContexts ) { for ( FieldContext fieldContext : fieldsContext ) { PrefixQuery prefix = new PrefixQuery( new Term( fieldContext.getField(), text ) ); bqb.add( fieldContext.getFieldCustomizer().setWrappedQuery( prefix ).createQuery(), BooleanClause.Occur.SHOULD ); } } return simplify( bqb.build() ); }
/** * Factory method to generate a fuzzy query. */ @Override protected Query newFuzzyQuery(String text, int fuzziness) { BooleanQuery.Builder bqb = new BooleanQuery.Builder().setDisableCoord( true ); for ( FieldsContext fieldsContext : fieldsContexts ) { for ( FieldContext fieldContext : fieldsContext ) { Query q = new FuzzyQuery( new Term( fieldContext.getField(), text ), fuzziness ); if ( q != null ) { bqb.add( fieldContext.getFieldCustomizer().setWrappedQuery( q ).createQuery(), BooleanClause.Occur.SHOULD ); } } } return simplify( bqb.build() ); }
/** * Factory method to generate a fuzzy query. */ @Override protected Query newFuzzyQuery(String text, int fuzziness) { BooleanQuery.Builder bqb = new BooleanQuery.Builder().setDisableCoord( true ); for ( FieldsContext fieldsContext : fieldsContexts ) { for ( FieldContext fieldContext : fieldsContext ) { Query q = new FuzzyQuery( new Term( fieldContext.getField(), text ), fuzziness ); if ( q != null ) { bqb.add( fieldContext.getFieldCustomizer().setWrappedQuery( q ).createQuery(), BooleanClause.Occur.SHOULD ); } } } return simplify( bqb.build() ); }
@Override public Query createQuery() { final int size = fieldsContext.size(); final ConversionContext conversionContext = new ContextualExceptionBridgeHelper(); if ( size == 1 ) { return queryCustomizer.setWrappedQuery( createQuery( fieldsContext.getFirst(), conversionContext ) ).createQuery(); } else { BooleanQuery.Builder aggregatedFieldsQueryBuilder = new BooleanQuery.Builder(); for ( FieldContext fieldContext : fieldsContext ) { aggregatedFieldsQueryBuilder.add( createQuery( fieldContext, conversionContext ), BooleanClause.Occur.SHOULD ); } BooleanQuery aggregatedFieldsQuery = aggregatedFieldsQueryBuilder.build(); return queryCustomizer.setWrappedQuery( aggregatedFieldsQuery ).createQuery(); } }
@Override public Query createQuery() { final int nbrOfClauses = clauses.size(); if ( nbrOfClauses == 0 ) { throw log.booleanQueryWithoutClauses(); } Builder builder = new org.apache.lucene.search.BooleanQuery.Builder(); boolean allClausesAreMustNot = true; for ( BooleanClause clause : clauses ) { if ( clause.getOccur() != Occur.MUST_NOT ) { allClausesAreMustNot = false; } builder.add( clause ); } if ( allClausesAreMustNot ) { //It is illegal to have only must-not queries, //in this case we need to add a positive clause to match everything else. builder.add( new MatchAllDocsQuery(), Occur.FILTER ); } return queryCustomizer.setWrappedQuery( builder.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(); }
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(); }
/** * Factory method to generate a phrase query with slop. */ @Override protected Query newPhraseQuery(String text, int slop) { BooleanQuery.Builder bqb = new BooleanQuery.Builder().setDisableCoord( true ); for ( FieldsContext fieldsContext : fieldsContexts ) { for ( FieldContext fieldContext : fieldsContext ) { Query q = createPhraseQuery( fieldContext.getField(), text, slop ); if ( q != null ) { bqb.add( fieldContext.getFieldCustomizer().setWrappedQuery( q ).createQuery(), BooleanClause.Occur.SHOULD ); } } } return simplify( bqb.build() ); }
/** * Factory method to generate a phrase query with slop. */ @Override protected Query newPhraseQuery(String text, int slop) { BooleanQuery.Builder bqb = new BooleanQuery.Builder().setDisableCoord( true ); for ( FieldsContext fieldsContext : fieldsContexts ) { for ( FieldContext fieldContext : fieldsContext ) { Query q = createPhraseQuery( fieldContext.getField(), text, slop ); if ( q != null ) { bqb.add( fieldContext.getFieldCustomizer().setWrappedQuery( q ).createQuery(), BooleanClause.Occur.SHOULD ); } } } return simplify( bqb.build() ); }
/** * Factory method to generate a standard query (no phrase or prefix operators). */ @Override protected Query newDefaultQuery(String text) { BooleanQuery.Builder bqb = new BooleanQuery.Builder().setDisableCoord( true ); for ( FieldsContext fieldsContext : fieldsContexts ) { for ( FieldContext fieldContext : fieldsContext ) { Query q = createBooleanQuery( fieldContext.getField(), text, getDefaultOperator() ); if ( q != null ) { bqb.add( fieldContext.getFieldCustomizer().setWrappedQuery( q ).createQuery(), BooleanClause.Occur.SHOULD ); } } } return simplify( bqb.build() ); }
/** * Factory method to generate a standard query (no phrase or prefix operators). */ @Override protected Query newDefaultQuery(String text) { BooleanQuery.Builder bqb = new BooleanQuery.Builder().setDisableCoord( true ); for ( FieldsContext fieldsContext : fieldsContexts ) { for ( FieldContext fieldContext : fieldsContext ) { Query q = createBooleanQuery( fieldContext.getField(), text, getDefaultOperator() ); if ( q != null ) { bqb.add( fieldContext.getFieldCustomizer().setWrappedQuery( q ).createQuery(), BooleanClause.Occur.SHOULD ); } } } return simplify( bqb.build() ); }