Class QueryRequest

java.lang.Object
com.couchbase.client.core.msg.BaseRequest<QueryResponse>
com.couchbase.client.core.msg.query.QueryRequest
All Implemented Interfaces:
ChunkDecodable<QueryChunkHeader,​QueryChunkRow,​QueryChunkTrailer,​QueryResponse>, Encodable<com.couchbase.client.core.deps.io.netty.handler.codec.http.FullHttpRequest>, HttpRequest<QueryChunkHeader,​QueryChunkRow,​QueryChunkTrailer,​QueryResponse>, Request<QueryResponse>
Direct Known Subclasses:
TargetedQueryRequest

public class QueryRequest
extends BaseRequest<QueryResponse>
implements HttpRequest<QueryChunkHeader,​QueryChunkRow,​QueryChunkTrailer,​QueryResponse>
  • Constructor Details

  • Method Details

    • encode

      public com.couchbase.client.core.deps.io.netty.handler.codec.http.FullHttpRequest encode()
      Specified by:
      encode in interface Encodable<com.couchbase.client.core.deps.io.netty.handler.codec.http.FullHttpRequest>
    • decode

      public QueryResponse decode​(ResponseStatus status, QueryChunkHeader header, Flux<QueryChunkRow> rows, Mono<QueryChunkTrailer> trailer)
      Description copied from interface: ChunkDecodable
      Decodes a chunked response into the response format.
      Specified by:
      decode in interface ChunkDecodable<QueryChunkHeader,​QueryChunkRow,​QueryChunkTrailer,​QueryResponse>
      Parameters:
      status - the http response status.
      header - the chunk header.
      rows - the chunk rows.
      trailer - the chunk trailer.
      Returns:
      a decoded response including all the chunk parts.
    • serviceType

      public ServiceType serviceType()
      Description copied from interface: Request
      The service type of this request.
      Specified by:
      serviceType in interface Request<QueryResponse>
      Returns:
      the service type for this request.
    • statement

      public String statement()
    • credentials

      public Authenticator credentials()
    • operationId

      public String operationId()
      Description copied from interface: Request
      Returns a potentially non-unique identifier that is useful for tracing output.

      Note: might be null! It depends on the type of operation. It is also different from the unqiue operation ID that increments to provide additional context (i.e in query the context uuid, in kv the opaque value).

      Specified by:
      operationId in interface Request<QueryResponse>
      Returns:
      if present, the operation id. Null otherwise.
    • 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!

      Specified by:
      idempotent in interface Request<QueryResponse>
      Returns:
      true if idempotent.
    • queryContext

      public String queryContext()
    • serviceContext

      public Map<String,​Object> serviceContext()
      Description copied from interface: Request
      Returns contextual information for each individual service.
      Specified by:
      serviceContext in interface Request<QueryResponse>
      Overrides:
      serviceContext in class BaseRequest<QueryResponse>
      Returns:
      the service context.