aboutsummaryrefslogtreecommitdiff
path: root/kamon-core/src/main/scala/kamon/trace/ActiveSpan.scala
diff options
context:
space:
mode:
Diffstat (limited to 'kamon-core/src/main/scala/kamon/trace/ActiveSpan.scala')
-rw-r--r--kamon-core/src/main/scala/kamon/trace/ActiveSpan.scala78
1 files changed, 0 insertions, 78 deletions
diff --git a/kamon-core/src/main/scala/kamon/trace/ActiveSpan.scala b/kamon-core/src/main/scala/kamon/trace/ActiveSpan.scala
deleted file mode 100644
index b6e5d5e9..00000000
--- a/kamon-core/src/main/scala/kamon/trace/ActiveSpan.scala
+++ /dev/null
@@ -1,78 +0,0 @@
-package kamon.trace
-
-/**
- * Wraps a [[kamon.trace.Span]] that has been activated in the current Thread. By activated we really mean, it is
- * stored in a ThreadLocal value inside the tracer until [[kamon.trace.ActiveSpan#deactivate()]] is called.
- *
- * When a [[kamon.trace.Span]] is activated it will keep a reference to the previously active Span on the current
- * Thread, take it's place as the currently active Span and put the original one once this ActiveSpan gets deactivated.
- *
- */
-trait ActiveSpan extends Span {
-
- /**
- * Sets the currently active Span to whatever Span was active when this Span was activated.
- *
- */
- def deactivate(): Span
-}
-
-object ActiveSpan {
-
- final class Default(wrappedSpan: Span, restoreOnDeactivate: ActiveSpan, tl: ThreadLocal[ActiveSpan])
- extends ActiveSpan {
-
- override def deactivate(): Span = {
- tl.set(restoreOnDeactivate)
- wrappedSpan
- }
-
- //
- // Forward all other members to the wrapped Span.
- //
-
- override def annotate(annotation: Span.Annotation): Span =
- wrappedSpan.annotate(annotation)
-
- override def addSpanTag(key: String, value: String): Span =
- wrappedSpan.addSpanTag(key, value)
-
- override def addSpanTag(key: String, value: Long): Span =
- wrappedSpan.addSpanTag(key, value)
-
- override def addSpanTag(key: String, value: Boolean): Span =
- wrappedSpan.addSpanTag(key, value)
-
- override def addMetricTag(key: String, value: String): Span =
- wrappedSpan.addMetricTag(key, value)
-
- override def addBaggage(key: String, value: String): Span =
- wrappedSpan.addBaggage(key, value)
-
- override def getBaggage(key: String): Option[String] =
- wrappedSpan.getBaggage(key)
-
- override def disableMetricsCollection(): Span =
- wrappedSpan.disableMetricsCollection()
-
- override def context(): SpanContext =
- wrappedSpan.context()
-
- override def setOperationName(operationName: String): Span =
- wrappedSpan.setOperationName(operationName)
-
- override def finish(finishMicros: Long): Unit =
- wrappedSpan.finish(finishMicros)
-
- override def capture(): Continuation =
- wrappedSpan.capture()
-
- override def capture(activeSpanSource: ActiveSpanSource): Continuation =
- wrappedSpan.capture(activeSpanSource)
- }
-
- object Default {
- def apply(wrappedSpan: Span, restoreOnDeactivate: ActiveSpan, tl: ThreadLocal[ActiveSpan]): Default =
- new Default(wrappedSpan, restoreOnDeactivate, tl)
- }
-} \ No newline at end of file