Class TraceOptions

java.lang.Object
io.opencensus.trace.TraceOptions

@Immutable public final class TraceOptions extends Object
A class that represents global trace options. These options are propagated to all child spans. These determine features such as whether a Span should be traced. It is implemented as a bitmask.
Since:
0.5
  • Field Details

    • DEFAULT_OPTIONS

      private static final byte DEFAULT_OPTIONS
      See Also:
    • IS_SAMPLED

      private static final byte IS_SAMPLED
      See Also:
    • SIZE

      public static final int SIZE
      The size in bytes of the TraceOptions.
      Since:
      0.5
      See Also:
    • BASE16_SIZE

      private static final int BASE16_SIZE
      See Also:
    • DEFAULT

      public static final TraceOptions DEFAULT
      The default TraceOptions.
      Since:
      0.5
    • options

      private final byte options
  • Constructor Details

    • TraceOptions

      private TraceOptions(byte options)
  • Method Details

    • fromBytes

      @Deprecated public static TraceOptions fromBytes(byte[] buffer)
      Deprecated.
      Returns a TraceOptions built from a byte representation.

      Equivalent with:

      
       TraceOptions.fromBytes(buffer, 0);
       
      Parameters:
      buffer - the representation of the TraceOptions.
      Returns:
      a TraceOptions whose representation is given by the buffer parameter.
      Throws:
      NullPointerException - if buffer is null.
      IllegalArgumentException - if buffer.length is not SIZE.
      Since:
      0.5
    • fromBytes

      @Deprecated public static TraceOptions fromBytes(byte[] src, int srcOffset)
      Deprecated.
      Returns a TraceOptions whose representation is copied from the src beginning at the srcOffset offset.
      Parameters:
      src - the buffer where the representation of the TraceOptions is copied.
      srcOffset - the offset in the buffer where the representation of the TraceOptions begins.
      Returns:
      a TraceOptions whose representation is copied from the buffer.
      Throws:
      NullPointerException - if src is null.
      IndexOutOfBoundsException - if srcOffset+TraceOptions.SIZE is greater than src.length.
      Since:
      0.5
    • fromByte

      public static TraceOptions fromByte(byte src)
      Returns a TraceOptions whose representation is src.
      Parameters:
      src - the byte representation of the TraceOptions.
      Returns:
      a TraceOptions whose representation is src.
      Since:
      0.16
    • fromLowerBase16

      public static TraceOptions fromLowerBase16(CharSequence src, int srcOffset)
      Returns a TraceOption built from a lowercase base16 representation.
      Parameters:
      src - the lowercase base16 representation.
      srcOffset - the offset in the buffer where the representation of the TraceOptions begins.
      Returns:
      a TraceOption built from a lowercase base16 representation.
      Throws:
      NullPointerException - if src is null.
      IllegalArgumentException - if src.length is not 2 * TraceOption.SIZE OR if the str has invalid characters.
      Since:
      0.18
    • getByte

      public byte getByte()
      Returns the one byte representation of the TraceOptions.
      Returns:
      the one byte representation of the TraceOptions.
      Since:
      0.16
    • getBytes

      @Deprecated public byte[] getBytes()
      Deprecated.
      Returns the 1-byte array representation of the TraceOptions.
      Returns:
      the 1-byte array representation of the TraceOptions.
      Since:
      0.5
    • copyBytesTo

      public void copyBytesTo(byte[] dest, int destOffset)
      Copies the byte representations of the TraceOptions into the dest beginning at the destOffset offset.

      Equivalent with (but faster because it avoids any new allocations):

      
       System.arraycopy(getBytes(), 0, dest, destOffset, TraceOptions.SIZE);
       
      Parameters:
      dest - the destination buffer.
      destOffset - the starting offset in the destination buffer.
      Throws:
      NullPointerException - if dest is null.
      IndexOutOfBoundsException - if destOffset+TraceOptions.SIZE is greater than dest.length.
      Since:
      0.5
    • copyLowerBase16To

      public void copyLowerBase16To(char[] dest, int destOffset)
      Copies the lowercase base16 representations of the TraceId into the dest beginning at the destOffset offset.
      Parameters:
      dest - the destination buffer.
      destOffset - the starting offset in the destination buffer.
      Throws:
      IndexOutOfBoundsException - if destOffset + 2 is greater than dest.length.
      Since:
      0.18
    • toLowerBase16

      public String toLowerBase16()
      Returns the lowercase base16 encoding of this TraceOptions.
      Returns:
      the lowercase base16 encoding of this TraceOptions.
      Since:
      0.18
    • builder

      public static TraceOptions.Builder builder()
      Returns a new TraceOptions.Builder with default options.
      Returns:
      a new Builder with default options.
      Since:
      0.5
    • builder

      public static TraceOptions.Builder builder(TraceOptions traceOptions)
      Returns a new TraceOptions.Builder with all given options set.
      Parameters:
      traceOptions - the given options set.
      Returns:
      a new Builder with all given options set.
      Since:
      0.5
    • isSampled

      public boolean isSampled()
      Returns a boolean indicating whether this Span is part of a sampled trace and data should be exported to a persistent store.
      Returns:
      a boolean indicating whether the trace is sampled.
      Since:
      0.5
    • equals

      public boolean equals(@Nullable Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getOptions

      byte getOptions()
    • hasOption

      private boolean hasOption(int mask)