protected Span internalSpan()

in src/main/java/com/spotify/github/tracing/opentelemetry/OpenTelemetryTracer.java [100:126]


  protected Span internalSpan(final HttpRequest request, final CompletionStage<?> future) {
    requireNonNull(request);
    // Extract the context from the request headers.
    Context context =
        W3CTraceContextPropagator.getInstance()
            .extract(
                Context.current(),
                request,
                new TextMapGetter<>() {
                  @Override
                  public Iterable<String> keys(@NotNull final HttpRequest carrier) {
                    return carrier.headers().keySet();
                  }

                  @Nullable
                  @Override
                  public String get(
                      @Nullable final HttpRequest carrier, @NotNull final String key) {
                    if (carrier == null) {
                      return null;
                    }
                    return carrier.header(key);
                  }
                });
    context.makeCurrent();
    return internalSpan(request.url(), request.method(), future);
  }