aboutsummaryrefslogtreecommitdiff
path: root/kamon-testkit
diff options
context:
space:
mode:
authorDiego <diegolparra@gmail.com>2017-08-22 11:56:12 -0300
committerDiego <diegolparra@gmail.com>2017-08-22 11:56:12 -0300
commitd5719438ed9a93c4035262fa8bd94ee60eead048 (patch)
treeabfb32d21fde80ba370822f039cc56f74a70fb7f /kamon-testkit
parent670f32d19a30283a39a0519a74fc5c6a0efd379b (diff)
downloadKamon-d5719438ed9a93c4035262fa8bd94ee60eead048.tar.gz
Kamon-d5719438ed9a93c4035262fa8bd94ee60eead048.tar.bz2
Kamon-d5719438ed9a93c4035262fa8bd94ee60eead048.zip
move kamon.context.SimpleStringCodec to kamon.testkit.SimpleStringCodec in order to avoid java.lang.ClassNotFoundException: kamon.context.SimpleStringCodec in tests
Diffstat (limited to 'kamon-testkit')
-rw-r--r--kamon-testkit/src/main/resources/reference.conf6
-rw-r--r--kamon-testkit/src/main/scala/kamon/testkit/ContextTesting.scala2
-rw-r--r--kamon-testkit/src/main/scala/kamon/testkit/SimpleStringCodec.scala42
3 files changed, 46 insertions, 4 deletions
diff --git a/kamon-testkit/src/main/resources/reference.conf b/kamon-testkit/src/main/resources/reference.conf
index e20cf755..bd16a022 100644
--- a/kamon-testkit/src/main/resources/reference.conf
+++ b/kamon-testkit/src/main/resources/reference.conf
@@ -1,13 +1,11 @@
kamon {
-
-
context.codecs {
http-headers-keys {
- string-broadcast-key = "kamon.context.SimpleStringCodec$Headers"
+ string-broadcast-key = "kamon.testkit.SimpleStringCodec$Headers"
}
binary-keys {
- string-broadcast-key = "kamon.context.SimpleStringCodec$Binary"
+ string-broadcast-key = "kamon.testkit.SimpleStringCodec$Binary"
}
}
} \ No newline at end of file
diff --git a/kamon-testkit/src/main/scala/kamon/testkit/ContextTesting.scala b/kamon-testkit/src/main/scala/kamon/testkit/ContextTesting.scala
index 8fd51024..b9e243d4 100644
--- a/kamon-testkit/src/main/scala/kamon/testkit/ContextTesting.scala
+++ b/kamon-testkit/src/main/scala/kamon/testkit/ContextTesting.scala
@@ -11,3 +11,5 @@ trait ContextTesting {
}
object ContextTesting extends ContextTesting
+
+
diff --git a/kamon-testkit/src/main/scala/kamon/testkit/SimpleStringCodec.scala b/kamon-testkit/src/main/scala/kamon/testkit/SimpleStringCodec.scala
new file mode 100644
index 00000000..f1d8cb14
--- /dev/null
+++ b/kamon-testkit/src/main/scala/kamon/testkit/SimpleStringCodec.scala
@@ -0,0 +1,42 @@
+package kamon.testkit
+
+import java.nio.ByteBuffer
+
+import kamon.context.{Codecs, Context, TextMap}
+
+object SimpleStringCodec {
+ final class Headers extends Codecs.ForEntry[TextMap] {
+ private val dataKey = "X-String-Value"
+
+ override def encode(context: Context): TextMap = {
+ val textMap = TextMap.Default()
+ context.get(ContextTesting.StringBroadcastKey).foreach { value =>
+ textMap.put(dataKey, value)
+ }
+
+ textMap
+ }
+
+ override def decode(carrier: TextMap, context: Context): Context = {
+ carrier.get(dataKey) match {
+ case value @ Some(_) => context.withKey(ContextTesting.StringBroadcastKey, value)
+ case None => context
+ }
+ }
+ }
+
+ final class Binary extends Codecs.ForEntry[ByteBuffer] {
+ val emptyBuffer: ByteBuffer = ByteBuffer.allocate(0)
+
+ override def encode(context: Context): ByteBuffer = {
+ context.get(ContextTesting.StringBroadcastKey) match {
+ case Some(value) => ByteBuffer.wrap(value.getBytes)
+ case None => emptyBuffer
+ }
+ }
+
+ override def decode(carrier: ByteBuffer, context: Context): Context = {
+ context.withKey(ContextTesting.StringBroadcastKey, Some(new String(carrier.array())))
+ }
+ }
+}