MongoDB request DSL • opensavvy.ktmongo.dsl.query • UpsertQuery
UpsertQuery¶
interface UpsertQuery<T> : UpdateQuery<T>
DSL for MongoDB operators that are used to update existing values, creating new documents if none exist (does not include aggregation operators).
This interface is a variant of UpdateQuery used in upsert operations. See UpdateQuery for more information.
If you can't find the operator you're searching for, visit the tracking issue.
Properties¶
all¶
open val <E> KProperty1<T, Collection<E>>.all: Field<T, E>
The all positional operator: selects all elements of an array.
The all positional operator: selects all elements of an array.
context¶
abstract val context:
The context used to generate this expression.
field¶
Converts a Kotlin property into a Field.
selected¶
open val <E> KProperty1<T, Collection<E>>.selected: Field<T, E>
The positional operator: update an array item selected in the filter.
The positional operator: update an array item selected in the filter.
Functions¶
accept¶
Adds a new node as a child of this one.
acceptAll¶
Adds any number of nodes into this one.
addToSet¶
open infix fun <V> KProperty1<T, Collection<V>>.addToSet(value: V)
Adds value at the end of the array, unless it is already present, in which case it does nothing.
open infix fun <V> KProperty1<T, Collection<V>>.addToSet(values: Iterable<V>)
Adds multiple values at the end of the array, unless they are already present.
Adds value at the end of the array, unless it is already present, in which case it does nothing.
Adds multiple values at the end of the array, unless they are already present.
div¶
Refers to child as a nested field of the current field.
freeze¶
abstract override fun freeze()
Makes this expression immutable.
get¶
Refers to a specific item in an array, by its index.
Refers to a specific item in a map, by its name.
inc¶
Increments a field by the specified amount.
Increments a field by the specified amount.
max¶
open infix fun <V : Comparable<V>> KProperty1<T, V?>.max(value: V)
Updates the value of a field to the specified value only if the specified value is greater than the current value of the field.
Updates the value of a field to the specified value only if the specified value is greater than the current value of the field.
min¶
open infix fun <V : Comparable<V>> KProperty1<T, V?>.min(value: V)
Updates the value of a field to the specified value only if the specified value is less than the current value of the field.
Updates the value of a field to the specified value only if the specified value is less than the current value of the field.
mul¶
Multiplies a field by the specified amount.
Multiplies a field by the specified amount.
plusAssign¶
open operator fun <V : Number> KProperty1<T, V>.plusAssign(amount: V)
Increments a field by the specified amount.
Increments a field by the specified amount.
renameTo¶
open infix fun <V> KProperty1<T, V>.renameTo(newName: KProperty1<T, V>)
Renames a field.
Renames a field.
Renames a field.
Renames a field.
set¶
Replaces the value of a field with the specified value.
Replaces the value of a field with the specified value.
setIf¶
setOnInsert¶
open infix fun <V> KProperty1<T, V>.setOnInsert(value: V)
If an upsert operation results in an insert of a document, then this operator assigns the specified value to the field. If the update operation does not result in an insert, this operator does nothing.
If an upsert operation results in an insert of a document, then this operator assigns the specified value to the field. If the update operation does not result in an insert, this operator does nothing.
setToCurrentDate¶
open fun KProperty1<T, ?>.setToCurrentDate()
Sets this field to the current date.
open fun KProperty1<T, ?>.setToCurrentDate()
Sets this field to the current timestamp.
abstract fun Field<T, ?>.setToCurrentDate()
Sets this field to the current date.
abstract fun Field<T, ?>.setToCurrentDate()
Sets this field to the current timestamp.
setUnless¶
simplify¶
Returns a simplified (but equivalent) expression to the current expression.
toBson¶
open fun toBson():
Writes the result of simplifying to a new Bson.
toString¶
JSON representation of this expression.
unsafe¶
Refers to a field child of the current field, with no compile-time safety.
open infix fun <Root, Child> KProperty1<Root, *>.unsafe(child: KProperty1<*, Child>): Field<Root, Child>
Refers to a field child of the current field, without checking that it is a field available on the current object.
Refers to a field child of the current field, without checking that it is a field available on the current object.
Refers to a field child of the current field, without checking that it is a field available on the current object.
Refers to a field child of the current field, without checking that it is a field available on the current object.
unset¶
open fun <V> KProperty1<T, V>.unset()
Deletes a field.
Deletes a field.
writeTo¶
abstract fun writeTo(writer: )
Writes the result of simplifying this expression into writer.