Class ArrayExpressions
java.lang.Object
dev.morphia.aggregation.expressions.ArrayExpressions
Defines helper methods for the array expressions
- Since:
- 2.0
-
Method Summary
Modifier and TypeMethodDescriptionstatic Expression
Creates an array of the given objects.static Expression
arrayToObject
(Object array) Converts an array of key value pairs to a document.static Expression
concatArrays
(Object array, Object... additional) Concatenates arrays to return the concatenated array.static Expression
Returns the element at the specified array index.static Expression
Returns a boolean indicating whether a specified value is in an array.static ArrayIndexExpression
indexOfArray
(Object array, Object search) Searches an array for an occurrence of a specified value and returns the array index of the first occurrence.static Expression
Determines if the operand is an array.static MapExpression
Applies a subexpression to each element of an array and returns the array of resulting values in order.static Expression
objectToArray
(Object array) Converts a document to an array of documents representing key-value pairs.static RangeExpression
range
(int start, int end) Outputs an array containing a sequence of integers according to user-defined inputs.static RangeExpression
Outputs an array containing a sequence of integers according to user-defined inputs.static Expression
Applies an expression to each element in an array and combines them into a single value.static Expression
reverseArray
(Object array) Returns an array with the elements in reverse order.static Expression
Counts and returns the total number of items in an array.static Expression
Returns a subset of an array.static Expression
Sorts an array based on its elements.static ZipExpression
Merge two arrays together.
-
Method Details
-
array
Creates an array of the given objects. This method is an experiment in accepting a wider breadth of types and finding the expressions at encoding time and dealing with them appropriately. There might be bugs in this approach. This method might go away. But it's useful in some Morphia tests, at least.- Parameters:
objects
- the objects- Returns:
- the new expression
- Since:
- 2.3
Developer note.This is an experimental item. Its function and presence are subject to change. Feedback on features and usability extremely welcome. -
arrayToObject
Converts an array of key value pairs to a document.- Parameters:
array
- the array to use- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $arrayToObject
-
concatArrays
Concatenates arrays to return the concatenated array.- Parameters:
array
- the array to useadditional
- any additional arrays to concatenate- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $concatArrays
-
elementAt
Returns the element at the specified array index.- Parameters:
array
- the array to useindex
- the index to return- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $arrayElemAt
-
in
Returns a boolean indicating whether a specified value is in an array.- Parameters:
search
- the expression to search forarray
- the array to use- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $in
-
indexOfArray
Searches an array for an occurrence of a specified value and returns the array index of the first occurrence. If the substring is not found, returns -1.- Parameters:
array
- the array to usesearch
- the expression to search for- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $indexOfArray
-
isArray
Determines if the operand is an array. Returns a boolean.- Parameters:
array
- the array to use- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $isArray
-
map
Applies a subexpression to each element of an array and returns the array of resulting values in order. Accepts named parameters.- Parameters:
input
- the array to usein
- An expression that is applied to each element of the input array.- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $map
-
objectToArray
Converts a document to an array of documents representing key-value pairs.- Parameters:
array
- the array to use- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $objectToArray
-
range
Outputs an array containing a sequence of integers according to user-defined inputs.- Parameters:
start
- the starting valueend
- the ending value- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $range
-
range
Outputs an array containing a sequence of integers according to user-defined inputs.- Parameters:
start
- the starting valueend
- the ending value- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $range
-
reduce
Applies an expression to each element in an array and combines them into a single value.- Parameters:
input
- the array to useinitial
- The initial cumulative value set before in is applied to the first element of the input array.in
- A valid expression that $reduce applies to each element in the input array in left-to-right order.- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $reduce
-
reverseArray
Returns an array with the elements in reverse order.- Parameters:
array
- the array to use- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $reverseArray
-
size
Counts and returns the total number of items in an array.- Parameters:
array
- the array to use- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $size
-
slice
Returns a subset of an array.- Parameters:
array
- the array to usesize
- the number of elements to return- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $slice
-
sortArray
Sorts an array based on its elements. To sort by value, useSort.naturalAscending()
orSort.naturalDescending()
. See here for details.- Parameters:
input
- the array to be sorted.sort
- the sort order- Returns:
- the new expression
- Since:
- 2.3
- Since server release
- 5.2
- MongoDB documentation
- Aggregration Expression: $sortArray
-
zip
Merge two arrays together.- Parameters:
arrays
- the arrays to use- Returns:
- the new expression
- MongoDB documentation
- Aggregration Expression: $zip
-