Interface HttpInput.Interceptor

  • All Known Implementing Classes:
    GzipHttpInputInterceptor, HttpInput.ChainedInterceptor
    Enclosing class:
    HttpInput

    public static interface HttpInput.Interceptor
    An interceptor for HTTP Request input.

    Unlike InputStream wrappers that can be applied by filters, an interceptor is entirely transparent and works with async IO APIs.

    An Interceptor may consume data from the passed content and the interceptor will continue to be called for the same content until the interceptor returns null or an empty content. Thus even if the passed content is completely consumed the interceptor will be called with the same content until it can no longer produce more content.

    See Also:
    HttpInput.setInterceptor(Interceptor), HttpInput.addInterceptor(Interceptor)
    • Method Detail

      • readFrom

        HttpInput.Content readFrom​(HttpInput.Content content)
        Parameters:
        content - The content to be intercepted (may be empty or a HttpInput.SentinelContent. The content will be modified with any data the interceptor consumes, but there is no requirement that all the data is consumed by the interceptor.
        Returns:
        The intercepted content or null if interception is completed for that content.