aws-sdk-java-v2 icon indicating copy to clipboard operation
aws-sdk-java-v2 copied to clipboard

Feature/support auto generated timestamp in nested objects

Open ghetelgb opened this issue 10 months ago • 1 comments

Motivation and Context

Expected behavior: Using auto generated timestamp extension should work on nested objects too. (previously, they would only work on root level of the records)

Modifications

Fix: The beforeWrite() method for the implementation of the auto generated timestamp extension was updated to iterate over attributes in a recursive way in order to find and set current instant time for annotated attributes within the nested objects.

Testing

Screenshots (if appropriate)

Types of changes

  • [ ] Bug fix (non-breaking change which fixes an issue)
  • [ ] New feature (non-breaking change which adds functionality)

Checklist

  • [ ] I have read the CONTRIBUTING document
  • [ ] Local run of mvn install succeeds
  • [ ] My code follows the code style of this project
  • [ ] My change requires a change to the Javadoc documentation
  • [ ] I have updated the Javadoc documentation accordingly
  • [ ] I have added tests to cover my changes
  • [ ] All new and existing tests passed
  • [ ] I have added a changelog entry. Adding a new entry must be accomplished by running the scripts/new-change script and following the instructions. Commit the new file created by the script in .changes/next-release with your changes.
  • [ ] My change is to implement 1.11 parity feature and I have updated LaunchChangelog

License

  • [ ] I confirm that this pull request can be released under the Apache 2 license

ghetelgb avatar Mar 14 '25 14:03 ghetelgb

This task should be addressed alongside ticket "Support @DynamoDbUpdateBehavior in nested objects" to ensure correct behavior when @DynamoDbAutoGeneratedTimestampAttribute is used with the @DynamoDbUpdateBehavior(UpdateBehavior.WRITE_IF_NOT_EXISTS) annotation, preventing timestamp fields (e.g., creationDate) from being overwritten on every write operation. These changes should be merged into the master branch once that ticket is completed.

roamariei avatar Apr 11 '25 14:04 roamariei

Superseded by https://github.com/aws/aws-sdk-java-v2/pull/6109.

debora-ito avatar May 19 '25 20:05 debora-ito