Class RequestContext

  • All Implemented Interfaces:
    Context

    public class RequestContext
    extends CoreContext
    Additional context which might be attached to an individual Request.
    Since:
    2.0.0
    • Method Detail

      • dispatchLatency

        @Volatile
        public long dispatchLatency()
        Returns the duration of the dispatch phase if set.
        Returns:
        the duration of the dispatch phase.
      • dispatchLatency

        @Internal
        public RequestContext dispatchLatency​(long dispatchLatency)
        Allows to set the dispatch duration of the request.
        Parameters:
        dispatchLatency - the duration.
      • span

        @Volatile
        public io.opentracing.Span span()
      • retryAttempts

        public int retryAttempts()
      • incrementRetryAttempt

        public RequestContext incrementRetryAttempt()
      • dispatchedTo

        public String dispatchedTo()
      • payload

        public Map<String,​Object> payload()
        Returns the custom user payload of this request.
        Returns:
        the payload if set.
      • payload

        public RequestContext payload​(Map<String,​Object> payload)
        Allows to set a custom payload for this request.
        Parameters:
        payload - the payload to set.
      • injectExportableParams

        protected void injectExportableParams​(Map<String,​Object> input)
        Description copied from class: AbstractContext
        This method needs to be implemented by the actual context implementations to inject the params they need for exporting.
        Overrides:
        injectExportableParams in class CoreContext
        Parameters:
        input - pass exportable params in here.
      • cancel

        @Uncommitted
        public RequestContext cancel()
        Allows to cancel the attached Request from anywhere in the code.

        If the operation is already completed (either successfully or failed) this is an operation without side-effect.