aboutsummaryrefslogtreecommitdiff
path: root/kamon-core/src/main/scala/kamon/util
diff options
context:
space:
mode:
authorIvan Topolnjak <ivantopo@gmail.com>2017-04-24 14:10:46 +0200
committerIvan Topolnjak <ivantopo@gmail.com>2017-04-24 14:17:10 +0200
commitbbd52dcca66caa3cbd78478a1d075ff54da4f65a (patch)
treed121b293a21a14e5d4d19946b44e6008257f8db3 /kamon-core/src/main/scala/kamon/util
parent4d828e1a3195e55365c865aa3a78af9668742643 (diff)
downloadKamon-bbd52dcca66caa3cbd78478a1d075ff54da4f65a.tar.gz
Kamon-bbd52dcca66caa3cbd78478a1d075ff54da4f65a.tar.bz2
Kamon-bbd52dcca66caa3cbd78478a1d075ff54da4f65a.zip
bring the new skeleton into place
Diffstat (limited to 'kamon-core/src/main/scala/kamon/util')
-rw-r--r--kamon-core/src/main/scala/kamon/util/Clock.scala9
-rw-r--r--kamon-core/src/main/scala/kamon/util/EntityFilter.scala7
-rw-r--r--kamon-core/src/main/scala/kamon/util/MeasurementUnit.scala15
3 files changed, 31 insertions, 0 deletions
diff --git a/kamon-core/src/main/scala/kamon/util/Clock.scala b/kamon-core/src/main/scala/kamon/util/Clock.scala
new file mode 100644
index 00000000..55bb529a
--- /dev/null
+++ b/kamon-core/src/main/scala/kamon/util/Clock.scala
@@ -0,0 +1,9 @@
+package kamon.util
+
+trait Clock {
+ def nanoTimestamp(): Long
+ def microTimestamp(): Long
+ def milliTimestamp(): Long
+
+ def relativeNanoTimestamp(): Long
+}
diff --git a/kamon-core/src/main/scala/kamon/util/EntityFilter.scala b/kamon-core/src/main/scala/kamon/util/EntityFilter.scala
new file mode 100644
index 00000000..a8456689
--- /dev/null
+++ b/kamon-core/src/main/scala/kamon/util/EntityFilter.scala
@@ -0,0 +1,7 @@
+package kamon.util
+
+import kamon.metric.Entity
+
+trait EntityFilter {
+ def accept(entity: Entity): Boolean
+}
diff --git a/kamon-core/src/main/scala/kamon/util/MeasurementUnit.scala b/kamon-core/src/main/scala/kamon/util/MeasurementUnit.scala
new file mode 100644
index 00000000..4130fa50
--- /dev/null
+++ b/kamon-core/src/main/scala/kamon/util/MeasurementUnit.scala
@@ -0,0 +1,15 @@
+package kamon.util
+
+trait MeasurementUnit {
+ def dimension: Dimension
+ def magnitude: Magnitude
+}
+
+trait Magnitude {
+ def name: String
+}
+
+trait Dimension {
+ def name: String
+ def scale(value: Long, from: Magnitude, to: Magnitude): Double
+}