Class MutableMeasurement
java.lang.Object
io.opentelemetry.sdk.metrics.internal.state.MutableMeasurement
- All Implemented Interfaces:
Measurement
A mutable
Measurement
implementation
This 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
FieldsModifier and TypeFieldDescriptionprivate Attributes
private double
private long
private boolean
private boolean
private long
private long
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondouble
long
boolean
boolean
long
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
withAttributes
(Attributes attributes) Updates the attributes.withStartEpochNanos
(long startEpochNanos) Updates the startEpochNanos.
-
Field Details
-
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
-
-
Constructor Details
-
MutableMeasurement
public MutableMeasurement()
-
-
Method Details
-
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
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
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
- Specified by:
attributes
in interfaceMeasurement
-