Package com.couchbase.client.java.query
Class DefaultN1qlQueryResult
java.lang.Object
com.couchbase.client.java.query.DefaultN1qlQueryResult
- All Implemented Interfaces:
N1qlQueryResult
,Iterable<N1qlQueryRow>
@Committed @Public public class DefaultN1qlQueryResult extends Object implements N1qlQueryResult
-
Constructor Summary
Constructors Constructor Description DefaultN1qlQueryResult(List<AsyncN1qlQueryRow> rows, Object signature, N1qlMetrics info, List<JsonObject> errors, JsonObject profileInfo, String finalStatus, Boolean finalSuccess, boolean parseSuccess, String requestId, String clientContextId)
Create a default blocking representation of a query result. -
Method Summary
Modifier and Type Method Description List<N1qlQueryRow>
allRows()
String
clientContextId()
List<JsonObject>
errors()
boolean
finalSuccess()
Denotes the success or failure of the query.N1qlMetrics
info()
Iterator<N1qlQueryRow>
iterator()
boolean
parseSuccess()
JsonObject
profileInfo()
String
requestId()
Iterator<N1qlQueryRow>
rows()
Object
signature()
String
status()
Returns the final status of the query.String
toString()
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
DefaultN1qlQueryResult
public DefaultN1qlQueryResult(List<AsyncN1qlQueryRow> rows, Object signature, N1qlMetrics info, List<JsonObject> errors, JsonObject profileInfo, String finalStatus, Boolean finalSuccess, boolean parseSuccess, String requestId, String clientContextId)Create a default blocking representation of a query result.- Parameters:
rows
- the list of rows.signature
- the signature for rows.info
- the metrics.profileInfo
- the profile informationerrors
- the list of errors and warnings.finalStatus
- the definitive (but potentially delayed) status of the query.finalSuccess
- the definitive (but potentially delayed) success of the query.parseSuccess
- the intermediate result of the query
-
-
Method Details
-
allRows
- Specified by:
allRows
in interfaceN1qlQueryResult
- Returns:
- the list of all
N1qlQueryRow
, the results of the query, if successful.
-
rows
- Specified by:
rows
in interfaceN1qlQueryResult
- Returns:
- an iterator over the list of all
N1qlQueryRow
, the results of the query, if successful.
-
signature
- Specified by:
signature
in interfaceN1qlQueryResult
- Returns:
- an object representing the signature of the results, that can be used to
learn about the common structure of each
row
. This signature is usually aJsonObject
, but could also be any JSON-valid type like a boolean scalar,JsonArray
...
-
info
- Specified by:
info
in interfaceN1qlQueryResult
- Returns:
- an object describing some metrics/info about the execution of the query.
-
profileInfo
- Specified by:
profileInfo
in interfaceN1qlQueryResult
- Returns:
- an object describing some profiling info about the execution of the query.
-
parseSuccess
public boolean parseSuccess()- Specified by:
parseSuccess
in interfaceN1qlQueryResult
- Returns:
- true if the query could be parsed, false if it short-circuited due to syntax/fatal error.
-
errors
- Specified by:
errors
in interfaceN1qlQueryResult
- Returns:
- A list of errors or warnings encountered while executing the query.
-
finalSuccess
public boolean finalSuccess()Description copied from interface:N1qlQueryResult
Denotes the success or failure of the query. It could fail slower than withN1qlQueryResult.parseSuccess()
, for example if a fatal error comes up while streaming the results to the client. This method blocks until the query is over and the success can be established.- Specified by:
finalSuccess
in interfaceN1qlQueryResult
-
status
Description copied from interface:N1qlQueryResult
Returns the final status of the query. For example, a successful query will return "success
" (which is equivalent toN1qlQueryResult.finalSuccess()
returning true). Other statuses include (but are not limited to) "fatal
" when fatal errors occurred and "timeout
" when the query timed out on the server side but not yet on the client side. This method blocks until the query is over and the status can be established.- Specified by:
status
in interfaceN1qlQueryResult
-
iterator
- Specified by:
iterator
in interfaceIterable<N1qlQueryRow>
-
requestId
- Specified by:
requestId
in interfaceN1qlQueryResult
- Returns:
- the requestId generated by the server
-
clientContextId
- Specified by:
clientContextId
in interfaceN1qlQueryResult
- Returns:
- the clientContextId that was set by the client (could be truncated to 64 bytes of UTF-8 chars)
-
toString
-