Revert "Remove the “get” method of String/Boolean/Integer Tags."

This reverts commit 04041ebd7e.
This commit is contained in:
wusheng 2017-06-04 18:03:00 +08:00
parent 04041ebd7e
commit d69500a40a
6 changed files with 41 additions and 14 deletions

View File

@ -30,4 +30,6 @@ public abstract class AbstractTag<T> {
public String key() {
return this.key;
}
public abstract T get(Span span);
}

View File

@ -21,7 +21,20 @@ public class BooleanTag extends AbstractTag<Boolean> {
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;
}
}
}

View File

@ -16,4 +16,21 @@ public class IntTag extends AbstractTag<Integer> {
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;
}
}
}

View File

@ -17,4 +17,9 @@ public class StringTag extends AbstractTag<String> {
public void set(Span span, String tagValue) {
span.setTag(key, tagValue);
}
@Override
public String get(Span span) {
return span.getStrTag(super.key);
}
}

View File

@ -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());
}
}

View File

@ -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());
}
}