Package brave.http

Interface HttpTracingCustomizer


public interface HttpTracingCustomizer
This allows configuration plugins to collaborate on building an instance of HttpTracing.

For example, a customizer can setup http parsers without a reference to the tracing component.

This also allows one object to customize both Tracing, via TracingCustomizer, and the http layer HttpTracing, by implementing both customizer interfaces.

Integration examples

In practice, a dependency injection tool applies a collection of these instances prior to building the tracing instance. For example, an injected List<HttpTracingCustomizer> parameter to a provider of HttpTracing.

Here are some examples, in alphabetical order:

Note: This type is safe to implement as a lambda, or use as a method reference as it is effectively a FunctionalInterface. It isn't annotated as such because the project has a minimum Java language level 6.

Since:
5.7
See Also:
TracingCustomizer
  • Field Summary

    Fields 
    Modifier and Type Field Description
    static HttpTracingCustomizer NOOP
    Use to avoid comparing against null references
  • Method Summary

    Modifier and Type Method Description
    void customize​(HttpTracing.Builder builder)