Interface StatelessMarshaler<T>

All Known Implementing Classes:
AnyValueStatelessMarshaler, ArrayAnyValueStatelessMarshaler, BoolAnyValueStatelessMarshaler, BytesAnyValueStatelessMarshaler, DoubleAnyValueStatelessMarshaler, ExemplarStatelessMarshaler, ExponentialHistogramBucketsStatelessMarshaler, ExponentialHistogramDataPointStatelessMarshaler, ExponentialHistogramStatelessMarshaler, GaugeStatelessMarshaler, HistogramDataPointStatelessMarshaler, HistogramStatelessMarshaler, IntAnyValueStatelessMarshaler, KeyValueListAnyValueStatelessMarshaler, KeyValueStatelessMarshaler, LogStatelessMarshaler, MetricStatelessMarshaler, NumberDataPointStatelessMarshaler, SpanEventStatelessMarshaler, SpanLinkStatelessMarshaler, SpanStatelessMarshaler, SpanStatusStatelessMarshaler, StringAnyValueStatelessMarshaler, SummaryDataPointStatelessMarshaler, SummaryStatelessMarshaler, SumStatelessMarshaler, ValueAtQuantileStatelessMarshaler

public interface StatelessMarshaler<T>
Marshaler from an SDK structure to protobuf wire format. It is intended that the instances of this interface don't keep marshaling state and can be singletons. Any state needed for marshaling should be stored in MarshalerContext. Marshaler should be used so that first getBinarySerializedSize(T, io.opentelemetry.exporter.internal.marshal.MarshalerContext) is called and after that writeTo(io.opentelemetry.exporter.internal.marshal.Serializer, T, io.opentelemetry.exporter.internal.marshal.MarshalerContext) is called. Calling getBinarySerializedSize(T, io.opentelemetry.exporter.internal.marshal.MarshalerContext) may add values to MarshalerContext that are later used in writeTo(io.opentelemetry.exporter.internal.marshal.Serializer, T, io.opentelemetry.exporter.internal.marshal.MarshalerContext).

This class is internal and is hence not for public use. Its APIs are unstable and can change at any time.