Class InsertRequest

All Implemented Interfaces:
KeyValueRequest<InsertResponse>, SyncDurabilityRequest, Request<InsertResponse>, ScopedRequest

public class InsertRequest extends BaseKeyValueRequest<InsertResponse> implements SyncDurabilityRequest
Uses the KV "add" command to insert documents if they do not already exist.
Since:
2.0.0
  • Constructor Details

  • Method Details

    • 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.
      Specified by:
      encode in interface KeyValueRequest<InsertResponse>
      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 InsertResponse 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.
      Specified by:
      decode in interface KeyValueRequest<InsertResponse>
      Parameters:
      response - the response to decode.
      Returns:
      the decoded response as the generic type R.
    • durabilityLevel

      public Optional<DurabilityLevel> durabilityLevel()
      Description copied from interface: SyncDurabilityRequest
      Returns the durability level if present.
      Specified by:
      durabilityLevel in interface SyncDurabilityRequest
    • 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.

      Specified by:
      name in interface Request<InsertResponse>
      Returns:
      the name of the request type.