Top Description Inners Fields Constructors Methods
io.opentelemetry.api.baggage.propagation

pack-priv Class Parser

extends Object
Class Inheritance
Imports
io.opentelemetry.api.baggage.BaggageBuilder, .BaggageEntryMetadata, java.nio.charset.StandardCharsets, javax.annotation.Nullable

Implements single-pass Baggage parsing in accordance with https://w3c.github.io/baggage/ Key / value are restricted in accordance with https://www.ietf.org/rfc/rfc2616.txt.

Note

following aspects are not specified in RFC: - some invalid elements (key or value) - parser will include valid ones, disregard invalid - empty "value" is regarded as invalid - meta - anything besides element terminator (comma).

Nested and Inner Type Summary

Modifier and TypeClass and Description
private static enum

Field Summary

Modifier and TypeField and Description
private final String
private final Element
private String
private int
private boolean
private Parser.State
private final Element

Constructor Summary

AccessConstructor and Description
pack-priv
Parser(String baggageHeader)

Method Summary

Modifier and TypeMethod and Description
private static String
pack-priv void
parseInto(BaggageBuilder baggageBuilder)

private static void
putBaggage(BaggageBuilder baggage, String key, String value, String metadataValue)

private void
reset(int
index where parser should start new element scan
index
)

Resets parsing state, preparing to start a new list element (see spec).

private void
setState(Parser.State state, int start)

Switches parser state (element of a list member).

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

baggageHeaderback to summary
private final String baggageHeader
keyback to summary
private final Element key
metaback to summary
private String meta
metaStartback to summary
private int metaStart
skipToNextback to summary
private boolean skipToNext
stateback to summary
private Parser.State state
valueback to summary
private final Element value

Constructor Detail

Parserback to summary
pack-priv Parser(String baggageHeader)

Method Detail

decodeValueback to summary
private static String decodeValue(String value)
Annotations
@Nullable
parseIntoback to summary
pack-priv void parseInto(BaggageBuilder baggageBuilder)
putBaggageback to summary
private static void putBaggage(BaggageBuilder baggage, String key, String value, String metadataValue)
resetback to summary
private void reset(int index)

Resets parsing state, preparing to start a new list element (see spec).

Parameters
index:int

index where parser should start new element scan

setStateback to summary
private void setState(Parser.State state, int start)

Switches parser state (element of a list member).

io.opentelemetry.api.baggage.propagation back to summary

private final Enum Parser.State

extends Enum<Parser.State>
Class Inheritance

Field Summary

Modifier and TypeField and Description
public static final Parser.State
public static final Parser.State
public static final Parser.State

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
public static Parser.State
public static Parser.State[]
Inherited from java.lang.Enum:
clonecompareTodescribeConstableequalsfinalizegetDeclaringClasshashCodenameordinaltoStringvalueOf

Field Detail

KEYback to summary
public static final Parser.State KEY
METAback to summary
public static final Parser.State META
VALUEback to summary
public static final Parser.State VALUE

Constructor Detail

Stateback to summary
private State()

Method Detail

valueOfback to summary
public static Parser.State valueOf(String name)
valuesback to summary
public static Parser.State[] values()