Module org.elasticsearch.server
Class DateRangeAggregationBuilder
java.lang.Object
org.elasticsearch.search.aggregations.AggregationBuilder
org.elasticsearch.search.aggregations.AbstractAggregationBuilder<AB>
org.elasticsearch.search.aggregations.support.ValuesSourceAggregationBuilder<AB>
org.elasticsearch.search.aggregations.bucket.range.AbstractRangeBuilder<DateRangeAggregationBuilder,RangeAggregator.Range>
org.elasticsearch.search.aggregations.bucket.range.DateRangeAggregationBuilder
- All Implemented Interfaces:
NamedWriteable
,VersionedNamedWriteable
,Writeable
,Rewriteable<AggregationBuilder>
,BaseAggregationBuilder
,ToXContent
,ToXContentFragment
public class DateRangeAggregationBuilder
extends AbstractRangeBuilder<DateRangeAggregationBuilder,RangeAggregator.Range>
-
Nested Class Summary
Nested classes/interfaces inherited from class org.elasticsearch.search.aggregations.support.ValuesSourceAggregationBuilder
ValuesSourceAggregationBuilder.LeafOnly<VS extends ValuesSource,
AB extends ValuesSourceAggregationBuilder<AB>>, ValuesSourceAggregationBuilder.MetricsAggregationBuilder<VS extends ValuesSource, AB extends ValuesSourceAggregationBuilder<AB>>, ValuesSourceAggregationBuilder.SingleMetricAggregationBuilder<VS extends ValuesSource, AB extends ValuesSourceAggregationBuilder<AB>> Nested classes/interfaces inherited from class org.elasticsearch.search.aggregations.AggregationBuilder
AggregationBuilder.BucketCardinality, AggregationBuilder.CommonFields
Nested classes/interfaces inherited from interface org.elasticsearch.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
Modifier and TypeFieldDescriptionstatic final String
static final ObjectParser<DateRangeAggregationBuilder,
String> static final ValuesSourceRegistry.RegistryKey<RangeAggregatorSupplier>
Fields inherited from class org.elasticsearch.search.aggregations.bucket.range.AbstractRangeBuilder
keyed, rangeFactory, ranges
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
DEFAULT_PREALLOCATION, factoriesBuilder, name
Fields inherited from interface org.elasticsearch.index.query.Rewriteable
MAX_REWRITE_ROUNDS
Fields inherited from interface org.elasticsearch.xcontent.ToXContent
EMPTY_PARAMS
-
Constructor Summary
ModifierConstructorDescriptionRead from a stream.protected
DateRangeAggregationBuilder
(DateRangeAggregationBuilder clone, AggregatorFactories.Builder factoriesBuilder, Map<String, Object> metadata) -
Method Summary
Modifier and TypeMethodDescriptionaddRange
(double from, double to) Same asaddRange(String, double, double)
but the key will be automatically generated based onfrom
andto
.Add a new range to this aggregation.Same asaddRange(String, String, String)
but the key will be automatically generated based onfrom
andto
.Add a new range to this aggregation.addRange
(String key, ZonedDateTime from, ZonedDateTime to) Add a new range to this aggregation.addRange
(ZonedDateTime from, ZonedDateTime to) Same asaddRange(String, ZonedDateTime, ZonedDateTime)
but the key will be automatically generated based onfrom
andto
.addUnboundedFrom
(double from) Same asaddUnboundedFrom(String, double)
but the key will be computed automatically.addUnboundedFrom
(String from) Same asaddUnboundedFrom(String, String)
but the key will be computed automatically.addUnboundedFrom
(String key, double from) Add a new range with no upper bound.addUnboundedFrom
(String key, String from) Add a new range with no upper bound.addUnboundedFrom
(String key, ZonedDateTime from) Add a new range with no upper bound.Same asaddUnboundedFrom(String, ZonedDateTime)
but the key will be computed automatically.addUnboundedTo
(double to) Same asaddUnboundedTo(String, double)
but the key will be computed automatically.addUnboundedTo
(String to) Same asaddUnboundedTo(String, String)
but the key will be computed automatically.addUnboundedTo
(String key, double to) Add a new range with no lower bound.addUnboundedTo
(String key, String to) Add a new range with no lower bound.addUnboundedTo
(String key, ZonedDateTime to) Add a new range with no lower bound.Same asaddUnboundedTo(String, ZonedDateTime)
but the key will be computed automatically.protected ValuesSourceType
Aggregations should use this method to define aValuesSourceType
of last resort.The minimal version of the recipient this object can be sent toprotected ValuesSourceRegistry.RegistryKey<?>
getType()
The name of the type of aggregation built by this builder.protected DateRangeAggregatorFactory
innerBuild
(AggregationContext context, ValuesSourceConfig config, AggregatorFactory parent, AggregatorFactories.Builder subFactoriesBuilder) static void
protected AggregationBuilder
shallowCopy
(AggregatorFactories.Builder factoriesBuilder, Map<String, Object> metadata) Create a shallow copy of this builder and replacingAggregationBuilder.factoriesBuilder
andmetadata
.Methods inherited from class org.elasticsearch.search.aggregations.bucket.range.AbstractRangeBuilder
addRange, bucketCardinality, doXContentBody, equals, hashCode, innerWriteTo, keyed, keyed, processRanges, ranges, supportsSampling
Methods inherited from class org.elasticsearch.search.aggregations.support.ValuesSourceAggregationBuilder
declareFields, declareFields, doBuild, doWriteTo, field, field, format, format, internalXContent, missing, missing, resolveConfig, script, script, serializeTargetValueType, timeZone, timeZone, userValueTypeHint, userValueTypeHint
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
buildPipelineTree, bytesToPreallocate, doRewrite, getName, getOutputFieldNames, getPipelineAggregations, getSubAggregations, isInSortOrderExecutionRequired, rewrite, toString, validateSequentiallyOrdered, validateSequentiallyOrderedWithoutGaps
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.elasticsearch.xcontent.ToXContentFragment
isFragment
-
Field Details
-
NAME
- See Also:
-
REGISTRY_KEY
-
PARSER
-
-
Constructor Details
-
DateRangeAggregationBuilder
-
DateRangeAggregationBuilder
protected DateRangeAggregationBuilder(DateRangeAggregationBuilder clone, AggregatorFactories.Builder factoriesBuilder, Map<String, Object> metadata) -
DateRangeAggregationBuilder
Read from a stream.- Throws:
IOException
-
-
Method Details
-
registerAggregators
-
shallowCopy
protected AggregationBuilder shallowCopy(AggregatorFactories.Builder factoriesBuilder, Map<String, 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
-
getType
Description copied from interface:BaseAggregationBuilder
The name of the type of aggregation built by this builder. -
getRegistryKey
- Specified by:
getRegistryKey
in classValuesSourceAggregationBuilder<DateRangeAggregationBuilder>
-
getMinimalSupportedVersion
Description copied from interface:VersionedNamedWriteable
The minimal version of the recipient this object can be sent to -
defaultValueSourceType
Description copied from class:ValuesSourceAggregationBuilder
Aggregations should use this method to define aValuesSourceType
of 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.- Overrides:
defaultValueSourceType
in classAbstractRangeBuilder<DateRangeAggregationBuilder,
RangeAggregator.Range> - Returns:
- The CoreValuesSourceType we expect this script to yield.
-
addRange
Add a new range to this aggregation.- Parameters:
key
- the key to use for this range in the responsefrom
- the lower bound on the dates, inclusiveto
- the upper bound on the dates, exclusive
-
addRange
Same asaddRange(String, String, String)
but the key will be automatically generated based onfrom
andto
. -
addUnboundedTo
Add a new range with no lower bound.- Parameters:
key
- the key to use for this range in the responseto
- the upper bound on the dates, exclusive
-
addUnboundedTo
Same asaddUnboundedTo(String, String)
but the key will be computed automatically. -
addUnboundedFrom
Add a new range with no upper bound.- Parameters:
key
- the key to use for this range in the responsefrom
- the lower bound on the distances, inclusive
-
addUnboundedFrom
Same asaddUnboundedFrom(String, String)
but the key will be computed automatically. -
addRange
Add a new range to this aggregation.- Parameters:
key
- the key to use for this range in the responsefrom
- the lower bound on the dates, inclusiveto
- the upper bound on the dates, exclusive
-
addRange
Same asaddRange(String, double, double)
but the key will be automatically generated based onfrom
andto
. -
addUnboundedTo
Add a new range with no lower bound.- Parameters:
key
- the key to use for this range in the responseto
- the upper bound on the dates, exclusive
-
addUnboundedTo
Same asaddUnboundedTo(String, double)
but the key will be computed automatically. -
addUnboundedFrom
Add a new range with no upper bound.- Parameters:
key
- the key to use for this range in the responsefrom
- the lower bound on the distances, inclusive
-
addUnboundedFrom
Same asaddUnboundedFrom(String, double)
but the key will be computed automatically. -
addRange
Add a new range to this aggregation.- Parameters:
key
- the key to use for this range in the responsefrom
- the lower bound on the dates, inclusiveto
- the upper bound on the dates, exclusive
-
addRange
Same asaddRange(String, ZonedDateTime, ZonedDateTime)
but the key will be automatically generated based onfrom
andto
. -
addUnboundedTo
Add a new range with no lower bound.- Parameters:
key
- the key to use for this range in the responseto
- the upper bound on the dates, exclusive
-
addUnboundedTo
Same asaddUnboundedTo(String, ZonedDateTime)
but the key will be computed automatically. -
addUnboundedFrom
Add a new range with no upper bound.- Parameters:
key
- the key to use for this range in the responsefrom
- the lower bound on the distances, inclusive
-
addUnboundedFrom
Same asaddUnboundedFrom(String, ZonedDateTime)
but the key will be computed automatically. -
innerBuild
protected DateRangeAggregatorFactory innerBuild(AggregationContext context, ValuesSourceConfig config, AggregatorFactory parent, AggregatorFactories.Builder subFactoriesBuilder) throws IOException - Specified by:
innerBuild
in classValuesSourceAggregationBuilder<DateRangeAggregationBuilder>
- Throws:
IOException
-