Skip to content

Conversation

@dfcoffin
Copy link
Contributor

Summary

Removed the 4-parameter convenience constructor from ApplicationInformationDto that only accepted dataCustodianId, clientId, clientSecret, and clientName.

Changes

  • Removed: 4-parameter constructor (lines 217-223)
  • Retained:
    • Default no-arg constructor (required for JAXB)
    • Canonical constructor with all 37 fields (auto-generated by Java record)
  • Updated: Javadoc for default constructor to clarify canonical constructor availability

Rationale

  • Simplifies the DTO by reducing constructor options
  • The minimum required fields constructor was not used anywhere in the codebase
  • Encourages use of the canonical constructor to ensure all required fields are properly set
  • Prevents partial initialization that could lead to incomplete data

Testing

  • ✅ All 18 integration tests passing:
    • H2: 6 tests
    • MySQL: 6 tests
    • PostgreSQL: 6 tests
  • ✅ Build verified successful with no errors
  • ✅ No breaking changes - constructor was unused in codebase

Impact

  • Breaking Change: No (constructor was not in use)
  • API Change: Yes (removes a public constructor)
  • Migration Required: No

Closes #40

🤖 Generated with Claude Code

…nInformationDto

  Removed the 4-parameter convenience constructor. DTO now has only:
  1. Default no-arg constructor (required for JAXB)
  2. Canonical constructor with all 37 fields (auto-generated by record)

  All 18 integration tests passing (H2, MySQL, PostgreSQL).

  Resolves #40
@dfcoffin dfcoffin merged commit 957c403 into main Dec 20, 2025
5 checks passed
@dfcoffin dfcoffin deleted the feature/refactor-application-information-dto-constructors branch December 20, 2025 06:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Refactor ApplicationInformatinDto to remove (minimum required fields) constructor

2 participants