Class DateHistogramAggregationBuilder
- java.lang.Object
-
- org.elasticsearch.search.aggregations.AggregationBuilder
-
- org.elasticsearch.search.aggregations.AbstractAggregationBuilder<AB>
-
- org.elasticsearch.search.aggregations.support.ValuesSourceAggregationBuilder<ValuesSource.Numeric,DateHistogramAggregationBuilder>
-
- org.elasticsearch.search.aggregations.bucket.histogram.DateHistogramAggregationBuilder
-
- All Implemented Interfaces:
NamedWriteable
,Writeable
,ToXContent
,ToXContentFragment
,BaseAggregationBuilder
,DateIntervalConsumer
,MultiBucketAggregationBuilder
public class DateHistogramAggregationBuilder extends ValuesSourceAggregationBuilder<ValuesSource.Numeric,DateHistogramAggregationBuilder> implements MultiBucketAggregationBuilder, 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<VS,AB>>
-
Nested classes/interfaces inherited from class org.elasticsearch.search.aggregations.AggregationBuilder
AggregationBuilder.CommonFields
-
Nested classes/interfaces inherited from interface org.elasticsearch.common.xcontent.ToXContent
ToXContent.DelegatingMapParams, ToXContent.MapParams, ToXContent.Params
-
Nested 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_UNITS
static java.lang.String
NAME
-
Fields inherited from class org.elasticsearch.search.aggregations.support.ValuesSourceAggregationBuilder
config
-
Fields inherited from class org.elasticsearch.search.aggregations.AbstractAggregationBuilder
metaData
-
Fields inherited from class org.elasticsearch.search.aggregations.AggregationBuilder
factoriesBuilder, name
-
Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent
EMPTY_PARAMS
-
-
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.protected
DateHistogramAggregationBuilder(DateHistogramAggregationBuilder clone, AggregatorFactories.Builder factoriesBuilder, java.util.Map<java.lang.String,java.lang.Object> metaData)
-
Method Summary
Modifier and Type Method Description DateHistogramAggregationBuilder
calendarInterval(DateHistogramInterval interval)
Sets the interval of the DateHistogram using calendar units (`1d`, `1w`, `1M`, etc).DateHistogramInterval
dateHistogramInterval()
Deprecated.DateHistogramAggregationBuilder
dateHistogramInterval(DateHistogramInterval interval)
Deprecated.protected XContentBuilder
doXContentBody(XContentBuilder builder, ToXContent.Params params)
boolean
equals(java.lang.Object obj)
ExtendedBounds
extendedBounds()
Return extended bounds for this histogram, ornull
if none are set.DateHistogramAggregationBuilder
extendedBounds(ExtendedBounds extendedBounds)
Set extended bounds on this histogram, so that buckets would also be generated on intervals that did not match any documents.DateHistogramAggregationBuilder
fixedInterval(DateHistogramInterval interval)
Sets the interval of the DateHistogram using fixed units (`1ms`, `1s`, `10m`, `4h`, etc).DateHistogramInterval
getCalendarInterval()
Returns the interval as a date time unit if and only if it was configured as a calendar interval originally.DateHistogramInterval
getFixedInterval()
Returns the interval as a fixed time unit if and only if it was configured as a fixed interval originally.java.lang.String
getType()
The name of the type of aggregation built by this builder.int
hashCode()
protected ValuesSourceAggregatorFactory<ValuesSource.Numeric,?>
innerBuild(SearchContext context, ValuesSourceConfig<ValuesSource.Numeric> config, AggregatorFactory<?> parent, AggregatorFactories.Builder subFactoriesBuilder)
protected void
innerWriteTo(StreamOutput out)
Write subclass's state to the stream.long
interval()
Deprecated.DateHistogramAggregationBuilder
interval(long interval)
Deprecated.boolean
keyed()
Return whether buckets should be returned as a hash.DateHistogramAggregationBuilder
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.long
minDocCount()
Return the minimum count of documents that buckets need to have in order to be included in the response.DateHistogramAggregationBuilder
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.long
offset()
Get the offset to use when rounding, which is a number of milliseconds.DateHistogramAggregationBuilder
offset(long offset)
Set the offset on this builder, which is a number of milliseconds, and return the builder so that calls can be chained.DateHistogramAggregationBuilder
offset(java.lang.String offset)
Set the offset on this builder, as a time value, and return the builder so that calls can be chained.BucketOrder
order()
Return the order to use to sort buckets of this histogram.DateHistogramAggregationBuilder
order(java.util.List<BucketOrder> orders)
Sets the order in which the buckets will be returned.DateHistogramAggregationBuilder
order(BucketOrder order)
Set a new order on this builder and return the builder so that calls can be chained.static DateHistogramAggregationBuilder
parse(java.lang.String aggregationName, XContentParser parser)
protected AggregationBuilder
shallowCopy(AggregatorFactories.Builder factoriesBuilder, java.util.Map<java.lang.String,java.lang.Object> metaData)
Create a shallow copy of this builder and replacingAggregationBuilder.factoriesBuilder
andmetaData
.-
Methods inherited from class org.elasticsearch.search.aggregations.support.ValuesSourceAggregationBuilder
doBuild, doWriteTo, field, field, format, format, internalXContent, missing, missing, resolveConfig, script, script, serializeTargetValueType, timeZone, timeZone, valueType, valueType
-
Methods inherited from class org.elasticsearch.search.aggregations.AbstractAggregationBuilder
build, getMetaData, getWriteableName, setMetaData, subAggregation, subAggregation, subAggregations, toXContent, writeTo
-
Methods inherited from class org.elasticsearch.search.aggregations.AggregationBuilder
doRewrite, getName, getPipelineAggregations, getSubAggregations, rewrite, toString
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.elasticsearch.common.xcontent.ToXContentFragment
isFragment
-
-
-
-
Field Detail
-
NAME
public static final java.lang.String NAME
- See Also:
- Constant Field Values
-
DATE_FIELD_UNITS
public static final java.util.Map<java.lang.String,Rounding.DateTimeUnit> DATE_FIELD_UNITS
-
-
Constructor Detail
-
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
public DateHistogramAggregationBuilder(StreamInput in) throws java.io.IOException
Read from a stream, for internal use only.- Throws:
java.io.IOException
-
-
Method Detail
-
parse
public static DateHistogramAggregationBuilder parse(java.lang.String aggregationName, XContentParser parser) throws java.io.IOException
- Throws:
java.io.IOException
-
shallowCopy
protected AggregationBuilder shallowCopy(AggregatorFactories.Builder factoriesBuilder, java.util.Map<java.lang.String,java.lang.Object> metaData)
Description copied from class:AggregationBuilder
Create a shallow copy of this builder and replacingAggregationBuilder.factoriesBuilder
andmetaData
. Used byAggregationBuilder.rewrite(QueryRewriteContext)
.- Specified by:
shallowCopy
in classAggregationBuilder
-
innerWriteTo
protected void innerWriteTo(StreamOutput out) throws java.io.IOException
Description copied from class:ValuesSourceAggregationBuilder
Write subclass's state to the stream.- Specified by:
innerWriteTo
in classValuesSourceAggregationBuilder<ValuesSource.Numeric,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:
interval
in interfaceDateIntervalConsumer
-
interval
@Deprecated public DateHistogramAggregationBuilder interval(long 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:
interval
in interfaceDateIntervalConsumer
- Since:
- 7.2.0
-
dateHistogramInterval
@Deprecated public DateHistogramInterval dateHistogramInterval()
Deprecated.Get the current date interval that is set on this builder.- Specified by:
dateHistogramInterval
in 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:
dateHistogramInterval
in interfaceDateIntervalConsumer
- Since:
- 7.2.0
-
calendarInterval
public DateHistogramAggregationBuilder calendarInterval(DateHistogramInterval interval)
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:
calendarInterval
in interfaceDateIntervalConsumer
- Parameters:
interval
- The calendar interval to use with the aggregation
-
fixedInterval
public DateHistogramAggregationBuilder fixedInterval(DateHistogramInterval interval)
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:
fixedInterval
in interfaceDateIntervalConsumer
- Parameters:
interval
- The fixed interval to use with the aggregation
-
getCalendarInterval
public DateHistogramInterval 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
public DateHistogramInterval 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
public DateHistogramAggregationBuilder offset(long offset)
Set the offset on this builder, which is a number of milliseconds, and return the builder so that calls can be chained.
-
offset
public DateHistogramAggregationBuilder offset(java.lang.String offset)
Set the offset on this builder, as a time value, and return the builder so that calls can be chained.
-
extendedBounds
public ExtendedBounds extendedBounds()
Return extended bounds for this histogram, ornull
if none are set.
-
extendedBounds
public DateHistogramAggregationBuilder extendedBounds(ExtendedBounds extendedBounds)
Set extended bounds on this histogram, so that buckets would also be generated on intervals that did not match any documents.
-
order
public BucketOrder order()
Return the order to use to sort buckets of this histogram.
-
order
public DateHistogramAggregationBuilder order(BucketOrder 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
public DateHistogramAggregationBuilder order(java.util.List<BucketOrder> orders)
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 casekeyed
is false, buckets will be returned as an array.
-
keyed
public DateHistogramAggregationBuilder 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.
-
minDocCount
public long minDocCount()
Return the minimum count of documents that buckets need to have in order to be included in the response.
-
minDocCount
public DateHistogramAggregationBuilder 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.
-
doXContentBody
protected XContentBuilder doXContentBody(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException
- Specified by:
doXContentBody
in classValuesSourceAggregationBuilder<ValuesSource.Numeric,DateHistogramAggregationBuilder>
- Throws:
java.io.IOException
-
getType
public java.lang.String getType()
Description copied from interface:BaseAggregationBuilder
The name of the type of aggregation built by this builder.- Specified by:
getType
in interfaceBaseAggregationBuilder
-
innerBuild
protected ValuesSourceAggregatorFactory<ValuesSource.Numeric,?> innerBuild(SearchContext context, ValuesSourceConfig<ValuesSource.Numeric> config, AggregatorFactory<?> parent, AggregatorFactories.Builder subFactoriesBuilder) throws java.io.IOException
- Specified by:
innerBuild
in classValuesSourceAggregationBuilder<ValuesSource.Numeric,DateHistogramAggregationBuilder>
- Throws:
java.io.IOException
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classValuesSourceAggregationBuilder<ValuesSource.Numeric,DateHistogramAggregationBuilder>
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classValuesSourceAggregationBuilder<ValuesSource.Numeric,DateHistogramAggregationBuilder>
-
-