aws / aws/aws-sdk-java-v2

DynamoDB Enhanced: Support other java.time types

Offen
#4,707 1 Kommentar 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
dynamodb-enhanced feature-request p2
Vorherrschende Sprache
Java
Sterne
2.6k
Forks
1k
Ø Merge
2 T. 9 Std.
Gemergte PRs (30 T.)
51

Beschreibung

### Describe the feature

As of 2.21.25, the DynamoDB Enhanced client supports out-of-the-box a large portion of the `java.time` value types, such as `Instant`, `LocalTime`, and even `ZoneId`. However, there are some other types that do not have built-in converters.

### Use Case

I am writing a table to track usage for billing purposes, and one of my columns is the billing month, represented in Java code by `java.time.YearMonth`. The naive string representation is simply "YYYY-mm", which is exactly what I want in my column, but `YearMonth` can't be mapped without extra configuration.

### Proposed Solution

Add converters for all remaining `java.time` value types, particularly including:
- `Month`
- `MonthDay`
- `Period`
- `Year`
- `YearMonth`

All of these types have simple, clearly-defined ISO-8601 representations that are their native defaults.

### Other Information

_No response_

### Acknowledgements

- [x] I may be able to implement this feature request
- [ ] This feature might incur a breaking change

### AWS Java SDK version used

2.21.25

### JDK version used

openjdk version "11.0.18" 2023-01-17

### Operating System and version

Gentoo Linux

Beitragsleitfaden

Beitragsleitfaden öffnen

Rechercherichtung

Beginne im DynamoDB Enhanced client damit, die vorhandenen java.time-Konverter und ihre Tests zu finden. Überprüfe, wie die aufgeführten Typen Month, MonthDay, Period, Year und YearMonth dargestellt werden, und ergänze Tests, die zeigen, dass jeder Typ sein natives ISO-8601-Format verwendet und ohne zusätzliche Konfiguration zugeordnet werden kann.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
databases
Issue-Typ
Feature
Schwierigkeit
3/5
Geschätzter Aufwand
1-2 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
48/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.