throw log.unknownFieldNameForFaceting( facetRequest.getFacetingName(), facetRequest.getFieldName() ); if ( facetRequest.hasZeroCountsIncluded() ) { termValues = findAllTermsForField( facetMetadata.getSourceField().getAbsoluteName(), searcher.getIndexReader() ); int maxFacetCount = facetRequest.getMaxNumberOfFacets() < 0 ? DEFAULT_FACET_RETRIEVAL_SIZE : facetRequest.getMaxNumberOfFacets(); final FacetResult facetResult; try { facetResult = facetCounts.getTopChildren( maxFacetCount, facetRequest.getFieldName() ); throw log.unknownFieldNameForFaceting( facetRequest.getFacetingName(), facetRequest.getFieldName() ); Facet facet = facetRequest.createFacet( facetMetadata, labelAndValue.label, (int) labelAndValue.value ); facets.add( facet ); termValues.remove( labelAndValue.label ); Facet facet = facetRequest.createFacet( facetMetadata, termValue, 0 ); facets.add( 0, facet );
private List<Facet> extractDiscreteFacets(JsonObject aggregations, DiscreteFacetRequest facetRequest, FacetMetadata facetMetadata) { JsonElement aggregation = aggregations.get( facetRequest.getFacetingName() ); if ( aggregation == null ) { return Collections.emptyList(); } // deal with nested aggregation for nested documents if ( isNested( facetRequest ) ) { aggregation = aggregation.getAsJsonObject().get( facetRequest.getFacetingName() ); } if ( aggregation == null ) { return Collections.emptyList(); } ArrayList<Facet> facets = new ArrayList<>(); for ( JsonElement bucket : aggregation.getAsJsonObject().get( "buckets" ).getAsJsonArray() ) { facets.add( facetRequest.createFacet( facetMetadata, bucket.getAsJsonObject().get( "key" ).getAsString(), bucket.getAsJsonObject().get( "doc_count" ).getAsInt() ) ); } return facets; }
@Override public Facet createFacet(FacetMetadata facetMetadata, String value, int count) { return new SimpleFacet( getFacetingName(), getFieldName(), facetMetadata.getSourceField().getAbsoluteName(), value, count ); }
FacetingRequest getFacetingRequest() { FacetingRequestImpl request; if ( isRangeQuery ) { request = new RangeFacetRequest<>( name, fieldName, rangeList ); } else { if ( FacetSortOrder.RANGE_DEFINITION_ORDER.equals( sort ) ) { throw log.rangeDefinitionOrderRequestedForDiscreteFacetRequest(); } request = new DiscreteFacetRequest( name, fieldName ); } request.setSort( sort ); request.setIncludeZeroCounts( includeZeroCount ); request.setMaxNumberOfFacets( maxFacetCount ); return request; }
private List<Facet> updateStringFacets(JsonObject aggregations, DiscreteFacetRequest facetRequest) { JsonElement aggregation = aggregations.get( facetRequest.getFacetingName() ); if ( aggregation == null ) { return Collections.emptyList(); } // deal with nested aggregation for nested documents if ( isNested( facetRequest ) ) { aggregation = aggregation.getAsJsonObject().get( facetRequest.getFacetingName() ); } if ( aggregation == null ) { return Collections.emptyList(); } ArrayList<Facet> facets = new ArrayList<>(); for ( JsonElement bucket : aggregation.getAsJsonObject().get( "buckets" ).getAsJsonArray() ) { facets.add( facetRequest.createFacet( bucket.getAsJsonObject().get( "key" ).getAsString(), bucket.getAsJsonObject().get( "doc_count" ).getAsInt() ) ); } return facets; }
@Override public Facet createFacet(FacetMetadata facetMetadata, String value, int count) { return new SimpleFacet( getFacetingName(), getFieldName(), facetMetadata.getSourceField().getAbsoluteName(), value, count ); }
FacetingRequest getFacetingRequest() { FacetingRequestImpl request; if ( isRangeQuery ) { request = new RangeFacetRequest<>( name, fieldName, rangeList ); } else { if ( FacetSortOrder.RANGE_DEFINITION_ORDER.equals( sort ) ) { throw log.rangeDefinitionOrderRequestedForDiscreteFacetRequest(); } request = new DiscreteFacetRequest( name, fieldName ); } request.setSort( sort ); request.setIncludeZeroCounts( includeZeroCount ); request.setMaxNumberOfFacets( maxFacetCount ); return request; }
if ( facetRequest.hasZeroCountsIncluded() ) { termValues = findAllTermsForField( facetMetadata.getSourceField().getAbsoluteName(), searcher.getIndexReader() ); int maxFacetCount = facetRequest.getMaxNumberOfFacets() < 0 ? DEFAULT_FACET_RETRIEVAL_SIZE : facetRequest.getMaxNumberOfFacets(); final FacetResult facetResult; try { facetResult = facetCounts.getTopChildren( maxFacetCount, facetRequest.getFieldName() ); Facet facet = facetRequest.createFacet( facetMetadata, labelAndValue.label, (int) labelAndValue.value ); facets.add( facet ); termValues.remove( labelAndValue.label ); Facet facet = facetRequest.createFacet( facetMetadata, termValue, 0 ); facets.add( 0, facet );
private List<Facet> extractDiscreteFacets(JsonObject aggregations, DiscreteFacetRequest facetRequest, FacetMetadata facetMetadata) { JsonElement aggregation = aggregations.get( facetRequest.getFacetingName() ); if ( aggregation == null ) { return Collections.emptyList(); } // deal with nested aggregation for nested documents if ( isNested( facetRequest ) ) { aggregation = aggregation.getAsJsonObject().get( facetRequest.getFacetingName() ); } if ( aggregation == null ) { return Collections.emptyList(); } ArrayList<Facet> facets = new ArrayList<>(); for ( JsonElement bucket : aggregation.getAsJsonObject().get( "buckets" ).getAsJsonArray() ) { facets.add( facetRequest.createFacet( facetMetadata, bucket.getAsJsonObject().get( "key" ).getAsString(), bucket.getAsJsonObject().get( "doc_count" ).getAsInt() ) ); } return facets; }