feat: implement Immutable pattern (Fixes #3448) (#3509)

* feat: implement Immutable pattern #3448

Add immutable/ module with ImmutableUser (final class, defensive copy,
withAge wither method), App demo, JUnit 5 tests, PlantUML diagram, and
README following project conventions.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* feat: add withName and withRoles wither methods to ImmutableUser #3448

Every field now has a corresponding wither for consistency.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

* fix: add junit-jupiter-api dependency to immutable module #3448

Required for @Test annotations and assert methods in test code.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
김정모andClaude Sonnet 4.6 authored and GitHub committed 2026-06-06 22:05:42 +03:00
1 parent d4a0ece9e3
commit 7473378ca2
7 files changed
+531

No files matched your search

+1
View File
@@ -147,6 +147,7 @@
<module>health-check</module>
<module>hexagonal-architecture</module>
<module>identity-map</module>
<module>immutable</module>
<module>intercepting-filter</module>
<module>interpreter</module>
<module>iterator</module>