public class MutateInOptions extends CommonDurabilityOptions<MutateInOptions>
Modifier and Type | Class and Description |
---|---|
class |
MutateInOptions.Built |
CommonDurabilityOptions.BuiltCommonDurabilityOptions
CommonOptions.BuiltCommonOptions
Modifier and Type | Method and Description |
---|---|
MutateInOptions |
accessDeleted(boolean accessDeleted)
For internal use only: allows access to deleted documents that are in 'tombstone' form.
|
MutateInOptions.Built |
build() |
MutateInOptions |
cas(long cas)
Specifies a CAS value that will be taken into account on the server side for optimistic concurrency.
|
MutateInOptions |
createAsDeleted(boolean createAsDeleted)
For internal use only: allows creating documents in 'tombstone' form.
|
MutateInOptions |
expiry(Duration expiry)
Sets the expiry for the document.
|
MutateInOptions |
expiry(Instant expiry)
Sets the expiry for the document.
|
static MutateInOptions |
mutateInOptions() |
MutateInOptions |
preserveExpiry(boolean preserveExpiry)
Specifies whether an existing document's expiry should be preserved.
|
MutateInOptions |
serializer(JsonSerializer serializer)
Customizes the serializer that is used to encoded the contents of this request.
|
MutateInOptions |
storeSemantics(StoreSemantics storeSemantics)
Changes the storing semantics of the outer/enclosing document.
|
durability, durability
clientContext, parentSpan, retryStrategy, self, timeout
public static MutateInOptions mutateInOptions()
public MutateInOptions expiry(Duration expiry)
The duration must be less than 50 years. For expiry further in the
future, use expiry(Instant)
.
expiry
- the duration after which the document will expire (zero duration means never expire).public MutateInOptions expiry(Instant expiry)
expiry
- the point in time when the document will expire (epoch second zero means never expire).@Stability.Uncommitted @SinceCouchbase(value="7.0") public MutateInOptions preserveExpiry(boolean preserveExpiry)
If true, and the document exists, its expiry will not be modified.
Otherwise the document's expiry is determined by
expiry(Duration)
or expiry(Instant)
.
Requires Couchbase Server 7.0 or later.
preserveExpiry
- true to preserve expiry, false to set new expirypublic MutateInOptions cas(long cas)
The CAS value is an opaque identifier which is associated with a specific state of the document on the server. The CAS value is received on read operations (or after mutations) and can be used during a subsequent mutation to make sure that the document has not been modified in the meantime.
If document on the server has been modified in the meantime the SDK will raise a CasMismatchException
. In
this case the caller is expected to re-do the whole "fetch-modify-update" cycle again. Please refer to the
SDK documentation for more information on CAS mismatches and subsequent retries.
cas
- the opaque CAS identifier to use for this operation.MutateInOptions
for chaining purposes.public MutateInOptions serializer(JsonSerializer serializer)
serializer
- the serializer used for encoding.MutateInOptions
for chaining purposes.public MutateInOptions storeSemantics(StoreSemantics storeSemantics)
While each individual MutateInSpec
describes the semantics of the respective sub-document section, the
StoreSemantics
are applied to the outer enclosing document as a whole. You can think of using the same
verb for a StoreSemantic
aligns with the corresponding full document. So for example a
StoreSemantics.INSERT
works semantically similar to a
Collection.insert(String, Object)
and will fail if the document as a whole
already exists.
storeSemantics
- the store semantics to apply to the document.MutateInOptions
for chaining purposes.@Stability.Internal public MutateInOptions accessDeleted(boolean accessDeleted)
@Stability.Internal public MutateInOptions createAsDeleted(boolean createAsDeleted)
@Stability.Internal public MutateInOptions.Built build()
Copyright © 2024 Couchbase, Inc.. All rights reserved.