aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/main/aspectj/kamon/instrumentation/PromiseCompletingRunnableInstrumentation.aj19
-rw-r--r--src/main/scala/kamon/instrumentation/TraceContextHolder.java17
-rw-r--r--src/main/scala/kamon/instrumentation/TraceContextHolder.scala8
3 files changed, 16 insertions, 28 deletions
diff --git a/src/main/aspectj/kamon/instrumentation/PromiseCompletingRunnableInstrumentation.aj b/src/main/aspectj/kamon/instrumentation/PromiseCompletingRunnableInstrumentation.aj
index bd2a4d47..867ec372 100644
--- a/src/main/aspectj/kamon/instrumentation/PromiseCompletingRunnableInstrumentation.aj
+++ b/src/main/aspectj/kamon/instrumentation/PromiseCompletingRunnableInstrumentation.aj
@@ -1,29 +1,26 @@
package kamon.instrumentation;
import kamon.TraceContext;
-import scala.concurrent.impl.Future;
-import scala.Option;
privileged public aspect PromiseCompletingRunnableInstrumentation {
declare parents : Future.PromiseCompletingRunnable extends TraceContextHolder;
-
- pointcut run(Future.PromiseCompletingRunnable runnable)
+ pointcut run(scala.concurrent.impl.Future.PromiseCompletingRunnable runnable)
: execution(* scala.concurrent.impl.Future.PromiseCompletingRunnable.run()) && this(runnable);
- void around(TraceContextHolder runnable)
+ void around(Object runnable)
: run(runnable) {
- if(runnable.getContext().isDefined()) {
- System.out.println("########################################################3 There is some context");
- TraceContext.set(runnable.getContext().get());
- proceed(runnable);
+ TraceContextHolder contextHolder = (TraceContextHolder) runnable;
+
+ if(contextHolder.context().isDefined()) {
+ TraceContext.set(contextHolder.context().get());
+ proceed(contextHolder);
TraceContext.clear();
} else {
- System.out.println("########################################################3 There is NOOOOO context");
- proceed(runnable);
+ proceed(contextHolder);
}
}
}
diff --git a/src/main/scala/kamon/instrumentation/TraceContextHolder.java b/src/main/scala/kamon/instrumentation/TraceContextHolder.java
deleted file mode 100644
index 529ce86a..00000000
--- a/src/main/scala/kamon/instrumentation/TraceContextHolder.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package kamon.instrumentation;
-import scala.Option;
-import kamon.TraceContext;
-
-abstract public class TraceContextHolder implements Runnable {
- public final Option<TraceContext> context;
-
- public TraceContextHolder() {
- context = TraceContext.current();
- }
-
- public Option<TraceContext> getContext() {
- return context;
- }
-
-
-} \ No newline at end of file
diff --git a/src/main/scala/kamon/instrumentation/TraceContextHolder.scala b/src/main/scala/kamon/instrumentation/TraceContextHolder.scala
new file mode 100644
index 00000000..b44547dd
--- /dev/null
+++ b/src/main/scala/kamon/instrumentation/TraceContextHolder.scala
@@ -0,0 +1,8 @@
+package kamon.instrumentation;
+
+import kamon.TraceContext;
+import scala.Option;
+
+class TraceContextHolder {
+ final val context:Option[TraceContext] = TraceContext.current
+} \ No newline at end of file