Class MultiValuesSourceAggregationBuilder<VS extends ValuesSource,AB extends MultiValuesSourceAggregationBuilder<VS,AB>>
java.lang.Object
org.elasticsearch.search.aggregations.AggregationBuilder
org.elasticsearch.search.aggregations.AbstractAggregationBuilder<AB>
org.elasticsearch.search.aggregations.support.MultiValuesSourceAggregationBuilder<VS,AB>
- All Implemented Interfaces:
NamedWriteable
,Writeable
,ToXContent
,ToXContentFragment
,BaseAggregationBuilder
- Direct Known Subclasses:
MultiValuesSourceAggregationBuilder.LeafOnly
public abstract class MultiValuesSourceAggregationBuilder<VS extends ValuesSource,AB extends MultiValuesSourceAggregationBuilder<VS,AB>> extends AbstractAggregationBuilder<AB>
Similar to
ValuesSourceAggregationBuilder
, except it references multiple ValuesSources (e.g. so that an aggregation
can pull values from multiple fields).
A limitation of this class is that all the ValuesSource's being refereenced must be of the same type.-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
MultiValuesSourceAggregationBuilder.LeafOnly<VS extends ValuesSource,AB extends MultiValuesSourceAggregationBuilder<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 inherited from class org.elasticsearch.search.aggregations.AbstractAggregationBuilder
metaData
Fields inherited from class org.elasticsearch.search.aggregations.AggregationBuilder
factoriesBuilder, name
-
Constructor Summary
Constructors Modifier Constructor Description protected
MultiValuesSourceAggregationBuilder(java.lang.String name, ValueType targetValueType)
protected
MultiValuesSourceAggregationBuilder(StreamInput in, ValueType targetValueType)
protected
MultiValuesSourceAggregationBuilder(MultiValuesSourceAggregationBuilder<VS,AB> clone, AggregatorFactories.Builder factoriesBuilder, java.util.Map<java.lang.String,java.lang.Object> metaData)
-
Method Summary
Modifier and Type Method Description protected MultiValuesSourceAggregatorFactory<VS>
doBuild(QueryShardContext queryShardContext, AggregatorFactory parent, AggregatorFactories.Builder subFactoriesBuilder)
protected void
doWriteTo(StreamOutput out)
protected abstract XContentBuilder
doXContentBody(XContentBuilder builder, ToXContent.Params params)
boolean
equals(java.lang.Object obj)
protected AB
field(java.lang.String propertyName, MultiValuesSourceFieldConfig config)
AB
format(java.lang.String format)
Sets the format to use for the output of the aggregation.int
hashCode()
protected abstract MultiValuesSourceAggregatorFactory<VS>
innerBuild(QueryShardContext queryShardContext, java.util.Map<java.lang.String,ValuesSourceConfig<VS>> configs, DocValueFormat format, AggregatorFactory parent, AggregatorFactories.Builder subFactoriesBuilder)
protected abstract void
innerWriteTo(StreamOutput out)
Write subclass' state to the streamXContentBuilder
internalXContent(XContentBuilder builder, ToXContent.Params params)
protected boolean
serializeTargetValueType()
Should this builder serialize its targetValueType? Defaults to false.AB
valueType(ValueType valueType)
Sets theValueType
for the value produced by this aggregationMethods 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, doRewrite, getName, getPipelineAggregations, getSubAggregations, rewrite, shallowCopy, toString
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.elasticsearch.search.aggregations.BaseAggregationBuilder
getType
-
Constructor Details
-
MultiValuesSourceAggregationBuilder
-
MultiValuesSourceAggregationBuilder
protected MultiValuesSourceAggregationBuilder(MultiValuesSourceAggregationBuilder<VS,AB> clone, AggregatorFactories.Builder factoriesBuilder, java.util.Map<java.lang.String,java.lang.Object> metaData) -
MultiValuesSourceAggregationBuilder
protected MultiValuesSourceAggregationBuilder(StreamInput in, ValueType targetValueType) throws java.io.IOException- Throws:
java.io.IOException
-
-
Method Details
-
doWriteTo
- Specified by:
doWriteTo
in classAbstractAggregationBuilder<AB extends MultiValuesSourceAggregationBuilder<VS,AB>>
- Throws:
java.io.IOException
-
innerWriteTo
Write subclass' state to the stream- Throws:
java.io.IOException
-
field
-
valueType
Sets theValueType
for the value produced by this aggregation -
format
Sets the format to use for the output of the aggregation. -
doBuild
protected final MultiValuesSourceAggregatorFactory<VS> doBuild(QueryShardContext queryShardContext, AggregatorFactory parent, AggregatorFactories.Builder subFactoriesBuilder) throws java.io.IOException- Specified by:
doBuild
in classAbstractAggregationBuilder<AB extends MultiValuesSourceAggregationBuilder<VS,AB>>
- Throws:
java.io.IOException
-
innerBuild
protected abstract MultiValuesSourceAggregatorFactory<VS> innerBuild(QueryShardContext queryShardContext, java.util.Map<java.lang.String,ValuesSourceConfig<VS>> configs, DocValueFormat format, AggregatorFactory parent, AggregatorFactories.Builder subFactoriesBuilder) throws java.io.IOException- Throws:
java.io.IOException
-
serializeTargetValueType
protected boolean serializeTargetValueType()Should this builder serialize its targetValueType? Defaults to false. All subclasses that override this to true should use the three argument read constructor rather than the four argument version. -
internalXContent
public final XContentBuilder internalXContent(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException- Specified by:
internalXContent
in classAbstractAggregationBuilder<AB extends MultiValuesSourceAggregationBuilder<VS,AB>>
- Throws:
java.io.IOException
-
doXContentBody
protected abstract XContentBuilder doXContentBody(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException- Throws:
java.io.IOException
-
hashCode
public int hashCode()- Overrides:
hashCode
in classAbstractAggregationBuilder<AB extends MultiValuesSourceAggregationBuilder<VS,AB>>
-
equals
public boolean equals(java.lang.Object obj)- Overrides:
equals
in classAbstractAggregationBuilder<AB extends MultiValuesSourceAggregationBuilder<VS,AB>>
-