Interface Baggage

All Superinterfaces:
BaggageView

public interface Baggage extends BaggageView
Inspired by OpenZipkin Brave's BaggageField. Since some tracer implementations require a scope to be wrapped around baggage, baggage must be closed so that the scope does not leak, see BaggageInScope. Some tracer implementations make baggage immutable (e.g. OpenTelemetry), so when the value gets updated they might create new scope (others will return the same one - e.g. OpenZipkin Brave).

Represents a single mutable baggage entry.

Since:
1.0.0
  • Field Details

    • NOOP

      static final Baggage NOOP
      A noop implementation.
  • Method Details

    • set

      Baggage set(String value)
      Sets the baggage value.
      Parameters:
      value - to set
      Returns:
      itself
    • set

      Baggage set(TraceContext traceContext, String value)
      Sets the baggage value for the given TraceContext.
      Parameters:
      traceContext - context containing baggage
      value - to set
      Returns:
      itself
    • makeCurrent

      BaggageInScope makeCurrent()
      Sets the current baggage in scope.
      Returns:
      a BaggageInScope instance