From d69500a40a3649fcaaf1794d7e724308edc81556 Mon Sep 17 00:00:00 2001 From: wusheng Date: Sun, 4 Jun 2017 18:03:00 +0800 Subject: [PATCH] =?UTF-8?q?Revert=20"Remove=20the=20=E2=80=9Cget=E2=80=9D?= =?UTF-8?q?=20method=20of=20String/Boolean/Integer=20Tags."?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This reverts commit 04041ebd7ea9c318befd7c161e7a2c34b3363633. --- .../skywalking/apm/trace/tag/AbstractTag.java | 2 ++ .../skywalking/apm/trace/tag/BooleanTag.java | 17 +++++++++++++++-- .../org/skywalking/apm/trace/tag/IntTag.java | 17 +++++++++++++++++ .../org/skywalking/apm/trace/tag/StringTag.java | 5 +++++ .../mock/trace/tag/BooleanTagGetter.java | 7 +------ .../sniffer/mock/trace/tag/IntTagGetter.java | 7 +------ 6 files changed, 41 insertions(+), 14 deletions(-) diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/AbstractTag.java b/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/AbstractTag.java index cc37ea86be..1ded62e982 100644 --- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/AbstractTag.java +++ b/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/AbstractTag.java @@ -30,4 +30,6 @@ public abstract class AbstractTag { public String key() { return this.key; } + + public abstract T get(Span span); } diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/BooleanTag.java b/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/BooleanTag.java index 0b9e091d7a..a08d50e573 100644 --- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/BooleanTag.java +++ b/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/BooleanTag.java @@ -21,7 +21,20 @@ public class BooleanTag extends AbstractTag { span.setTag(key, tagValue); } - public boolean defaultValue() { - return this.defaultValue; + /** + * Get a tag value, type of {@link Boolean}. After akka-message/serialize, all tags values are type of {@link + * String}, convert to {@link Boolean}, if necessary. + * + * @param span + * @return tag value + */ + @Override + public Boolean get(Span span) { + Boolean tagValue = span.getBoolTag(super.key); + if (tagValue == null) { + return defaultValue; + } else { + return tagValue; + } } } diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/IntTag.java b/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/IntTag.java index 7261cc3501..e02e7e5804 100644 --- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/IntTag.java +++ b/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/IntTag.java @@ -16,4 +16,21 @@ public class IntTag extends AbstractTag { public void set(Span span, Integer tagValue) { span.setTag(super.key, tagValue); } + + /** + * Get a tag value, type of {@link Integer}. After akka-message/serialize, all tags values are type of {@link + * String}, convert to {@link Integer}, if necessary. + * + * @param span + * @return tag value + */ + @Override + public Integer get(Span span) { + Integer tagValue = span.getIntTag(super.key); + if (tagValue == null) { + return null; + } else { + return tagValue; + } + } } diff --git a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/StringTag.java b/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/StringTag.java index 1ce53d5dd9..1fa32f7ce6 100644 --- a/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/StringTag.java +++ b/apm-commons/apm-trace/src/main/java/org/skywalking/apm/trace/tag/StringTag.java @@ -17,4 +17,9 @@ public class StringTag extends AbstractTag { public void set(Span span, String tagValue) { span.setTag(key, tagValue); } + + @Override + public String get(Span span) { + return span.getStrTag(super.key); + } } diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tag/BooleanTagGetter.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tag/BooleanTagGetter.java index 7e2f89f15c..391c715944 100644 --- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tag/BooleanTagGetter.java +++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tag/BooleanTagGetter.java @@ -10,11 +10,6 @@ import org.skywalking.apm.trace.tag.BooleanTag; */ public class BooleanTagGetter { public static Boolean get(Span span, BooleanTag tag) { - Boolean tagValue = span.getBoolTag(tag.key()); - if (tagValue == null) { - return tag.defaultValue(); - } else { - return tagValue; - } + return span.getBoolTag(tag.key()); } } diff --git a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tag/IntTagGetter.java b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tag/IntTagGetter.java index 04e5bb5f0b..43d0b1c19e 100644 --- a/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tag/IntTagGetter.java +++ b/apm-sniffer/apm-sniffer-mock/src/main/java/org/skywalking/apm/sniffer/mock/trace/tag/IntTagGetter.java @@ -10,11 +10,6 @@ import org.skywalking.apm.trace.tag.IntTag; */ public class IntTagGetter { public static Integer get(Span span, IntTag tag) { - Integer tagValue = span.getIntTag(tag.key()); - if (tagValue == null) { - return null; - } else { - return tagValue; - } + return span.getIntTag(tag.key()); } } -- GitLab