Class TraceId
java.lang.Object
io.opencensus.trace.TraceId
- All Implemented Interfaces:
Comparable<TraceId>
A class that represents a trace identifier. A valid trace identifier is a 16-byte array with at
least one non-zero byte.
- Since:
- 0.5
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final intprivate final longprivate final longstatic final TraceIdThe invalidTraceId.private static final longstatic final intThe size in bytes of theTraceId. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionintvoidcopyBytesTo(byte[] dest, int destOffset) Copies the byte array representations of theTraceIdinto thedestbeginning at thedestOffsetoffset.voidcopyLowerBase16To(char[] dest, int destOffset) Copies the lowercase base16 representations of theTraceIdinto thedestbeginning at thedestOffsetoffset.booleanstatic TraceIdfromBytes(byte[] src) Returns aTraceIdbuilt from a byte representation.static TraceIdfromBytes(byte[] src, int srcOffset) Returns aTraceIdwhose representation is copied from thesrcbeginning at thesrcOffsetoffset.static TraceIdReturns aTraceIdbuilt from a lowercase base16 representation.static TraceIdfromLowerBase16(CharSequence src, int srcOffset) Returns aTraceIdbuilt from a lowercase base16 representation.static TraceIdgenerateRandomId(Random random) Generates a new randomTraceId.byte[]getBytes()Returns the 16-bytes array representation of theTraceId.longReturns the lower 8 bytes of the trace-id as a long value, assuming little-endian order.inthashCode()booleanisValid()Returns whether theTraceIdis valid.Returns the lowercase base16 encoding of thisTraceId.toString()
-
Field Details
-
SIZE
public static final int SIZEThe size in bytes of theTraceId.- Since:
- 0.5
- See Also:
-
BASE16_SIZE
private static final int BASE16_SIZE- See Also:
-
INVALID_ID
private static final long INVALID_ID- See Also:
-
INVALID
-
idHi
private final long idHi -
idLo
private final long idLo
-
-
Constructor Details
-
TraceId
private TraceId(long idHi, long idLo)
-
-
Method Details
-
fromBytes
Returns aTraceIdbuilt from a byte representation.- Parameters:
src- the representation of theTraceId.- Returns:
- a
TraceIdwhose representation is given by thesrcparameter. - Throws:
NullPointerException- ifsrcis null.IllegalArgumentException- ifsrc.lengthis notSIZE.- Since:
- 0.5
-
fromBytes
Returns aTraceIdwhose representation is copied from thesrcbeginning at thesrcOffsetoffset.- Parameters:
src- the buffer where the representation of theTraceIdis copied.srcOffset- the offset in the buffer where the representation of theTraceIdbegins.- Returns:
- a
TraceIdwhose representation is copied from the buffer. - Throws:
NullPointerException- ifsrcis null.IndexOutOfBoundsException- ifsrcOffset+TraceId.SIZEis greater thansrc.length.- Since:
- 0.5
-
fromLowerBase16
Returns aTraceIdbuilt from a lowercase base16 representation.- Parameters:
src- the lowercase base16 representation.- Returns:
- a
TraceIdbuilt from a lowercase base16 representation. - Throws:
NullPointerException- ifsrcis null.IllegalArgumentException- ifsrc.lengthis not2 * TraceId.SIZEOR if thestrhas invalid characters.- Since:
- 0.11
-
fromLowerBase16
Returns aTraceIdbuilt from a lowercase base16 representation.- Parameters:
src- the lowercase base16 representation.srcOffset- the offset in the buffer where the representation of theTraceIdbegins.- Returns:
- a
TraceIdbuilt from a lowercase base16 representation. - Throws:
NullPointerException- ifsrcis null.IllegalArgumentException- if not enough characters in thesrcfrom thesrcOffset.- Since:
- 0.11
-
generateRandomId
-
getBytes
public byte[] getBytes()Returns the 16-bytes array representation of theTraceId.- Returns:
- the 16-bytes array representation of the
TraceId. - Since:
- 0.5
-
copyBytesTo
public void copyBytesTo(byte[] dest, int destOffset) Copies the byte array representations of theTraceIdinto thedestbeginning at thedestOffsetoffset.- Parameters:
dest- the destination buffer.destOffset- the starting offset in the destination buffer.- Throws:
NullPointerException- ifdestis null.IndexOutOfBoundsException- ifdestOffset+TraceId.SIZEis greater thandest.length.- Since:
- 0.5
-
copyLowerBase16To
public void copyLowerBase16To(char[] dest, int destOffset) Copies the lowercase base16 representations of theTraceIdinto thedestbeginning at thedestOffsetoffset.- Parameters:
dest- the destination buffer.destOffset- the starting offset in the destination buffer.- Throws:
IndexOutOfBoundsException- ifdestOffset + 2 * TraceId.SIZEis greater thandest.length.- Since:
- 0.18
-
isValid
public boolean isValid()Returns whether theTraceIdis valid. A valid trace identifier is a 16-byte array with at least one non-zero byte.- Returns:
trueif theTraceIdis valid.- Since:
- 0.5
-
toLowerBase16
Returns the lowercase base16 encoding of thisTraceId.- Returns:
- the lowercase base16 encoding of this
TraceId. - Since:
- 0.11
-
getLowerLong
Returns the lower 8 bytes of the trace-id as a long value, assuming little-endian order. This is used in ProbabilitySampler.This method is marked as internal and subject to change.
- Returns:
- the lower 8 bytes of the trace-id as a long value, assuming little-endian order.
-
equals
-
hashCode
-
toString
-
compareTo
- Specified by:
compareToin interfaceComparable<TraceId>
-