Class DateHistogramAggregationBuilder
java.lang.Object
org.elasticsearch.search.aggregations.AggregationBuilder
org.elasticsearch.search.aggregations.AbstractAggregationBuilder<AB>
org.elasticsearch.search.aggregations.support.ValuesSourceAggregationBuilder<DateHistogramAggregationBuilder>
org.elasticsearch.search.aggregations.bucket.histogram.DateHistogramAggregationBuilder
- All Implemented Interfaces:
NamedWriteable,Writeable,org.elasticsearch.common.xcontent.ToXContent,org.elasticsearch.common.xcontent.ToXContentFragment,Rewriteable<AggregationBuilder>,BaseAggregationBuilder,DateIntervalConsumer
public class DateHistogramAggregationBuilder extends ValuesSourceAggregationBuilder<DateHistogramAggregationBuilder> implements DateIntervalConsumer
A builder for histograms on date fields.
-
Nested Class Summary
Nested classes/interfaces inherited from class org.elasticsearch.search.aggregations.support.ValuesSourceAggregationBuilder
ValuesSourceAggregationBuilder.LeafOnly<VS extends ValuesSource,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.common.xcontent.ToXContent
org.elasticsearch.common.xcontent.ToXContent.DelegatingMapParams, org.elasticsearch.common.xcontent.ToXContent.MapParams, org.elasticsearch.common.xcontent.ToXContent.ParamsNested classes/interfaces inherited from interface org.elasticsearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V> -
Field Summary
Fields Modifier and Type Field Description static java.util.Map<java.lang.String,Rounding.DateTimeUnit>DATE_FIELD_UNITSstatic java.lang.StringNAMEstatic org.elasticsearch.common.xcontent.ObjectParser<DateHistogramAggregationBuilder,java.lang.String>PARSERFields inherited from class org.elasticsearch.search.aggregations.support.ValuesSourceAggregationBuilder
configFields inherited from class org.elasticsearch.search.aggregations.AbstractAggregationBuilder
metadataFields inherited from class org.elasticsearch.search.aggregations.AggregationBuilder
factoriesBuilder, name -
Constructor Summary
Constructors Modifier Constructor Description DateHistogramAggregationBuilder(java.lang.String name)Create a new builder with the given name.DateHistogramAggregationBuilder(StreamInput in)Read from a stream, for internal use only.protectedDateHistogramAggregationBuilder(DateHistogramAggregationBuilder clone, AggregatorFactories.Builder factoriesBuilder, java.util.Map<java.lang.String,java.lang.Object> metadata) -
Method Summary
Modifier and Type Method Description AggregationBuilder.BucketCardinalitybucketCardinality()A rough count of the number of buckets thatAggregators built by this builder will contain per owning parent bucket.DateHistogramAggregationBuildercalendarInterval(DateHistogramInterval interval)Sets the interval of the DateHistogram using calendar units (`1d`, `1w`, `1M`, etc).DateHistogramIntervaldateHistogramInterval()Deprecated.DateHistogramAggregationBuilderdateHistogramInterval(DateHistogramInterval interval)Deprecated.protected ValuesSourceTypedefaultValueSourceType()Aggregations should use this method to define aValuesSourceTypeof last resort.protected org.elasticsearch.common.xcontent.XContentBuilderdoXContentBody(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params)booleanequals(java.lang.Object obj)ExtendedBoundsextendedBounds()Return extended bounds for this histogram, ornullif none are set.DateHistogramAggregationBuilderextendedBounds(ExtendedBounds extendedBounds)Set extended bounds on this histogram, so that buckets would also be generated on intervals that did not match any documents.DateHistogramAggregationBuilderfixedInterval(DateHistogramInterval interval)Sets the interval of the DateHistogram using fixed units (`1ms`, `1s`, `10m`, `4h`, etc).DateHistogramIntervalgetCalendarInterval()Returns the interval as a date time unit if and only if it was configured as a calendar interval originally.DateHistogramIntervalgetFixedInterval()Returns the interval as a fixed time unit if and only if it was configured as a fixed interval originally.java.lang.StringgetType()The name of the type of aggregation built by this builder.inthashCode()protected ValuesSourceAggregatorFactoryinnerBuild(QueryShardContext queryShardContext, ValuesSourceConfig config, AggregatorFactory parent, AggregatorFactories.Builder subFactoriesBuilder)protected voidinnerWriteTo(StreamOutput out)Write subclass's state to the stream.longinterval()Deprecated.DateHistogramAggregationBuilderinterval(long interval)Deprecated.booleankeyed()Return whether buckets should be returned as a hash.DateHistogramAggregationBuilderkeyed(boolean keyed)Set whether to return buckets as a hash or as an array, and return the builder so that calls can be chained.longminDocCount()Return the minimum count of documents that buckets need to have in order to be included in the response.DateHistogramAggregationBuilderminDocCount(long minDocCount)Set the minimum count of matching documents that buckets need to have and return this builder so that calls can be chained.longoffset()Get the offset to use when rounding, which is a number of milliseconds.DateHistogramAggregationBuilderoffset(long offset)Set the offset on this builder, which is a number of milliseconds, and return the builder so that calls can be chained.DateHistogramAggregationBuilderoffset(java.lang.String offset)Set the offset on this builder, as a time value, and return the builder so that calls can be chained.BucketOrderorder()Return the order to use to sort buckets of this histogram.DateHistogramAggregationBuilderorder(java.util.List<BucketOrder> orders)Sets the order in which the buckets will be returned.DateHistogramAggregationBuilderorder(BucketOrder order)Set a new order on this builder and return the builder so that calls can be chained.static longparseStringOffset(java.lang.String offset)Parse the string specification of an offset.static voidregisterAggregators(ValuesSourceRegistry.Builder builder)protected AggregationBuildershallowCopy(AggregatorFactories.Builder factoriesBuilder, java.util.Map<java.lang.String,java.lang.Object> metadata)Create a shallow copy of this builder and replacingAggregationBuilder.factoriesBuilderandmetadata.Methods inherited from class org.elasticsearch.search.aggregations.support.ValuesSourceAggregationBuilder
declareFields, doBuild, doWriteTo, field, field, format, format, internalXContent, missing, 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, doRewrite, getName, getPipelineAggregations, getSubAggregations, rewrite, toString
-
Field Details
-
NAME
public static final java.lang.String NAME- See Also:
- Constant Field Values
-
DATE_FIELD_UNITS
-
PARSER
public static final org.elasticsearch.common.xcontent.ObjectParser<DateHistogramAggregationBuilder,java.lang.String> PARSER
-
-
Constructor Details
-
DateHistogramAggregationBuilder
public DateHistogramAggregationBuilder(java.lang.String name)Create a new builder with the given name. -
DateHistogramAggregationBuilder
protected DateHistogramAggregationBuilder(DateHistogramAggregationBuilder clone, AggregatorFactories.Builder factoriesBuilder, java.util.Map<java.lang.String,java.lang.Object> metadata) -
DateHistogramAggregationBuilder
Read from a stream, for internal use only.- Throws:
java.io.IOException
-
-
Method Details
-
registerAggregators
-
shallowCopy
protected AggregationBuilder shallowCopy(AggregatorFactories.Builder factoriesBuilder, java.util.Map<java.lang.String,java.lang.Object> metadata)Description copied from class:AggregationBuilderCreate a shallow copy of this builder and replacingAggregationBuilder.factoriesBuilderandmetadata. Used byAggregationBuilder.rewrite(QueryRewriteContext).- Specified by:
shallowCopyin classAggregationBuilder
-
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<DateHistogramAggregationBuilder>- Returns:
- The CoreValuesSourceType we expect this script to yield.
-
innerWriteTo
Description copied from class:ValuesSourceAggregationBuilderWrite subclass's state to the stream.- Specified by:
innerWriteToin classValuesSourceAggregationBuilder<DateHistogramAggregationBuilder>- Throws:
java.io.IOException
-
interval
@Deprecated public long interval()Deprecated.Get the current interval in milliseconds that is set on this builder.- Specified by:
intervalin interfaceDateIntervalConsumer
-
interval
Deprecated.Set the interval on this builder, and return the builder so that calls can be chained. If bothinterval()anddateHistogramInterval()are set, then thedateHistogramInterval()wins.- Specified by:
intervalin interfaceDateIntervalConsumer- Since:
- 7.2.0
-
dateHistogramInterval
Deprecated.Get the current date interval that is set on this builder.- Specified by:
dateHistogramIntervalin interfaceDateIntervalConsumer
-
dateHistogramInterval
@Deprecated public DateHistogramAggregationBuilder dateHistogramInterval(DateHistogramInterval interval)Deprecated.Set the interval on this builder, and return the builder so that calls can be chained. If bothinterval()anddateHistogramInterval()are set, then thedateHistogramInterval()wins.- Specified by:
dateHistogramIntervalin interfaceDateIntervalConsumer- Since:
- 7.2.0
-
calendarInterval
Sets the interval of the DateHistogram using calendar units (`1d`, `1w`, `1M`, etc). These units are calendar-aware, meaning they respect leap additions, variable days per month, etc. This is mutually exclusive withfixedInterval(DateHistogramInterval)- Specified by:
calendarIntervalin interfaceDateIntervalConsumer- Parameters:
interval- The calendar interval to use with the aggregation
-
fixedInterval
Sets the interval of the DateHistogram using fixed units (`1ms`, `1s`, `10m`, `4h`, etc). These are not calendar aware and are simply multiples of fixed, SI units. This is mutually exclusive withcalendarInterval(DateHistogramInterval)- Specified by:
fixedIntervalin interfaceDateIntervalConsumer- Parameters:
interval- The fixed interval to use with the aggregation
-
getCalendarInterval
Returns the interval as a date time unit if and only if it was configured as a calendar interval originally. Returns null otherwise. -
getFixedInterval
Returns the interval as a fixed time unit if and only if it was configured as a fixed interval originally. Returns null otherwise. -
offset
public long offset()Get the offset to use when rounding, which is a number of milliseconds. -
offset
Set the offset on this builder, which is a number of milliseconds, and return the builder so that calls can be chained. -
offset
Set the offset on this builder, as a time value, and return the builder so that calls can be chained. -
parseStringOffset
public static long parseStringOffset(java.lang.String offset)Parse the string specification of an offset. -
extendedBounds
Return extended bounds for this histogram, ornullif none are set. -
extendedBounds
Set extended bounds on this histogram, so that buckets would also be generated on intervals that did not match any documents. -
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 org.elasticsearch.common.xcontent.XContentBuilder doXContentBody(org.elasticsearch.common.xcontent.XContentBuilder builder, org.elasticsearch.common.xcontent.ToXContent.Params params) throws java.io.IOException- Specified by:
doXContentBodyin classValuesSourceAggregationBuilder<DateHistogramAggregationBuilder>- Throws:
java.io.IOException
-
getType
public java.lang.String getType()Description copied from interface:BaseAggregationBuilderThe name of the type of aggregation built by this builder.- Specified by:
getTypein interfaceBaseAggregationBuilder
-
innerBuild
protected ValuesSourceAggregatorFactory innerBuild(QueryShardContext queryShardContext, ValuesSourceConfig config, AggregatorFactory parent, AggregatorFactories.Builder subFactoriesBuilder) throws java.io.IOException- Specified by:
innerBuildin classValuesSourceAggregationBuilder<DateHistogramAggregationBuilder>- Throws:
java.io.IOException
-
hashCode
public int hashCode()- Overrides:
hashCodein classValuesSourceAggregationBuilder<DateHistogramAggregationBuilder>
-
equals
public boolean equals(java.lang.Object obj)- Overrides:
equalsin classValuesSourceAggregationBuilder<DateHistogramAggregationBuilder>
-