Module org.elasticsearch.server
Class HistogramAggregationBuilder
java.lang.Object
org.elasticsearch.search.aggregations.AggregationBuilder
org.elasticsearch.search.aggregations.AbstractAggregationBuilder<HistogramAggregationBuilder>
org.elasticsearch.search.aggregations.support.ValuesSourceAggregationBuilder<HistogramAggregationBuilder>
org.elasticsearch.search.aggregations.bucket.histogram.HistogramAggregationBuilder
- All Implemented Interfaces:
NamedWriteable,VersionedNamedWriteable,Writeable,Rewriteable<AggregationBuilder>,BaseAggregationBuilder,ToXContent,ToXContentFragment
public class HistogramAggregationBuilder
extends ValuesSourceAggregationBuilder<HistogramAggregationBuilder>
A builder for histograms on numeric fields. This builder can operate on either base numeric fields, or numeric range fields. IP range
fields are unsupported, and will throw at the factory layer.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.elasticsearch.search.aggregations.support.ValuesSourceAggregationBuilder
ValuesSourceAggregationBuilder.LeafOnly<AB extends ValuesSourceAggregationBuilder<AB>>, ValuesSourceAggregationBuilder.MetricsAggregationBuilder<AB extends ValuesSourceAggregationBuilder<AB>>, ValuesSourceAggregationBuilder.SingleMetricAggregationBuilder<AB extends ValuesSourceAggregationBuilder<AB>>Nested classes/interfaces inherited from class org.elasticsearch.search.aggregations.AggregationBuilder
AggregationBuilder.BucketCardinality, AggregationBuilder.CommonFieldsNested classes/interfaces inherited from interface org.elasticsearch.xcontent.ToXContent
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.ParamsNested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V> -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final Stringstatic final ObjectParser<HistogramAggregationBuilder, String> static final ValuesSourceRegistry.RegistryKey<HistogramAggregatorSupplier> Fields inherited from class org.elasticsearch.search.aggregations.AbstractAggregationBuilder
metadataFields inherited from class org.elasticsearch.search.aggregations.AggregationBuilder
DEFAULT_PREALLOCATION, factoriesBuilder, nameFields inherited from interface org.elasticsearch.index.query.Rewriteable
MAX_REWRITE_ROUNDSFields inherited from interface org.elasticsearch.xcontent.ToXContent
EMPTY, EMPTY_PARAMS -
Constructor Summary
ConstructorsModifierConstructorDescriptionCreate a new builder with the given name.Read from a stream, for internal use only.protectedHistogramAggregationBuilder(HistogramAggregationBuilder clone, AggregatorFactories.Builder factoriesBuilder, Map<String, Object> metadata) -
Method Summary
Modifier and TypeMethodDescriptionA rough count of the number of buckets thatAggregators built by this builder will contain per owning parent bucket.protected ValuesSourceTypeAggregations should use this method to define aValuesSourceTypeof last resort.protected XContentBuilderdoXContentBody(XContentBuilder builder, ToXContent.Params params) booleanextendedBounds(double minBound, double maxBound) Set extended bounds on this builder: buckets betweenminBoundandmaxBoundwill be created even if no documents fell into these buckets.extendedBounds(DoubleBounds extendedBounds) Set extended bounds on this builder: buckets betweenminBoundandmaxBoundwill be created even if no documents fell into these buckets.The minimal version of the recipient this object can be sent to.getType()The name of the type of aggregation built by this builder.hardBounds(DoubleBounds hardBounds) Set hard bounds on this histogram, specifying boundaries outside which buckets cannot be created.inthashCode()protected ValuesSourceAggregatorFactoryinnerBuild(AggregationContext context, ValuesSourceConfig config, AggregatorFactory parent, AggregatorFactories.Builder subFactoriesBuilder) protected voidinnerWriteTo(StreamOutput out) Write subclass's state to the stream.doubleinterval()Get the current interval that is set on this builder.interval(double interval) Set the interval on this builder, and return the builder so that calls can be chained.booleankeyed()Return whether buckets should be returned as a hash.keyed(boolean keyed) Set whether to return buckets as a hash or as an array, and return the builder so that calls can be chained.doublemaxBound()Get the current maximum bound that is set on this builder.doubleminBound()Get the current minimum bound that is set on this builder.longReturn the minimum count of documents that buckets need to have in order to be included in the response.minDocCount(long minDocCount) Set the minimum count of matching documents that buckets need to have and return this builder so that calls can be chained.doubleoffset()Get the current offset that is set on this builder.offset(double offset) Set the offset on this builder, and return the builder so that calls can be chained.order()Return the order to use to sort buckets of this histogram.order(List<BucketOrder> orders) Sets the order in which the buckets will be returned.order(BucketOrder order) Set a new order on this builder and return the builder so that calls can be chained.static voidprotected AggregationBuildershallowCopy(AggregatorFactories.Builder factoriesBuilder, Map<String, Object> metadata) Create a shallow copy of this builder and replacingAggregationBuilder.factoriesBuilderandmetadata.booleanDoes this aggregation support running with in a sampling context.protected voidvalidateSequentiallyOrdered(String type, String name, Consumer<String> addValidationError) Called by aggregations whose parents must be sequentially ordered.protected voidvalidateSequentiallyOrderedWithoutGaps(String type, String name, Consumer<String> addValidationError) Called by aggregations whose parents must be sequentially ordered without any gaps.Methods inherited from class org.elasticsearch.search.aggregations.support.ValuesSourceAggregationBuilder
declareFields, declareFields, doBuild, doWriteTo, field, field, format, format, internalXContent, missing, resolveConfig, script, script, serializeTargetValueType, timeZone, timeZone, userValueTypeHint, userValueTypeHintMethods inherited from class org.elasticsearch.search.aggregations.AbstractAggregationBuilder
build, getMetadata, getWriteableName, setMetadata, subAggregation, subAggregation, subAggregations, toXContent, writeToMethods inherited from class org.elasticsearch.search.aggregations.AggregationBuilder
buildPipelineTree, bytesToPreallocate, deepCopy, doRewrite, getName, getOutputFieldNames, getPipelineAggregations, getQuery, getSubAggregations, isInSortOrderExecutionRequired, rewrite, supportsParallelCollection, toStringMethods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface org.elasticsearch.xcontent.ToXContentFragment
isFragmentMethods inherited from interface org.elasticsearch.common.io.stream.VersionedNamedWriteable
supportsVersion
-
Field Details
-
NAME
- See Also:
-
REGISTRY_KEY
-
PARSER
-
-
Constructor Details
-
HistogramAggregationBuilder
Create a new builder with the given name. -
HistogramAggregationBuilder
protected HistogramAggregationBuilder(HistogramAggregationBuilder clone, AggregatorFactories.Builder factoriesBuilder, Map<String, Object> metadata) -
HistogramAggregationBuilder
Read from a stream, for internal use only.- Throws:
IOException
-
-
Method Details
-
registerAggregators
-
defaultValueSourceType
Description copied from class:ValuesSourceAggregationBuilderAggregations should use this method to define aValuesSourceTypeof last resort. This will only be used when the resolver can't find a field and the user hasn't provided a value type hint.- Specified by:
defaultValueSourceTypein classValuesSourceAggregationBuilder<HistogramAggregationBuilder>- Returns:
- The CoreValuesSourceType we expect this script to yield.
-
supportsSampling
public boolean supportsSampling()Description copied from class:AggregationBuilderDoes this aggregation support running with in a sampling context. By default, it's false for all aggregations. If the sub-classed builder supports sampling, be sure of the following that the resulting internal aggregation objects override theInternalAggregation.finalizeSampling(SamplingContext)and scales any values that require scaling.- Overrides:
supportsSamplingin classAggregationBuilder- Returns:
- does this aggregation builder support sampling
-
shallowCopy
protected AggregationBuilder shallowCopy(AggregatorFactories.Builder factoriesBuilder, Map<String, Object> metadata) Description copied from class:AggregationBuilderCreate a shallow copy of this builder and replacingAggregationBuilder.factoriesBuilderandmetadata.- Specified by:
shallowCopyin classAggregationBuilder
-
innerWriteTo
Description copied from class:ValuesSourceAggregationBuilderWrite subclass's state to the stream.- Specified by:
innerWriteToin classValuesSourceAggregationBuilder<HistogramAggregationBuilder>- Throws:
IOException
-
interval
public double interval()Get the current interval that is set on this builder. -
interval
Set the interval on this builder, and return the builder so that calls can be chained. -
offset
public double offset()Get the current offset that is set on this builder. -
offset
Set the offset on this builder, and return the builder so that calls can be chained. -
minBound
public double minBound()Get the current minimum bound that is set on this builder. -
maxBound
public double maxBound()Get the current maximum bound that is set on this builder. -
extendedBounds
Set extended bounds on this builder: buckets betweenminBoundandmaxBoundwill be created even if no documents fell into these buckets.- Throws:
IllegalArgumentException- if maxBound is less that minBound, or if either of the bounds are not finite.
-
extendedBounds
Set extended bounds on this builder: buckets betweenminBoundandmaxBoundwill be created even if no documents fell into these buckets.- Throws:
IllegalArgumentException- if maxBound is less that minBound, or if either of the bounds are not finite.
-
hardBounds
Set hard bounds on this histogram, specifying boundaries outside which buckets cannot be created. -
order
Return the order to use to sort buckets of this histogram. -
order
Set a new order on this builder and return the builder so that calls can be chained. A tie-breaker may be added to avoid non-deterministic ordering. -
order
Sets the order in which the buckets will be returned. A tie-breaker may be added to avoid non-deterministic ordering. -
keyed
public boolean keyed()Return whether buckets should be returned as a hash. In casekeyedis false, buckets will be returned as an array. -
keyed
Set whether to return buckets as a hash or as an array, and return the builder so that calls can be chained. -
minDocCount
public long minDocCount()Return the minimum count of documents that buckets need to have in order to be included in the response. -
minDocCount
Set the minimum count of matching documents that buckets need to have and return this builder so that calls can be chained. -
bucketCardinality
Description copied from class:AggregationBuilderA rough count of the number of buckets thatAggregators built by this builder will contain per owning parent bucket.- Specified by:
bucketCardinalityin classAggregationBuilder
-
doXContentBody
protected XContentBuilder doXContentBody(XContentBuilder builder, ToXContent.Params params) throws IOException - Specified by:
doXContentBodyin classValuesSourceAggregationBuilder<HistogramAggregationBuilder>- Throws:
IOException
-
getType
Description copied from interface:BaseAggregationBuilderThe name of the type of aggregation built by this builder. -
innerBuild
protected ValuesSourceAggregatorFactory innerBuild(AggregationContext context, ValuesSourceConfig config, AggregatorFactory parent, AggregatorFactories.Builder subFactoriesBuilder) throws IOException - Specified by:
innerBuildin classValuesSourceAggregationBuilder<HistogramAggregationBuilder>- Throws:
IOException
-
hashCode
public int hashCode()- Overrides:
hashCodein classValuesSourceAggregationBuilder<HistogramAggregationBuilder>
-
equals
- Overrides:
equalsin classValuesSourceAggregationBuilder<HistogramAggregationBuilder>
-
getMinimalSupportedVersion
Description copied from interface:VersionedNamedWriteableThe minimal version of the recipient this object can be sent to. SeeVersionedNamedWriteable.supportsVersion(TransportVersion)for the default serialization check. -
validateSequentiallyOrdered
protected void validateSequentiallyOrdered(String type, String name, Consumer<String> addValidationError) Description copied from class:AggregationBuilderCalled by aggregations whose parents must be sequentially ordered.- Overrides:
validateSequentiallyOrderedin classAggregationBuilder- Parameters:
type- the type of the aggregation being validatedname- the name of the aggregation being validatedaddValidationError- callback to add validation errors
-
validateSequentiallyOrderedWithoutGaps
protected void validateSequentiallyOrderedWithoutGaps(String type, String name, Consumer<String> addValidationError) Description copied from class:AggregationBuilderCalled by aggregations whose parents must be sequentially ordered without any gaps.- Overrides:
validateSequentiallyOrderedWithoutGapsin classAggregationBuilder- Parameters:
type- the type of the aggregation being validatedname- the name of the aggregation being validatedaddValidationError- callback to add validation errors
-