Class SubdocGetRequest

All Implemented Interfaces:
KeyValueRequest<SubdocGetResponse>, Request<SubdocGetResponse>, ScopedRequest
Direct Known Subclasses:
ReplicaSubdocGetRequest

public class SubdocGetRequest extends BaseKeyValueRequest<SubdocGetResponse>
  • Constructor Details

  • Method Details

    • create

      public static SubdocGetRequest create(Duration timeout, CoreContext ctx, CollectionIdentifier collectionIdentifier, RetryStrategy retryStrategy, String key, byte flags, List<CoreSubdocGetCommand> commands, RequestSpan span)
    • convertCommandsToCore

      @Internal public static List<CoreSubdocGetCommand> convertCommandsToCore(List<SubdocGetRequest.Command> commands)
    • 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: KeyValueRequest
      Encode this request with the given allocator and opaque.
      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 SubdocGetResponse decode(com.couchbase.client.core.deps.io.netty.buffer.ByteBuf response, KeyValueChannelContext ctx)
      Description copied from interface: KeyValueRequest
      Decode the encoded response into its message representation.
      Parameters:
      response - the response to decode.
      Returns:
      the decoded response as the generic type R.
    • idempotent

      public boolean idempotent()
      Description copied from interface: Request
      Returns 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!

      Returns:
      true if idempotent.
    • name

      public String name()
      Description copied from interface: Request
      The unique name of the request, usually related to the type but not necessarily.

      The default implementation is derived from the class name (i.e. FooRequest returns foo), but if that does not match up it should be overridden in the actual class.

      Returns:
      the name of the request type.