Module spring.data.mongodb
Class ScriptOperators.Accumulator
java.lang.Object
org.springframework.data.mongodb.core.aggregation.ScriptOperators.Accumulator
- All Implemented Interfaces:
AggregationExpression,MongoExpression
- Enclosing class:
- ScriptOperators
ScriptOperators.Accumulator defines a custom aggregation
$accumulator operator,
one that maintains its state (e.g. totals, maximums, minimums, and related data) as documents progress through the
pipeline, in JavaScript.
{
$accumulator: {
init: ...,
intArgs: ...,
accumulate: ...,
accumulateArgs: ...,
merge: ...,
finalize: ...,
lang: "js"
}
}
ScriptOperators.Accumulator can be used as part of $group, $bucket and
$bucketAuto pipeline stages. NOTE: Server-Side JavaScript execution must be enabled
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic interfacestatic interfacestatic interfacestatic interfacestatic interfacestatic interface -
Method Summary
Modifier and TypeMethodDescriptionappend(Object value, org.springframework.data.mongodb.core.aggregation.AbstractAggregationExpression.Expand expandList) Append the given key at the position in the underlyingLinkedHashMap.Get the argument map.protected booleanCheck if the given key is available.protected <T> Tget(int index) Get the value at a given index.protected <T> TGet the value for a given key.protected Stringprotected booleanorg.bson.DocumenttoDocument(Object value, AggregationOperationContext context) org.bson.DocumenttoDocument(AggregationOperationContext context) values()Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.springframework.data.mongodb.core.aggregation.AggregationExpression
toDocument
-
Method Details
-
getMongoMethod
-
toDocument
Description copied from interface:AggregationExpression- Specified by:
toDocumentin interfaceAggregationExpression- Parameters:
context- must not be null.- Returns:
- the MongoDB native (
Document) form of the expression.
-
toDocument
-
asFields
-
append
-
append
-
append
-
appendTo
-
remove
-
appendAt
Append the given key at the position in the underlyingLinkedHashMap.- Parameters:
index-key-value-- Returns:
- Since:
- 3.1
-
values
-
get
protected <T> T get(int index) Get the value at a given index.- Type Parameters:
T-- Parameters:
index-- Returns:
- Since:
- 2.1
-
get
Get the value for a given key.- Type Parameters:
T-- Parameters:
key-- Returns:
- Since:
- 2.1
-
isArgumentMap
protected boolean isArgumentMap() -
argumentMap
Get the argument map.- Returns:
- Since:
- 2.1
-
contains
Check if the given key is available.- Parameters:
key-- Returns:
- Since:
- 2.1
-