java.lang.Object
io.opentelemetry.api.baggage.propagation.Element

class Element extends Object
Represents single element of a W3C baggage header (key or value). Allows tracking parsing of a header string, keeping the state and validating allowed characters. Parsing state can be reset with reset(int) allowing instance re-use.
  • Field Details

    • EXCLUDED_KEY_CHARS

      private static final BitSet EXCLUDED_KEY_CHARS
    • EXCLUDED_VALUE_CHARS

      private static final BitSet EXCLUDED_VALUE_CHARS
    • excluded

      private final BitSet excluded
    • leadingSpace

      private boolean leadingSpace
    • readingValue

      private boolean readingValue
    • trailingSpace

      private boolean trailingSpace
    • start

      private int start
    • end

      private int end
    • value

      @Nullable private String value
  • Constructor Details

    • Element

      private Element(BitSet excluded)
      Constructs element instance.
      Parameters:
      excluded - characters that are not allowed for this type of an element
  • Method Details

    • createKeyElement

      static Element createKeyElement()
    • createValueElement

      static Element createValueElement()
    • getValue

      @Nullable String getValue()
    • reset

      void reset(int start)
    • tryTerminating

      boolean tryTerminating(int index, String header)
    • markEnd

      private void markEnd(int end)
    • setValue

      private void setValue(String header)
    • tryNextChar

      boolean tryNextChar(char character, int index)
    • isWhitespace

      private static boolean isWhitespace(char character)
    • tryNextWhitespace

      private boolean tryNextWhitespace(int index)
    • isExcluded

      private boolean isExcluded(char character)
    • tryNextTokenChar

      private boolean tryNextTokenChar(int index)
    • markStart

      private void markStart(int start)