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