Class MutableMeasurement
- java.lang.Object
-
- io.opentelemetry.sdk.metrics.internal.state.MutableMeasurement
-
- All Implemented Interfaces:
Measurement
public final class MutableMeasurement extends java.lang.Object implements Measurement
A mutableMeasurement
implementationThis class is internal and is hence not for public use. Its APIs are unstable and can change at any time.
This class is not thread-safe.
-
-
Field Summary
Fields Modifier and Type Field Description private Attributes
attributes
private double
doubleValue
private long
epochNanos
private boolean
hasDoubleValue
private boolean
hasLongValue
private long
longValue
private long
startEpochNanos
-
Constructor Summary
Constructors Constructor Description MutableMeasurement()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Attributes
attributes()
double
doubleValue()
long
epochNanos()
boolean
hasDoubleValue()
boolean
hasLongValue()
long
longValue()
private void
set(long startEpochNanos, long epochNanos, boolean hasLongValue, long longValue, boolean hasDoubleValue, double doubleValue, Attributes attributes)
Sets the values.(package private) static void
setDoubleMeasurement(MutableMeasurement mutableMeasurement, long startEpochNanos, long epochNanos, double value, Attributes attributes)
(package private) static void
setLongMeasurement(MutableMeasurement mutableMeasurement, long startEpochNanos, long epochNanos, long value, Attributes attributes)
long
startEpochNanos()
Measurement
withAttributes(Attributes attributes)
Updates the attributes.Measurement
withStartEpochNanos(long startEpochNanos)
Updates the startEpochNanos.
-
-
-
Field Detail
-
startEpochNanos
private long startEpochNanos
-
epochNanos
private long epochNanos
-
hasLongValue
private boolean hasLongValue
-
longValue
private long longValue
-
hasDoubleValue
private boolean hasDoubleValue
-
doubleValue
private double doubleValue
-
attributes
private Attributes attributes
-
-
Method Detail
-
setDoubleMeasurement
static void setDoubleMeasurement(MutableMeasurement mutableMeasurement, long startEpochNanos, long epochNanos, double value, Attributes attributes)
-
setLongMeasurement
static void setLongMeasurement(MutableMeasurement mutableMeasurement, long startEpochNanos, long epochNanos, long value, Attributes attributes)
-
set
private void set(long startEpochNanos, long epochNanos, boolean hasLongValue, long longValue, boolean hasDoubleValue, double doubleValue, Attributes attributes)
Sets the values.
-
withStartEpochNanos
public Measurement withStartEpochNanos(long startEpochNanos)
Description copied from interface:Measurement
Updates the startEpochNanos.- Specified by:
withStartEpochNanos
in interfaceMeasurement
- Parameters:
startEpochNanos
- start epoch nanosecond- Returns:
- The updated object. For
ImmutableMeasurement
it will be a new object with the updated startEpochNanos and forMutableMeasurement
it will return itself with the startEpochNanos updated
-
withAttributes
public Measurement withAttributes(Attributes attributes)
Description copied from interface:Measurement
Updates the attributes.- Specified by:
withAttributes
in interfaceMeasurement
- Parameters:
attributes
- The attributes to update- Returns:
- The updated object. For
ImmutableMeasurement
it will be a new object with the updated attributes and forMutableMeasurement
it will return itself with the attributes updated
-
startEpochNanos
public long startEpochNanos()
- Specified by:
startEpochNanos
in interfaceMeasurement
-
epochNanos
public long epochNanos()
- Specified by:
epochNanos
in interfaceMeasurement
-
hasLongValue
public boolean hasLongValue()
- Specified by:
hasLongValue
in interfaceMeasurement
-
longValue
public long longValue()
- Specified by:
longValue
in interfaceMeasurement
-
hasDoubleValue
public boolean hasDoubleValue()
- Specified by:
hasDoubleValue
in interfaceMeasurement
-
doubleValue
public double doubleValue()
- Specified by:
doubleValue
in interfaceMeasurement
-
attributes
public Attributes attributes()
- Specified by:
attributes
in interfaceMeasurement
-
-