diff options
author | Bogdan Drutu <bdrutu@google.com> | 2018-08-03 12:37:46 +0300 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-08-03 12:37:46 +0300 |
commit | b0c487b09287f7734f46d7b84afbd07d6c025f28 (patch) | |
tree | 416071c283caf32e73a99fb2a46c2ea773c25be3 /api | |
parent | d0d836136149d7379b50bd6fb8d81e4749df3fd8 (diff) | |
download | opencensus-java-b0c487b09287f7734f46d7b84afbd07d6c025f28.tar.gz |
Minor improvements for Tracestate. (#1358)
Diffstat (limited to 'api')
-rw-r--r-- | api/src/main/java/io/opencensus/trace/Tracestate.java | 18 | ||||
-rw-r--r-- | api/src/test/java/io/opencensus/trace/TracestateTest.java | 2 |
2 files changed, 16 insertions, 4 deletions
diff --git a/api/src/main/java/io/opencensus/trace/Tracestate.java b/api/src/main/java/io/opencensus/trace/Tracestate.java index 63d32fd3..5535a0ac 100644 --- a/api/src/main/java/io/opencensus/trace/Tracestate.java +++ b/api/src/main/java/io/opencensus/trace/Tracestate.java @@ -75,9 +75,19 @@ public abstract class Tracestate { public abstract List<Entry> getEntries(); /** - * Returns a builder based on this {@code Tracestate}. + * Returns a {@code Builder} based on an empty {@code Tracestate}. * - * @return a builder based on this {@code Tracestate}. + * @return a {@code Builder} based on an empty {@code Tracestate}. + * @since 0.16 + */ + public static Builder builder() { + return new Builder(); + } + + /** + * Returns a {@code Builder} based on this {@code Tracestate}. + * + * @return a {@code Builder} based on this {@code Tracestate}. * @since 0.16 */ public Builder toBuilder() { @@ -94,9 +104,11 @@ public abstract class Tracestate { private final Tracestate parent; @javax.annotation.Nullable private ArrayList<Entry> entries; + // Needs to be in this class to avoid initialization deadlock because super class depends on + // subclass (the auto-value generate class). private static final Tracestate EMPTY = create(Collections.<Entry>emptyList()); - public Builder() { + private Builder() { this(EMPTY); } diff --git a/api/src/test/java/io/opencensus/trace/TracestateTest.java b/api/src/test/java/io/opencensus/trace/TracestateTest.java index b347d8ad..3374eb75 100644 --- a/api/src/test/java/io/opencensus/trace/TracestateTest.java +++ b/api/src/test/java/io/opencensus/trace/TracestateTest.java @@ -37,7 +37,7 @@ public class TracestateTest { @Rule public final ExpectedException thrown = ExpectedException.none(); - private static final Tracestate EMPTY = new Tracestate.Builder().build(); + private static final Tracestate EMPTY = Tracestate.builder().build(); private final Tracestate firstTracestate = EMPTY.toBuilder().set(FIRST_KEY, FIRST_VALUE).build(); private final Tracestate secondTracestate = EMPTY.toBuilder().set(SECOND_KEY, SECOND_VALUE).build(); |