Class DateRangeAggregationBuilder
java.lang.Object
org.opensearch.search.aggregations.AggregationBuilder
org.opensearch.search.aggregations.AbstractAggregationBuilder<AB>
org.opensearch.search.aggregations.support.ValuesSourceAggregationBuilder<AB>
org.opensearch.search.aggregations.bucket.range.AbstractRangeBuilder<DateRangeAggregationBuilder,RangeAggregator.Range>
org.opensearch.search.aggregations.bucket.range.DateRangeAggregationBuilder
- All Implemented Interfaces:
NamedWriteable
,Writeable
,org.opensearch.common.xcontent.ToXContent
,org.opensearch.common.xcontent.ToXContentFragment
,Rewriteable<AggregationBuilder>
,BaseAggregationBuilder
public class DateRangeAggregationBuilder extends AbstractRangeBuilder<DateRangeAggregationBuilder,RangeAggregator.Range>
-
Nested Class Summary
Nested classes/interfaces inherited from class org.opensearch.search.aggregations.support.ValuesSourceAggregationBuilder
ValuesSourceAggregationBuilder.LeafOnly<VS extends ValuesSource,AB extends ValuesSourceAggregationBuilder<AB>>
Nested classes/interfaces inherited from class org.opensearch.search.aggregations.AggregationBuilder
AggregationBuilder.BucketCardinality, AggregationBuilder.CommonFields
Nested classes/interfaces inherited from interface org.opensearch.common.xcontent.ToXContent
org.opensearch.common.xcontent.ToXContent.DelegatingMapParams, org.opensearch.common.xcontent.ToXContent.MapParams, org.opensearch.common.xcontent.ToXContent.Params
Nested classes/interfaces inherited from interface org.opensearch.common.io.stream.Writeable
Writeable.Reader<V>, Writeable.Writer<V>
-
Field Summary
Fields Modifier and Type Field Description static java.lang.String
NAME
static org.opensearch.common.xcontent.ObjectParser<DateRangeAggregationBuilder,java.lang.String>
PARSER
static ValuesSourceRegistry.RegistryKey<RangeAggregatorSupplier>
REGISTRY_KEY
Fields inherited from class org.opensearch.search.aggregations.bucket.range.AbstractRangeBuilder
keyed, rangeFactory, ranges
Fields inherited from class org.opensearch.search.aggregations.support.ValuesSourceAggregationBuilder
config
Fields inherited from class org.opensearch.search.aggregations.AggregationBuilder
factoriesBuilder, name
-
Constructor Summary
Constructors Modifier Constructor Description DateRangeAggregationBuilder(java.lang.String name)
DateRangeAggregationBuilder(StreamInput in)
Read from a stream.protected
DateRangeAggregationBuilder(DateRangeAggregationBuilder clone, AggregatorFactories.Builder factoriesBuilder, java.util.Map<java.lang.String,java.lang.Object> metadata)
-
Method Summary
Modifier and Type Method Description DateRangeAggregationBuilder
addRange(double from, double to)
Same asaddRange(String, double, double)
but the key will be automatically generated based onfrom
andto
.DateRangeAggregationBuilder
addRange(java.lang.String key, double from, double to)
Add a new range to this aggregation.DateRangeAggregationBuilder
addRange(java.lang.String from, java.lang.String to)
Same asaddRange(String, String, String)
but the key will be automatically generated based onfrom
andto
.DateRangeAggregationBuilder
addRange(java.lang.String key, java.lang.String from, java.lang.String to)
Add a new range to this aggregation.DateRangeAggregationBuilder
addRange(java.lang.String key, java.time.ZonedDateTime from, java.time.ZonedDateTime to)
Add a new range to this aggregation.DateRangeAggregationBuilder
addRange(java.time.ZonedDateTime from, java.time.ZonedDateTime to)
Same asaddRange(String, ZonedDateTime, ZonedDateTime)
but the key will be automatically generated based onfrom
andto
.DateRangeAggregationBuilder
addUnboundedFrom(double from)
Same asaddUnboundedFrom(String, double)
but the key will be computed automatically.DateRangeAggregationBuilder
addUnboundedFrom(java.lang.String from)
Same asaddUnboundedFrom(String, String)
but the key will be computed automatically.DateRangeAggregationBuilder
addUnboundedFrom(java.lang.String key, double from)
Add a new range with no upper bound.DateRangeAggregationBuilder
addUnboundedFrom(java.lang.String key, java.lang.String from)
Add a new range with no upper bound.DateRangeAggregationBuilder
addUnboundedFrom(java.lang.String key, java.time.ZonedDateTime from)
Add a new range with no upper bound.DateRangeAggregationBuilder
addUnboundedFrom(java.time.ZonedDateTime from)
Same asaddUnboundedFrom(String, ZonedDateTime)
but the key will be computed automatically.DateRangeAggregationBuilder
addUnboundedTo(double to)
Same asaddUnboundedTo(String, double)
but the key will be computed automatically.DateRangeAggregationBuilder
addUnboundedTo(java.lang.String to)
Same asaddUnboundedTo(String, String)
but the key will be computed automatically.DateRangeAggregationBuilder
addUnboundedTo(java.lang.String key, double to)
Add a new range with no lower bound.DateRangeAggregationBuilder
addUnboundedTo(java.lang.String key, java.lang.String to)
Add a new range with no lower bound.DateRangeAggregationBuilder
addUnboundedTo(java.lang.String key, java.time.ZonedDateTime to)
Add a new range with no lower bound.DateRangeAggregationBuilder
addUnboundedTo(java.time.ZonedDateTime to)
Same asaddUnboundedTo(String, ZonedDateTime)
but the key will be computed automatically.protected ValuesSourceType
defaultValueSourceType()
Aggregations should use this method to define aValuesSourceType
of last resort.protected ValuesSourceRegistry.RegistryKey<?>
getRegistryKey()
java.lang.String
getType()
The name of the type of aggregation built by this builder.protected DateRangeAggregatorFactory
innerBuild(QueryShardContext queryShardContext, ValuesSourceConfig config, AggregatorFactory parent, AggregatorFactories.Builder subFactoriesBuilder)
static void
registerAggregators(ValuesSourceRegistry.Builder builder)
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.opensearch.search.aggregations.bucket.range.AbstractRangeBuilder
addRange, bucketCardinality, doXContentBody, equals, hashCode, innerWriteTo, keyed, keyed, processRanges, ranges
Methods inherited from class org.opensearch.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.opensearch.search.aggregations.AbstractAggregationBuilder
build, getMetadata, getWriteableName, setMetadata, subAggregation, subAggregation, subAggregations, toXContent, writeTo
Methods inherited from class org.opensearch.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
-
REGISTRY_KEY
-
PARSER
public static final org.opensearch.common.xcontent.ObjectParser<DateRangeAggregationBuilder,java.lang.String> PARSER
-
-
Constructor Details
-
DateRangeAggregationBuilder
public DateRangeAggregationBuilder(java.lang.String name) -
DateRangeAggregationBuilder
protected DateRangeAggregationBuilder(DateRangeAggregationBuilder clone, AggregatorFactories.Builder factoriesBuilder, java.util.Map<java.lang.String,java.lang.Object> metadata) -
DateRangeAggregationBuilder
Read from a stream.- 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:AggregationBuilder
Create a shallow copy of this builder and replacingAggregationBuilder.factoriesBuilder
andmetadata
. Used byAggregationBuilder.rewrite(QueryRewriteContext)
.- Specified by:
shallowCopy
in classAggregationBuilder
-
getType
public java.lang.String getType()Description copied from interface:BaseAggregationBuilder
The name of the type of aggregation built by this builder. -
getRegistryKey
- Specified by:
getRegistryKey
in classValuesSourceAggregationBuilder<DateRangeAggregationBuilder>
-
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
public DateRangeAggregationBuilder addRange(java.lang.String key, java.lang.String from, java.lang.String to)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
public DateRangeAggregationBuilder addRange(java.lang.String key, java.time.ZonedDateTime from, java.time.ZonedDateTime to)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
public DateRangeAggregationBuilder addRange(java.time.ZonedDateTime from, java.time.ZonedDateTime to)Same asaddRange(String, ZonedDateTime, ZonedDateTime)
but the key will be automatically generated based onfrom
andto
. -
addUnboundedTo
public DateRangeAggregationBuilder addUnboundedTo(java.lang.String key, java.time.ZonedDateTime to)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
public DateRangeAggregationBuilder addUnboundedFrom(java.lang.String key, java.time.ZonedDateTime from)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(QueryShardContext queryShardContext, ValuesSourceConfig config, AggregatorFactory parent, AggregatorFactories.Builder subFactoriesBuilder) throws java.io.IOException- Specified by:
innerBuild
in classValuesSourceAggregationBuilder<DateRangeAggregationBuilder>
- Throws:
java.io.IOException
-