Package com.couchbase.client.core.msg
Class BaseRequest<R extends Response>
java.lang.Object
com.couchbase.client.core.msg.BaseRequest<R>
- All Implemented Interfaces:
Request<R>
- Direct Known Subclasses:
AnalyticsPingRequest,AnalyticsRequest,BaseKeyValueRequest,BaseManagerRequest,GenericAnalyticsRequest,GenericSearchRequest,GenericViewRequest,QueryPingRequest,QueryRequest,SearchPingRequest,SearchRequest,ViewPingRequest,ViewRequest
public abstract class BaseRequest<R extends Response> extends Object implements Request<R>
Base class for all
Requests.- Since:
- 2.0.0
-
Constructor Summary
Constructors Constructor Description BaseRequest(Duration timeout, CoreContext ctx, RetryStrategy retryStrategy)BaseRequest(Duration timeout, CoreContext ctx, RetryStrategy retryStrategy, RequestSpan requestSpan)Creates a basic request that has all the required properties to be executed in general. -
Method Summary
Modifier and Type Method Description longabsoluteTimeout()The absolute timestamp when the request should time out.voidcancel(CancellationReason reason)Cancels this request.CancellationReasoncancellationReason()If the request isRequest.cancelled(), this returns the reason why.booleancancelled()Allows to check if this request has been cancelled before it got a chance to be either failed or succeeded.booleancompleted()Allows to check if this request is completed already.RequestContextcontext()If attached, returns the context for this request.longcreatedAt()Holds the nanoTime when the request got created.voidfail(Throwable error)Fails this request and completes it.booleanfailed()Allows to check if this request has been completed but with an exception.longid()Holds a unique ID for each request that is assigned automatically.RequestSpanrequestSpan()Holds the internal span for this request.CompletableFuture<R>response()Holds the response which eventually completes.RetryStrategyretryStrategy()The retry strategy for this particular request.Map<String,Object>serviceContext()Returns contextual information for each individual service.voidsucceed(R result)Completes this request successfully.booleansucceeded()Allows to check if this request has been successfully completed.Durationtimeout()Returns the timeout for this request.booleantimeoutElapsed()Returns true if the timeout elapsed.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface com.couchbase.client.core.msg.Request
idempotent, name, operationId, serviceType
-
Constructor Details
-
BaseRequest
-
BaseRequest
public BaseRequest(Duration timeout, CoreContext ctx, RetryStrategy retryStrategy, RequestSpan requestSpan)Creates a basic request that has all the required properties to be executed in general.- Parameters:
timeout- the timeout of the request.ctx- the context if provided.
-
-
Method Details
-
response
Description copied from interface:RequestHolds the response which eventually completes. -
succeed
Description copied from interface:RequestCompletes this request successfully. -
fail
Description copied from interface:RequestFails this request and completes it. -
cancel
Description copied from interface:RequestCancels this request. -
completed
public boolean completed()Description copied from interface:RequestAllows to check if this request is completed already. -
succeeded
public boolean succeeded()Description copied from interface:RequestAllows to check if this request has been successfully completed. -
failed
public boolean failed()Description copied from interface:RequestAllows to check if this request has been completed but with an exception. -
cancelled
public boolean cancelled()Description copied from interface:RequestAllows to check if this request has been cancelled before it got a chance to be either failed or succeeded. -
cancellationReason
Description copied from interface:RequestIf the request isRequest.cancelled(), this returns the reason why.- Specified by:
cancellationReasonin interfaceRequest<R extends Response>- Returns:
- the cancellation reason if cancelled, null otherwise.
-
context
Description copied from interface:RequestIf attached, returns the context for this request. -
timeout
Description copied from interface:RequestReturns the timeout for this request. -
timeoutElapsed
public boolean timeoutElapsed()Description copied from interface:RequestReturns true if the timeout elapsed.- Specified by:
timeoutElapsedin interfaceRequest<R extends Response>
-
absoluteTimeout
public long absoluteTimeout()Description copied from interface:RequestThe absolute timestamp when the request should time out.- Specified by:
absoluteTimeoutin interfaceRequest<R extends Response>- Returns:
- the absolute timeout in nanoseconds.
-
id
public long id()Description copied from interface:RequestHolds a unique ID for each request that is assigned automatically. -
retryStrategy
Description copied from interface:RequestThe retry strategy for this particular request.- Specified by:
retryStrategyin interfaceRequest<R extends Response>- Returns:
- the retry strategy for this request.
-
serviceContext
Description copied from interface:RequestReturns contextual information for each individual service.- Specified by:
serviceContextin interfaceRequest<R extends Response>- Returns:
- the service context.
-
createdAt
public long createdAt()Description copied from interface:RequestHolds the nanoTime when the request got created. -
requestSpan
Description copied from interface:RequestHolds the internal span for this request.- Specified by:
requestSpanin interfaceRequest<R extends Response>- Returns:
- the internal span used for the request.
-