Class OptionalDoubleAttributeConverter
- java.lang.Object
-
- software.amazon.awssdk.enhanced.dynamodb.internal.converter.attribute.OptionalDoubleAttributeConverter
-
- All Implemented Interfaces:
AttributeConverter<OptionalDouble>
@SdkInternalApi @ThreadSafe @Immutable public final class OptionalDoubleAttributeConverter extends Object implements AttributeConverter<OptionalDouble>
A converter betweenOptionalDoubleandAttributeValue.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. Null values are converted toOptionalDouble.empty(). For less precision or smaller values, consider usingOptionalAttributeConverteralong with aFloattype. For greater precision or larger values, consider usingOptionalAttributeConverteralong with aBigDecimaltype.If values are known to be whole numbers, it is recommended to use a perfect-precision whole number representation like those provided by
OptionalIntAttributeConverter,OptionalLongAttributeConverter, or aOptionalAttributeConverteralong with aBigIntegertype.This can be created via
create().
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description AttributeValueTypeattributeValueType()TheAttributeValueTypethat a converter stores and reads values from DynamoDB via theAttributeValueclass.static OptionalDoubleAttributeConvertercreate()AttributeValuetransformFrom(OptionalDouble input)Convert the provided Java object into anAttributeValue.OptionalDoubletransformTo(AttributeValue input)Convert the providedAttributeValueinto a Java object.EnhancedType<OptionalDouble>type()The type supported by this converter.
-
-
-
Method Detail
-
create
public static OptionalDoubleAttributeConverter create()
-
type
public EnhancedType<OptionalDouble> type()
Description copied from interface:AttributeConverterThe type supported by this converter.- Specified by:
typein interfaceAttributeConverter<OptionalDouble>
-
attributeValueType
public AttributeValueType attributeValueType()
Description copied from interface:AttributeConverterTheAttributeValueTypethat a converter stores and reads values from DynamoDB via theAttributeValueclass.- Specified by:
attributeValueTypein interfaceAttributeConverter<OptionalDouble>
-
transformFrom
public AttributeValue transformFrom(OptionalDouble input)
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<OptionalDouble>
-
transformTo
public OptionalDouble transformTo(AttributeValue input)
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<OptionalDouble>
-
-