C - type of carrierpublic abstract class AbstractPropagator<C> extends java.lang.Object implements Propagator<C>
Propagator that knows what is injected and extracted from the carrier.
Implementing classes must only provide injectBaggage(Object, String, String) and
extractBaggage(Object) methods, where they can deal with any needed operations as
encoding for example.| Constructor and Description |
|---|
AbstractPropagator() |
| Modifier and Type | Method and Description |
|---|---|
SpanContextImpl |
extract(C carrier)
Extract the span context from the carrier.
|
protected abstract java.lang.Iterable<java.util.Map.Entry<java.lang.String,java.lang.String>> |
extractBaggage(C carrier)
Gets all baggage (not only tracing related) from the carrier.
|
void |
inject(SpanContextImpl spanContext,
C carrier)
Injects the span context to the carrier.
|
protected abstract void |
injectBaggage(C carrier,
java.lang.String key,
java.lang.String value)
Injects one baggage item to the carrier.
|
protected abstract void injectBaggage(C carrier, java.lang.String key, java.lang.String value)
extractBaggage(Object) is called, but can wrap the key/value in what
ever they want.carrier - carrierkey - keyvalue - valueprotected abstract java.lang.Iterable<java.util.Map.Entry<java.lang.String,java.lang.String>> extractBaggage(C carrier)
carrier - carrierpublic void inject(SpanContextImpl spanContext, C carrier)
inject in interface Propagator<C>spanContext - contextcarrier - carrierpublic SpanContextImpl extract(C carrier)
extract in interface Propagator<C>carrier - carrier