Package com.couchbase.client.core.msg.kv
Class MultiObserveViaCasRequest
- java.lang.Object
-
- com.couchbase.client.core.msg.BaseRequest<R>
-
- com.couchbase.client.core.msg.kv.BaseKeyValueRequest<MultiObserveViaCasResponse>
-
- com.couchbase.client.core.msg.kv.MultiObserveViaCasRequest
-
- All Implemented Interfaces:
KeyValueRequest<MultiObserveViaCasResponse>,Request<MultiObserveViaCasResponse>,ScopedRequest,TargetedRequest
public class MultiObserveViaCasRequest extends BaseKeyValueRequest<MultiObserveViaCasResponse> implements TargetedRequest
Special observe request implementation to handle more than one key at the same time.
-
-
Constructor Summary
Constructors Constructor Description MultiObserveViaCasRequest(Duration timeout, CoreContext ctx, RetryStrategy retryStrategy, CollectionIdentifier collectionIdentifier, NodeIdentifier target, Map<byte[],Short> keys, Predicate<ObserveViaCasResponse.ObserveStatus> responsePredicate)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description MultiObserveViaCasResponsedecode(com.couchbase.client.core.deps.io.netty.buffer.ByteBuf response, KeyValueChannelContext ctx)Decode the encoded response into its message representation.com.couchbase.client.core.deps.io.netty.buffer.ByteBufencode(com.couchbase.client.core.deps.io.netty.buffer.ByteBufAllocator alloc, int opaque, KeyValueChannelContext ctx)Encode this request with the given allocator and opaque.booleanidempotent()Returns if the given request is idempotent or not.NodeIdentifiertarget()The target where this request must be dispatched to.-
Methods inherited from class com.couchbase.client.core.msg.kv.BaseKeyValueRequest
bucket, collectionIdentifier, encodedKeyWithCollection, key, nextOpaque, opaque, operationId, partition, partition, serviceContext, serviceType
-
Methods inherited from class com.couchbase.client.core.msg.BaseRequest
absoluteTimeout, cancel, cancellationReason, cancelled, completed, context, createdAt, fail, failed, id, internalSpan, response, retryStrategy, succeed, succeeded, timeout, timeoutElapsed
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface com.couchbase.client.core.msg.Request
absoluteTimeout, cancel, cancellationReason, cancelled, completed, context, createdAt, fail, failed, id, internalSpan, response, retryStrategy, succeed, succeeded, timeout, timeoutElapsed
-
-
-
-
Constructor Detail
-
MultiObserveViaCasRequest
public MultiObserveViaCasRequest(Duration timeout, CoreContext ctx, RetryStrategy retryStrategy, CollectionIdentifier collectionIdentifier, NodeIdentifier target, Map<byte[],Short> keys, Predicate<ObserveViaCasResponse.ObserveStatus> responsePredicate)
-
-
Method Detail
-
encode
public com.couchbase.client.core.deps.io.netty.buffer.ByteBuf encode(com.couchbase.client.core.deps.io.netty.buffer.ByteBufAllocator alloc, int opaque, KeyValueChannelContext ctx)Description copied from interface:KeyValueRequestEncode this request with the given allocator and opaque.- Specified by:
encodein interfaceKeyValueRequest<MultiObserveViaCasResponse>- Parameters:
alloc- the allocator where to grab the buffers from.opaque- the opaque value to use.ctx- more encode context.- Returns:
- the encoded request as a
ByteBuf.
-
decode
public MultiObserveViaCasResponse decode(com.couchbase.client.core.deps.io.netty.buffer.ByteBuf response, KeyValueChannelContext ctx)
Description copied from interface:KeyValueRequestDecode the encoded response into its message representation.- Specified by:
decodein interfaceKeyValueRequest<MultiObserveViaCasResponse>- Parameters:
response- the response to decode.- Returns:
- the decoded response as the generic type R.
-
target
public NodeIdentifier target()
Description copied from interface:TargetedRequestThe target where this request must be dispatched to.- Specified by:
targetin interfaceTargetedRequest
-
idempotent
public boolean idempotent()
Description copied from interface:RequestReturns if the given request is idempotent or not.By default, this method always returns false for data consistency reasons. Only specific idempotent operations should override this default since it impacts retry handling quite a bit. DO NOT SET THIS TO TRUE ON MUTATING OPERATIONS!
- Specified by:
idempotentin interfaceRequest<MultiObserveViaCasResponse>- Returns:
- true if idempotent.
-
-