* Initial Propagators refactor.
* Add tests for the new propagators changes.
* Make the SDK compile/pass.
* Make the OT shim compile/pass.
* Make contrib components compile/pass.
* Improvement over Span/SpanContext handling in Context.
* Add Span.setParent(Context) overload.
* Do not provide default values for Span/SpanContext keys in Context.
* Improve the Context's active state handling.
* Rename DistributedContext to CorrelationContext.
* Improve names for correlationcontext's ContextUtils methods.
* Don't provide an automatic default for current CorrelationContext.
* Improve the client-server example after the recent changes.
* Adds CorrelationContext.Builder.setParent(Context) overload.
* s/be/become.
* Fix javadoc.
* No need to use diamond.
* Simply import withScopedContext().
* Fix the API/SDK build.
* Remove the builder from the Propagators interface.
* Fix name.
* Use Collections.emptyList() directly.
* Rename Propagators to ContextPropagators.
* Move context/ members in api/ to context_prop/
* Add check/tests for null scoped Contexts.
* Rename ContextUtils classes to better alternatives.
* Update the context* util classes.
* Make the code compile after the latest master merge.
* Cache the fields() in our default composite propagator.
* Remove the overloads of setParent(Context) for now.
* Use DefaultSpan for the tests instead of calling getTracerProvider()
* Fix the sdk testbed artifact build.
* Make the B3 propagator comply with the new propagator API.
* Simplify the HttpTraceContextTest tests.
* Simplify the ContextUtils* classes handling of default values.
* Minor nit.
* Update api/src/main/java/io/opentelemetry/OpenTelemetry.java
Co-Authored-By: Giovanni Liva <giovanni.liva@dynatrace.com>
* Annotate ContextPropagators with ThreadSafe instead of Immutable.
* Do not use the fully qualified ContextUtils identifier.
* Remove SpanContext support from TracingContextUtils.
* Rever to using non-defaulted key for TracingContextUtils.
* Revert the default keys for CorrelationsContextUtils.
Co-authored-by: Giovanni Liva <giovanni.liva@dynatrace.com>
* test: add benchmarks for http trace context extract and inject
* test: add benchmarks for http trace context extract and inject
* docs: add docs
* style: apply google code style
* style: format jmh.gradle, use not deprecated archiveFileName
* test: add params for trace id and span id
* fix: fix merge conflicts
* feat: use HashMap move params to inner state
* feat: use same measurement params
* fix: apply google code style
* fix: extract span creation for more clear benchmark
* test: use vector of traceparents, increase iterations to 50k
* style: apply google code style
* feat: use vector of traceparents in inject benchmark