Package com.mongodb.client.model
Class Updates
- java.lang.Object
-
- com.mongodb.client.model.Updates
-
public final class Updates extends Object
A factory for document updates. A convenient way to use this class is to statically import all of its methods, which allows usage like:collection.updateOne(eq("x", 1), set("x", 2));
- Since:
- 3.1
- MongoDB documentation
- Update Operators
-
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static <TItem> Bson
addEachToSet(String fieldName, List<TItem> values)
Creates an update that adds each of the given values to the array value of the field with the given name, unless the value is already present, in which case it does nothingstatic <TItem> Bson
addToSet(String fieldName, TItem value)
Creates an update that adds the given value to the array value of the field with the given name, unless the value is already present, in which case it does nothingstatic Bson
bitwiseAnd(String fieldName, int value)
Creates an update that performs a bitwise and between the given integer value and the integral value of the field with the given name.static Bson
bitwiseAnd(String fieldName, long value)
Creates an update that performs a bitwise and between the given long value and the integral value of the field with the given name.static Bson
bitwiseOr(String fieldName, int value)
Creates an update that performs a bitwise or between the given integer value and the integral value of the field with the given name.static Bson
bitwiseOr(String fieldName, long value)
Creates an update that performs a bitwise or between the given long value and the integral value of the field with the given name.static Bson
bitwiseXor(String fieldName, int value)
Creates an update that performs a bitwise xor between the given integer value and the integral value of the field with the given name.static Bson
bitwiseXor(String fieldName, long value)
Creates an update that performs a bitwise xor between the given long value and the integral value of the field with the given name.static Bson
combine(List<? extends Bson> updates)
Combine a list of updates into a single update.static Bson
combine(Bson... updates)
Combine a list of updates into a single update.static Bson
currentDate(String fieldName)
Creates an update that sets the value of the field to the current date as a BSON date.static Bson
currentTimestamp(String fieldName)
Creates an update that sets the value of the field to the current date as a BSON timestamp.static Bson
inc(String fieldName, Number number)
Creates an update that increments the value of the field with the given name by the given value.static <TItem> Bson
max(String fieldName, TItem value)
Creates an update that sets the value of the field to the given value if the given value is greater than the current value of the field.static <TItem> Bson
min(String fieldName, TItem value)
Creates an update that sets the value of the field to the given value if the given value is less than the current value of the field.static Bson
mul(String fieldName, Number number)
Creates an update that multiplies the value of the field with the given name by the given number.static Bson
popFirst(String fieldName)
Creates an update that pops the first element of an array that is the value of the field with the given name.static Bson
popLast(String fieldName)
Creates an update that pops the last element of an array that is the value of the field with the given name.static <TItem> Bson
pull(String fieldName, TItem value)
Creates an update that removes all instances of the given value from the array value of the field with the given name.static <TItem> Bson
pullAll(String fieldName, List<TItem> values)
Creates an update that removes all instances of the given values from the array value of the field with the given name.static Bson
pullByFilter(Bson filter)
Creates an update that removes from an array all elements that match the given filter.static <TItem> Bson
push(String fieldName, TItem value)
Creates an update that adds the given value to the array value of the field with the given name.static <TItem> Bson
pushEach(String fieldName, List<TItem> values)
Creates an update that adds each of the given values to the array value of the field with the given name.static <TItem> Bson
pushEach(String fieldName, List<TItem> values, PushOptions options)
Creates an update that adds each of the given values to the array value of the field with the given name, applying the given options for positioning the pushed values, and then slicing and/or sorting the array.static Bson
rename(String fieldName, String newFieldName)
Creates an update that renames a field.static <TItem> Bson
set(String fieldName, TItem value)
Creates an update that sets the value of the field with the given name to the given value.static <TItem> Bson
setOnInsert(String fieldName, TItem value)
Creates an update that sets the value of the field with the given name to the given value, but only if the update is an upsert that results in an insert of a document.static Bson
setOnInsert(Bson value)
Creates an update that sets the values for the document, but only if the update is an upsert that results in an insert of a document.static Bson
unset(String fieldName)
Creates an update that deletes the field with the given name.
-
-
-
Method Detail
-
combine
public static Bson combine(Bson... updates)
Combine a list of updates into a single update.- Parameters:
updates
- the list of updates- Returns:
- a combined update
-
combine
public static Bson combine(List<? extends Bson> updates)
Combine a list of updates into a single update.- Parameters:
updates
- the list of updates- Returns:
- a combined update
-
set
public static <TItem> Bson set(String fieldName, @Nullable TItem value)
Creates an update that sets the value of the field with the given name to the given value.- Type Parameters:
TItem
- the value type- Parameters:
fieldName
- the non-null field namevalue
- the value, which may be null- Returns:
- the update
- MongoDB documentation
- $set
-
unset
public static Bson unset(String fieldName)
Creates an update that deletes the field with the given name.- Parameters:
fieldName
- the non-null field name- Returns:
- the update
- MongoDB documentation
- $unset
-
setOnInsert
public static Bson setOnInsert(Bson value)
Creates an update that sets the values for the document, but only if the update is an upsert that results in an insert of a document.- Parameters:
value
- the value- Returns:
- the update
- Since:
- 3.10.0
- See Also:
UpdateOptions.upsert(boolean)
- MongoDB documentation
- $setOnInsert
-
setOnInsert
public static <TItem> Bson setOnInsert(String fieldName, @Nullable TItem value)
Creates an update that sets the value of the field with the given name to the given value, but only if the update is an upsert that results in an insert of a document.- Type Parameters:
TItem
- the value type- Parameters:
fieldName
- the non-null field namevalue
- the value, which may be null- Returns:
- the update
- See Also:
UpdateOptions.upsert(boolean)
- MongoDB documentation
- $setOnInsert
-
rename
public static Bson rename(String fieldName, String newFieldName)
Creates an update that renames a field.- Parameters:
fieldName
- the non-null field namenewFieldName
- the non-null new field name- Returns:
- the update
- MongoDB documentation
- $rename
-
inc
public static Bson inc(String fieldName, Number number)
Creates an update that increments the value of the field with the given name by the given value.- Parameters:
fieldName
- the non-null field namenumber
- the value- Returns:
- the update
- MongoDB documentation
- $inc
-
mul
public static Bson mul(String fieldName, Number number)
Creates an update that multiplies the value of the field with the given name by the given number.- Parameters:
fieldName
- the non-null field namenumber
- the non-null number- Returns:
- the update
- MongoDB documentation
- $mul
-
min
public static <TItem> Bson min(String fieldName, TItem value)
Creates an update that sets the value of the field to the given value if the given value is less than the current value of the field.- Type Parameters:
TItem
- the value type- Parameters:
fieldName
- the non-null field namevalue
- the value- Returns:
- the update
- MongoDB documentation
- $min
-
max
public static <TItem> Bson max(String fieldName, TItem value)
Creates an update that sets the value of the field to the given value if the given value is greater than the current value of the field.- Type Parameters:
TItem
- the value type- Parameters:
fieldName
- the non-null field namevalue
- the value- Returns:
- the update
- MongoDB documentation
- $min
-
currentDate
public static Bson currentDate(String fieldName)
Creates an update that sets the value of the field to the current date as a BSON date.- Parameters:
fieldName
- the non-null field name- Returns:
- the update
- MongoDB documentation
- $currentDate
- Date
-
currentTimestamp
public static Bson currentTimestamp(String fieldName)
Creates an update that sets the value of the field to the current date as a BSON timestamp.- Parameters:
fieldName
- the non-null field name- Returns:
- the update
- MongoDB documentation
- $currentDate
- Timestamp
-
addToSet
public static <TItem> Bson addToSet(String fieldName, @Nullable TItem value)
Creates an update that adds the given value to the array value of the field with the given name, unless the value is already present, in which case it does nothing- Type Parameters:
TItem
- the value type- Parameters:
fieldName
- the non-null field namevalue
- the value, which may be null- Returns:
- the update
- MongoDB documentation
- $addToSet
-
addEachToSet
public static <TItem> Bson addEachToSet(String fieldName, List<TItem> values)
Creates an update that adds each of the given values to the array value of the field with the given name, unless the value is already present, in which case it does nothing- Type Parameters:
TItem
- the value type- Parameters:
fieldName
- the non-null field namevalues
- the values- Returns:
- the update
- MongoDB documentation
- $addToSet
-
push
public static <TItem> Bson push(String fieldName, @Nullable TItem value)
Creates an update that adds the given value to the array value of the field with the given name.- Type Parameters:
TItem
- the value type- Parameters:
fieldName
- the non-null field namevalue
- the value, which may be null- Returns:
- the update
- MongoDB documentation
- $push
-
pushEach
public static <TItem> Bson pushEach(String fieldName, List<TItem> values)
Creates an update that adds each of the given values to the array value of the field with the given name.- Type Parameters:
TItem
- the value type- Parameters:
fieldName
- the non-null field namevalues
- the values- Returns:
- the update
- MongoDB documentation
- $push
-
pushEach
public static <TItem> Bson pushEach(String fieldName, List<TItem> values, PushOptions options)
Creates an update that adds each of the given values to the array value of the field with the given name, applying the given options for positioning the pushed values, and then slicing and/or sorting the array.- Type Parameters:
TItem
- the value type- Parameters:
fieldName
- the non-null field namevalues
- the valuesoptions
- the non-null push options- Returns:
- the update
- MongoDB documentation
- $push
-
pull
public static <TItem> Bson pull(String fieldName, @Nullable TItem value)
Creates an update that removes all instances of the given value from the array value of the field with the given name.- Type Parameters:
TItem
- the value type- Parameters:
fieldName
- the non-null field namevalue
- the value, which may be null- Returns:
- the update
- MongoDB documentation
- $pull
-
pullByFilter
public static Bson pullByFilter(Bson filter)
Creates an update that removes from an array all elements that match the given filter.- Parameters:
filter
- the query filter- Returns:
- the update
- MongoDB documentation
- $pull
-
pullAll
public static <TItem> Bson pullAll(String fieldName, List<TItem> values)
Creates an update that removes all instances of the given values from the array value of the field with the given name.- Type Parameters:
TItem
- the value type- Parameters:
fieldName
- the non-null field namevalues
- the values- Returns:
- the update
- MongoDB documentation
- $pull
-
popFirst
public static Bson popFirst(String fieldName)
Creates an update that pops the first element of an array that is the value of the field with the given name.- Parameters:
fieldName
- the non-null field name- Returns:
- the update
- MongoDB documentation
- $pop
-
popLast
public static Bson popLast(String fieldName)
Creates an update that pops the last element of an array that is the value of the field with the given name.- Parameters:
fieldName
- the non-null field name- Returns:
- the update
- MongoDB documentation
- $pop
-
bitwiseAnd
public static Bson bitwiseAnd(String fieldName, int value)
Creates an update that performs a bitwise and between the given integer value and the integral value of the field with the given name.- Parameters:
fieldName
- the field namevalue
- the value- Returns:
- the update
-
bitwiseAnd
public static Bson bitwiseAnd(String fieldName, long value)
Creates an update that performs a bitwise and between the given long value and the integral value of the field with the given name.- Parameters:
fieldName
- the field namevalue
- the value- Returns:
- the update
- MongoDB documentation
- $bit
-
bitwiseOr
public static Bson bitwiseOr(String fieldName, int value)
Creates an update that performs a bitwise or between the given integer value and the integral value of the field with the given name.- Parameters:
fieldName
- the field namevalue
- the value- Returns:
- the update
- MongoDB documentation
- $bit
-
bitwiseOr
public static Bson bitwiseOr(String fieldName, long value)
Creates an update that performs a bitwise or between the given long value and the integral value of the field with the given name.- Parameters:
fieldName
- the field namevalue
- the value- Returns:
- the update
- MongoDB documentation
- $bit
-
bitwiseXor
public static Bson bitwiseXor(String fieldName, int value)
Creates an update that performs a bitwise xor between the given integer value and the integral value of the field with the given name.- Parameters:
fieldName
- the field namevalue
- the value- Returns:
- the update
-
-