aboutsummaryrefslogtreecommitdiff
path: root/kamon-core/src/main/scala/kamon/trace/SpanContextCodec.scala
diff options
context:
space:
mode:
Diffstat (limited to 'kamon-core/src/main/scala/kamon/trace/SpanContextCodec.scala')
-rw-r--r--kamon-core/src/main/scala/kamon/trace/SpanContextCodec.scala8
1 files changed, 5 insertions, 3 deletions
diff --git a/kamon-core/src/main/scala/kamon/trace/SpanContextCodec.scala b/kamon-core/src/main/scala/kamon/trace/SpanContextCodec.scala
index 6e687d66..1c3a1205 100644
--- a/kamon-core/src/main/scala/kamon/trace/SpanContextCodec.scala
+++ b/kamon-core/src/main/scala/kamon/trace/SpanContextCodec.scala
@@ -1,11 +1,13 @@
package kamon.trace
import java.net.{URLDecoder, URLEncoder}
-import java.util.concurrent.ThreadLocalRandom
+import scala.collection.JavaConverters._
import io.opentracing.propagation.TextMap
import kamon.util.HexCodec
+import scala.concurrent.forkjoin.ThreadLocalRandom
+
trait SpanContextCodec[T] {
def inject(spanContext: SpanContext, carrier: T): Unit
def extract(carrier: T, sampler: Sampler): SpanContext
@@ -44,7 +46,7 @@ object SpanContextCodec {
carrier.put(parentIDKey, encodeLong(spanContext.parentID))
carrier.put(spanIDKey, encodeLong(spanContext.spanID))
- spanContext.baggageItems().forEach { entry =>
+ spanContext.baggageItems().iterator().asScala.foreach { entry =>
carrier.put(baggagePrefix + entry.getKey, baggageValueEncoder(entry.getValue))
}
}
@@ -56,7 +58,7 @@ object SpanContextCodec {
var sampled: String = null
var baggage: Map[String, String] = Map.empty
- carrier.forEach { entry =>
+ carrier.iterator().asScala.foreach { entry =>
if(entry.getKey.equals(traceIDKey))
traceID = baggageValueDecoder(entry.getValue)
else if(entry.getKey.equals(parentIDKey))