public class BucketAutoOperation extends BucketOperationSupport<BucketAutoOperation,BucketAutoOperation.BucketAutoOperationOutputBuilder> implements FieldsExposingAggregationOperation
$bucketAuto
-operation. Aggregation
and $facet
. Categorizes incoming documents into a
specific number of groups, called buckets, based on a specified expression. Bucket boundaries are automatically
determined in an attempt to evenly distribute the documents into the specified number of buckets. Aggregation.bucketAuto(String, int)
instead of creating
instances of this class directly.BucketOperationSupport
Modifier and Type | Class and Description |
---|---|
static class |
BucketAutoOperation.BucketAutoOperationOutputBuilder
BucketOperationSupport.OutputBuilder implementation for BucketAutoOperation . |
static class |
BucketAutoOperation.ExpressionBucketAutoOperationBuilder
ExpressionBucketOperationBuilderSupport implementation for BucketAutoOperation using SpEL
expression based Output . |
static class |
BucketAutoOperation.Granularities
Supported MongoDB granularities.
|
static interface |
BucketAutoOperation.Granularity |
BucketOperationSupport.ExpressionBucketOperationBuilderSupport<B extends BucketOperationSupport.OutputBuilder<B,T>,T extends BucketOperationSupport<T,B>>, BucketOperationSupport.OperationOutput, BucketOperationSupport.Output, BucketOperationSupport.OutputBuilder<B extends BucketOperationSupport.OutputBuilder<B,T>,T extends BucketOperationSupport<T,B>>, BucketOperationSupport.Outputs
FieldsExposingAggregationOperation.InheritsFieldsAggregationOperation
Constructor and Description |
---|
BucketAutoOperation(AggregationExpression groupByExpression,
int buckets)
Creates a new
BucketAutoOperation given a group-by expression . |
BucketAutoOperation(Field groupByField,
int buckets)
Creates a new
BucketAutoOperation given a group-by field . |
Modifier and Type | Method and Description |
---|---|
BucketAutoOperation.BucketAutoOperationOutputBuilder |
andOutput(AggregationExpression expression)
Creates a new
BucketOperationSupport given an AggregationExpression to add an output field to the
resulting bucket documents. |
BucketAutoOperation.BucketAutoOperationOutputBuilder |
andOutput(String fieldName)
Creates a new
BucketOperationSupport given fieldName to add an output field to the resulting
bucket documents. |
BucketAutoOperation.ExpressionBucketAutoOperationBuilder |
andOutputExpression(String expression,
Object... params)
Creates a new
BucketOperationSupport.ExpressionBucketOperationBuilderSupport given a SpEL expression and optional
params to add an output field to the resulting bucket documents. |
protected BucketAutoOperation |
newBucketOperation(BucketOperationSupport.Outputs outputs)
Implementation hook to create a new bucket operation.
|
com.mongodb.DBObject |
toDBObject(AggregationOperationContext context)
|
BucketAutoOperation |
withBuckets(int buckets)
Configures a number of bucket buckets and return a new
BucketAutoOperation . |
BucketAutoOperation |
withGranularity(BucketAutoOperation.Granularity granularity)
Configures
granularity that specifies the preferred number series to use to ensure that the
calculated boundary edges end on preferred round numbers or their powers of 10 and return a new
BucketAutoOperation . |
andOutput, andOutputCount, getFields
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getFields
public BucketAutoOperation(Field groupByField, int buckets)
BucketAutoOperation
given a group-by field
.groupByField
- must not be null.buckets
- number of buckets, must be a positive integer.public BucketAutoOperation(AggregationExpression groupByExpression, int buckets)
BucketAutoOperation
given a group-by expression
.groupByExpression
- must not be null.buckets
- number of buckets, must be a positive integer.public com.mongodb.DBObject toDBObject(AggregationOperationContext context)
AggregationOperation
toDBObject
in interface AggregationOperation
toDBObject
in class BucketOperationSupport<BucketAutoOperation,BucketAutoOperation.BucketAutoOperationOutputBuilder>
public BucketAutoOperation withBuckets(int buckets)
BucketAutoOperation
.buckets
- must be a positive number.public BucketAutoOperation withGranularity(BucketAutoOperation.Granularity granularity)
granularity
that specifies the preferred number series to use to ensure that the
calculated boundary edges end on preferred round numbers or their powers of 10 and return a new
BucketAutoOperation
. BucketAutoOperation.Granularities
or provide a own one.granularity
- must not be null.protected BucketAutoOperation newBucketOperation(BucketOperationSupport.Outputs outputs)
BucketOperationSupport
newBucketOperation
in class BucketOperationSupport<BucketAutoOperation,BucketAutoOperation.BucketAutoOperationOutputBuilder>
outputs
- the outputspublic BucketAutoOperation.ExpressionBucketAutoOperationBuilder andOutputExpression(String expression, Object... params)
BucketOperationSupport
BucketOperationSupport.ExpressionBucketOperationBuilderSupport
given a SpEL expression and optional
params to add an output field to the resulting bucket documents.andOutputExpression
in class BucketOperationSupport<BucketAutoOperation,BucketAutoOperation.BucketAutoOperationOutputBuilder>
expression
- the SpEL expression, must not be null or empty.params
- must not be nullpublic BucketAutoOperation.BucketAutoOperationOutputBuilder andOutput(AggregationExpression expression)
BucketOperationSupport
BucketOperationSupport
given an AggregationExpression
to add an output field to the
resulting bucket documents.andOutput
in class BucketOperationSupport<BucketAutoOperation,BucketAutoOperation.BucketAutoOperationOutputBuilder>
expression
- the SpEL expression, must not be null or empty.public BucketAutoOperation.BucketAutoOperationOutputBuilder andOutput(String fieldName)
BucketOperationSupport
BucketOperationSupport
given fieldName to add an output field to the resulting
bucket documents. BucketOperationSupport
exposes accumulation operations that can be applied to
fieldName.andOutput
in class BucketOperationSupport<BucketAutoOperation,BucketAutoOperation.BucketAutoOperationOutputBuilder>
fieldName
- must not be null or empty.Copyright © 2011–2017 Pivotal Software, Inc.. All rights reserved.