Class InternalHistogram
- java.lang.Object
-
- org.elasticsearch.search.aggregations.InternalAggregation
-
- org.elasticsearch.search.aggregations.InternalMultiBucketAggregation<InternalHistogram,InternalHistogram.Bucket>
-
- org.elasticsearch.search.aggregations.bucket.histogram.InternalHistogram
-
- All Implemented Interfaces:
NamedWriteable
,Writeable
,ToXContent
,ToXContentFragment
,Aggregation
,Histogram
,HistogramFactory
,MultiBucketsAggregation
public final class InternalHistogram extends InternalMultiBucketAggregation<InternalHistogram,InternalHistogram.Bucket> implements Histogram, HistogramFactory
Implementation ofHistogram
.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
InternalHistogram.Bucket
-
Nested classes/interfaces inherited from class org.elasticsearch.search.aggregations.InternalMultiBucketAggregation
InternalMultiBucketAggregation.InternalBucket
-
Nested classes/interfaces inherited from class org.elasticsearch.search.aggregations.InternalAggregation
InternalAggregation.ReduceContext
-
Nested classes/interfaces inherited from interface org.elasticsearch.search.aggregations.Aggregation
Aggregation.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.InternalAggregation
metaData, name
-
Fields inherited from interface org.elasticsearch.search.aggregations.Aggregation
TYPED_KEYS_DELIMITER
-
Fields inherited from interface org.elasticsearch.search.aggregations.bucket.histogram.Histogram
EXTENDED_BOUNDS_FIELD, INTERVAL_FIELD, KEYED_FIELD, MIN_DOC_COUNT_FIELD, OFFSET_FIELD, ORDER_FIELD
-
Fields inherited from interface org.elasticsearch.common.xcontent.ToXContent
EMPTY_PARAMS
-
-
Constructor Summary
Constructors Constructor Description InternalHistogram(StreamInput in)
Stream from a stream.
-
Method Summary
Modifier and Type Method Description InternalHistogram
create(java.util.List<InternalHistogram.Bucket> buckets)
Create a new copy of thisAggregation
with the same settings as thisAggregation
and contains the provided buckets.InternalAggregation
createAggregation(java.util.List<MultiBucketsAggregation.Bucket> buckets)
Create anInternalAggregation
object that wraps the given buckets.InternalHistogram.Bucket
createBucket(java.lang.Number key, long docCount, InternalAggregations aggregations)
Create aMultiBucketsAggregation.Bucket
object that wraps the given key, document count and aggregations.InternalHistogram.Bucket
createBucket(InternalAggregations aggregations, InternalHistogram.Bucket prototype)
Create a newInternalMultiBucketAggregation.InternalBucket
using the provided prototype bucket and aggregations.InternalAggregation
doReduce(java.util.List<InternalAggregation> aggregations, InternalAggregation.ReduceContext reduceContext)
protected void
doWriteTo(StreamOutput out)
XContentBuilder
doXContentBody(XContentBuilder builder, ToXContent.Params params)
boolean
equals(java.lang.Object obj)
java.util.List<InternalHistogram.Bucket>
getBuckets()
java.lang.Number
getKey(MultiBucketsAggregation.Bucket bucket)
Get the key for the given bucket.java.lang.String
getWriteableName()
Returns the name of the writeable objectint
hashCode()
java.lang.Number
nextKey(java.lang.Number key)
Given a key returned byHistogramFactory.getKey(org.elasticsearch.search.aggregations.bucket.MultiBucketsAggregation.Bucket)
, compute the lowest key that is greater than it.protected InternalHistogram.Bucket
reduceBucket(java.util.List<InternalHistogram.Bucket> buckets, InternalAggregation.ReduceContext context)
Reduce a list of same-keyed buckets (from multiple shards) to a single bucket.-
Methods inherited from class org.elasticsearch.search.aggregations.InternalMultiBucketAggregation
countInnerBucket, countInnerBucket, getProperty
-
Methods inherited from class org.elasticsearch.search.aggregations.InternalAggregation
getMetaData, getName, getProperty, getType, isMapped, pipelineAggregators, readSize, reduce, toString, toXContent, writeSize, writeTo
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.elasticsearch.search.aggregations.Aggregation
getMetaData, getName, getType
-
Methods inherited from interface org.elasticsearch.common.xcontent.ToXContent
toXContent
-
Methods inherited from interface org.elasticsearch.common.xcontent.ToXContentFragment
isFragment
-
-
-
-
Constructor Detail
-
InternalHistogram
public InternalHistogram(StreamInput in) throws java.io.IOException
Stream from a stream.- Throws:
java.io.IOException
-
-
Method Detail
-
doWriteTo
protected void doWriteTo(StreamOutput out) throws java.io.IOException
- Specified by:
doWriteTo
in classInternalAggregation
- Throws:
java.io.IOException
-
getWriteableName
public java.lang.String getWriteableName()
Description copied from interface:NamedWriteable
Returns the name of the writeable object- Specified by:
getWriteableName
in interfaceNamedWriteable
-
getBuckets
public java.util.List<InternalHistogram.Bucket> getBuckets()
- Specified by:
getBuckets
in interfaceHistogram
- Specified by:
getBuckets
in interfaceMultiBucketsAggregation
- Specified by:
getBuckets
in classInternalMultiBucketAggregation<InternalHistogram,InternalHistogram.Bucket>
- Returns:
- The buckets of this aggregation.
-
create
public InternalHistogram create(java.util.List<InternalHistogram.Bucket> buckets)
Description copied from class:InternalMultiBucketAggregation
Create a new copy of thisAggregation
with the same settings as thisAggregation
and contains the provided buckets.- Specified by:
create
in classInternalMultiBucketAggregation<InternalHistogram,InternalHistogram.Bucket>
- Parameters:
buckets
- the buckets to use in the newAggregation
- Returns:
- the new
Aggregation
-
createBucket
public InternalHistogram.Bucket createBucket(InternalAggregations aggregations, InternalHistogram.Bucket prototype)
Description copied from class:InternalMultiBucketAggregation
Create a newInternalMultiBucketAggregation.InternalBucket
using the provided prototype bucket and aggregations.- Specified by:
createBucket
in classInternalMultiBucketAggregation<InternalHistogram,InternalHistogram.Bucket>
- Parameters:
aggregations
- the aggregations for the new bucketprototype
- the bucket to use as a prototype- Returns:
- the new bucket
-
reduceBucket
protected InternalHistogram.Bucket reduceBucket(java.util.List<InternalHistogram.Bucket> buckets, InternalAggregation.ReduceContext context)
Description copied from class:InternalMultiBucketAggregation
Reduce a list of same-keyed buckets (from multiple shards) to a single bucket. This requires all buckets to have the same key.- Specified by:
reduceBucket
in classInternalMultiBucketAggregation<InternalHistogram,InternalHistogram.Bucket>
-
doReduce
public InternalAggregation doReduce(java.util.List<InternalAggregation> aggregations, InternalAggregation.ReduceContext reduceContext)
- Specified by:
doReduce
in classInternalAggregation
-
doXContentBody
public XContentBuilder doXContentBody(XContentBuilder builder, ToXContent.Params params) throws java.io.IOException
- Specified by:
doXContentBody
in classInternalAggregation
- Throws:
java.io.IOException
-
getKey
public java.lang.Number getKey(MultiBucketsAggregation.Bucket bucket)
Description copied from interface:HistogramFactory
Get the key for the given bucket. Date histograms must return the number of millis since Epoch of the bucket key while numeric histograms must return the double value of the key.- Specified by:
getKey
in interfaceHistogramFactory
-
nextKey
public java.lang.Number nextKey(java.lang.Number key)
Description copied from interface:HistogramFactory
Given a key returned byHistogramFactory.getKey(org.elasticsearch.search.aggregations.bucket.MultiBucketsAggregation.Bucket)
, compute the lowest key that is greater than it.- Specified by:
nextKey
in interfaceHistogramFactory
-
createAggregation
public InternalAggregation createAggregation(java.util.List<MultiBucketsAggregation.Bucket> buckets)
Description copied from interface:HistogramFactory
Create anInternalAggregation
object that wraps the given buckets.- Specified by:
createAggregation
in interfaceHistogramFactory
-
createBucket
public InternalHistogram.Bucket createBucket(java.lang.Number key, long docCount, InternalAggregations aggregations)
Description copied from interface:HistogramFactory
Create aMultiBucketsAggregation.Bucket
object that wraps the given key, document count and aggregations.- Specified by:
createBucket
in interfaceHistogramFactory
-
equals
public boolean equals(java.lang.Object obj)
- Overrides:
equals
in classInternalAggregation
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classInternalAggregation
-
-