public class GenericQueryResponse extends AbstractCouchbaseResponse
The base response for Query (N1QL) requests. Response is divided into sub-sections, each of which can be asynchronously fed. They are represented as Observable, most of them of ByteBuf. Note that it is important that these streams are consumed and their ByteBuf released.
In order to reuse the values of a section but still correctly release the ByteBuf, the best is to convert them into an appropriate gc-able value, release the buffer and cache the resulting stream.
If one isn’t interested in a particular sub-section, it should still be released by subscribing a Buffers.BYTE_BUF_RELEASER to its stream.
| Constructor and Description |
|---|
GenericQueryResponse(Observable<ByteBuf> errors,
Observable<ByteBuf> rows,
Observable<ByteBuf> signature,
Observable<String> queryStatus,
Observable<ByteBuf> info,
CouchbaseRequest request,
ResponseStatus status,
String requestId,
String clientRequestId) |
| Modifier and Type | Method and Description |
|---|---|
String |
clientRequestId() |
Observable<ByteBuf> |
errors()
If there were errors and/or warnings while executing the query, contains a
ByteBuf for each error and each warning. |
Observable<ByteBuf> |
info()
Contains a single
ByteBuf representing the JSON object of query execution metrics (or empty if metrics haven’t been activated). |
Observable<String> |
queryStatus()
Contains a single String denoting the status of the query (success, running, errors, completed, stopped, timeout, fatal).
|
String |
requestId() |
Observable<ByteBuf> |
rows()
Contains one
ByteBuf for each result item returned by the server. |
Observable<ByteBuf> |
signature()
Contains a single
ByteBuf representing the N1QL json signature of the results. |
creationTime, request, status, toStringpublic GenericQueryResponse(Observable<ByteBuf> errors, Observable<ByteBuf> rows, Observable<ByteBuf> signature, Observable<String> queryStatus, Observable<ByteBuf> info, CouchbaseRequest request, ResponseStatus status, String requestId, String clientRequestId)
public Observable<ByteBuf> rows()
Contains one ByteBuf for each result item returned by the server. Each item is a JSON object.
public Observable<ByteBuf> signature()
Contains a single ByteBuf representing the N1QL json signature of the results. May not appear at all if there are no results (in case of fatal errors for example).
public Observable<ByteBuf> errors()
If there were errors and/or warnings while executing the query, contains a ByteBuf for each error and each warning. These are JSON objects, that should at least contain a ‘msg’ and a ‘code’.
public Observable<String> queryStatus()
public Observable<ByteBuf> info()
Contains a single ByteBuf representing the JSON object of query execution metrics (or empty if metrics haven’t been activated).
public String requestId()
public String clientRequestId()
Copyright © 2016 Couchbase, Inc.. All rights reserved.