Class BaseRequest<R extends Response>

    • Constructor Detail

      • 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 Detail

      • response

        public CompletableFuture<R> response()
        Description copied from interface: Request
        Holds the response which eventually completes.
        Specified by:
        response in interface Request<R extends Response>
        Returns:
        the future containing the response, eventually.
      • succeed

        public void succeed​(R result)
        Description copied from interface: Request
        Completes this request successfully.
        Specified by:
        succeed in interface Request<R extends Response>
        Parameters:
        result - the result to complete with.
      • fail

        public void fail​(Throwable error)
        Description copied from interface: Request
        Fails this request and completes it.
        Specified by:
        fail in interface Request<R extends Response>
        Parameters:
        error - the error to fail this request with.
      • cancel

        public void cancel​(CancellationReason reason,
                           Function<Throwable,​Throwable> exceptionTranslator)
        Description copied from interface: Request
        Cancels this request, allowing the caller to customize the exception.
        Specified by:
        cancel in interface Request<R extends Response>
        exceptionTranslator - A typical function might create a new custom exception using the argument as the cause.
      • timeoutRegistration

        public void timeoutRegistration​(com.couchbase.client.core.deps.io.netty.util.Timeout registration)
        Description copied from interface: Request
        Sets the timeout registration used to cancel when complete.
        Specified by:
        timeoutRegistration in interface Request<R extends Response>
        Parameters:
        registration - the registration for the timeout timer.
      • completed

        public boolean completed()
        Description copied from interface: Request
        Allows to check if this request is completed already.
        Specified by:
        completed in interface Request<R extends Response>
        Returns:
        true if completed, failed or cancelled.
      • succeeded

        public boolean succeeded()
        Description copied from interface: Request
        Allows to check if this request has been successfully completed.
        Specified by:
        succeeded in interface Request<R extends Response>
        Returns:
        true if succeeded, false otherwise.
      • failed

        public boolean failed()
        Description copied from interface: Request
        Allows to check if this request has been completed but with an exception.
        Specified by:
        failed in interface Request<R extends Response>
        Returns:
        true if failed, false otherwise.
      • cancelled

        public boolean cancelled()
        Description copied from interface: Request
        Allows to check if this request has been cancelled before it got a chance to be either failed or succeeded.
        Specified by:
        cancelled in interface Request<R extends Response>
        Returns:
        true if cancelled, false otherwise.
      • context

        public RequestContext context()
        Description copied from interface: Request
        If attached, returns the context for this request.
        Specified by:
        context in interface Request<R extends Response>
        Returns:
        the request context if attached.
      • timeout

        public Duration timeout()
        Description copied from interface: Request
        Returns the timeout for this request.
        Specified by:
        timeout in interface Request<R extends Response>
        Returns:
        the timeout for this request.
      • timeoutElapsed

        public boolean timeoutElapsed()
        Description copied from interface: Request
        Returns true if the timeout elapsed.
        Specified by:
        timeoutElapsed in interface Request<R extends Response>
      • absoluteTimeout

        public long absoluteTimeout()
        Description copied from interface: Request
        The absolute timestamp when the request should time out.
        Specified by:
        absoluteTimeout in interface Request<R extends Response>
        Returns:
        the absolute timeout in nanoseconds.
      • id

        public long id()
        Description copied from interface: Request
        Holds a unique ID for each request that is assigned automatically.
        Specified by:
        id in interface Request<R extends Response>
        Returns:
        the unique request ID.
      • retryStrategy

        public RetryStrategy retryStrategy()
        Description copied from interface: Request
        The retry strategy for this particular request.
        Specified by:
        retryStrategy in interface Request<R extends Response>
        Returns:
        the retry strategy for this request.
      • serviceContext

        public Map<String,​Object> serviceContext()
        Description copied from interface: Request
        Returns contextual information for each individual service.
        Specified by:
        serviceContext in interface Request<R extends Response>
        Returns:
        the service context.
      • createdAt

        public long createdAt()
        Description copied from interface: Request
        Holds the nanoTime when the request got created.
        Specified by:
        createdAt in interface Request<R extends Response>
        Returns:
        the time when the request got created.
      • requestSpan

        public RequestSpan requestSpan()
        Description copied from interface: Request
        Holds the internal span for this request.
        Specified by:
        requestSpan in interface Request<R extends Response>
        Returns:
        the internal span used for the request.