Class DoubleAttributeConverter
java.lang.Object
software.amazon.awssdk.enhanced.dynamodb.internal.converter.attribute.DoubleAttributeConverter
- All Implemented Interfaces:
AttributeConverter<Double>
,PrimitiveConverter<Double>
@ThreadSafe
@Immutable
public final class DoubleAttributeConverter
extends Object
implements AttributeConverter<Double>, PrimitiveConverter<Double>
A converter between
Double
and AttributeValue
.
This stores values in DynamoDB as a number.
This supports converting numbers stored in DynamoDB into a double-precision floating point number, within the range
Double.MIN_VALUE
, Double.MAX_VALUE
. For less precision or smaller values, consider using
FloatAttributeConverter
. For greater precision or larger values, consider using BigDecimalAttributeConverter
.
If values are known to be whole numbers, it is recommended to use a perfect-precision whole number representation like those
provided by ShortAttributeConverter
, IntegerAttributeConverter
or BigIntegerAttributeConverter
.
This can be created via create()
.
-
Method Summary
Modifier and TypeMethodDescriptionTheAttributeValueType
that a converter stores and reads values from DynamoDB via theAttributeValue
class.static DoubleAttributeConverter
create()
The type supported by this converter.transformFrom
(Double input) Convert the provided Java object into anAttributeValue
.transformTo
(AttributeValue input) Convert the providedAttributeValue
into a Java object.type()
The type supported by this converter.
-
Method Details
-
create
-
type
Description copied from interface:AttributeConverter
The type supported by this converter.- Specified by:
type
in interfaceAttributeConverter<Double>
-
attributeValueType
Description copied from interface:AttributeConverter
TheAttributeValueType
that a converter stores and reads values from DynamoDB via theAttributeValue
class.- Specified by:
attributeValueType
in interfaceAttributeConverter<Double>
-
transformFrom
Description copied from interface:AttributeConverter
Convert the provided Java object into anAttributeValue
. This will raise aRuntimeException
if the conversion fails, or the input is null.Example:
InstantAsStringAttributeConverter converter = InstantAsStringAttributeConverter.create(); assertEquals(converter.transformFrom(Instant.EPOCH), EnhancedAttributeValue.fromString("1970-01-01T00:00:00Z").toAttributeValue());
- Specified by:
transformFrom
in interfaceAttributeConverter<Double>
-
transformTo
Description copied from interface:AttributeConverter
Convert the providedAttributeValue
into a Java object. This will raise aRuntimeException
if the conversion fails, or the input is null.Example:
InstantAsStringAttributeConverter converter = InstantAsStringAttributeConverter.create(); assertEquals(converter.transformTo(EnhancedAttributeValue.fromString("1970-01-01T00:00:00Z").toAttributeValue()), Instant.EPOCH);
- Specified by:
transformTo
in interfaceAttributeConverter<Double>
-
primitiveType
Description copied from interface:PrimitiveConverter
The type supported by this converter.- Specified by:
primitiveType
in interfacePrimitiveConverter<Double>
-