Closed
Description
This issue represents the desire for the DynamoDB Enhanced Client to be able to support Java idiomatic immutable data classes for mapping purposes. At time of writing only mutable 'bean'-like classes with standard getters and setters are supported.
Full support for immutables would likely include :
- An implementation of TableSchema that supported the direct compile-time declaration of attributes for an immutable object, like the StaticTableSchema.
- Would support the common Java idiom of a separate Builder class for the immutable object.
- An implementation of TableSchema that supported introspection of an annotated class to build a static table schema, like the BeanTableSchema.
- Would support inherited immutable (bonus if it can support mutable too) classes with abstract super like StaticTableSchema does.
- Would support composed immutable (bonus if it can support mutable too) classes with flattened attributes like StaticTableSchema does.