Class BigDecimalAttributeConverter
java.lang.Object
software.amazon.awssdk.enhanced.dynamodb.internal.converter.attribute.BigDecimalAttributeConverter
- All Implemented Interfaces:
AttributeConverter<BigDecimal>
@ThreadSafe
@Immutable
public final class BigDecimalAttributeConverter
extends Object
implements AttributeConverter<BigDecimal>
A converter between
BigDecimal and AttributeValue.
This stores values in DynamoDB as a number.
This supports perfect precision with the full range of numbers that can be stored in DynamoDB. For less precision or
smaller values, consider using FloatAttributeConverter or DoubleAttributeConverter.
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 TypeMethodDescriptionTheAttributeValueTypethat a converter stores and reads values from DynamoDB via theAttributeValueclass.static BigDecimalAttributeConvertercreate()transformFrom(BigDecimal input) Convert the provided Java object into anAttributeValue.transformTo(AttributeValue input) Convert the providedAttributeValueinto a Java object.type()The type supported by this converter.
-
Method Details
-
create
-
type
Description copied from interface:AttributeConverterThe type supported by this converter.- Specified by:
typein interfaceAttributeConverter<BigDecimal>
-
attributeValueType
Description copied from interface:AttributeConverterTheAttributeValueTypethat a converter stores and reads values from DynamoDB via theAttributeValueclass.- Specified by:
attributeValueTypein interfaceAttributeConverter<BigDecimal>
-
transformFrom
Description copied from interface:AttributeConverterConvert the provided Java object into anAttributeValue. This will raise aRuntimeExceptionif 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:
transformFromin interfaceAttributeConverter<BigDecimal>
-
transformTo
Description copied from interface:AttributeConverterConvert the providedAttributeValueinto a Java object. This will raise aRuntimeExceptionif 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:
transformToin interfaceAttributeConverter<BigDecimal>
-