diff --git a/CHANGELOG.md b/CHANGELOG.md index 6e73095..3fe3762 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -15,6 +15,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Spring Boot JPA demo application showcasing FriendlyId with JPA, REST API, and OpenFeign ### Changed +- **Breaking**: Renamed `FriendlyIdFormat.RAW` to `FriendlyIdFormat.UUID` for clarity - Upgraded from Java 8 to Java 21 - Upgraded from Spring Boot 2.2.2 to 3.4.1 - Upgraded from JUnit 4 to JUnit 5 diff --git a/friendly-id-jackson-datatype/src/main/java/com/devskiller/friendly_id/jackson/FriendlyIdDeserializer.java b/friendly-id-jackson-datatype/src/main/java/com/devskiller/friendly_id/jackson/FriendlyIdDeserializer.java index 541854e..fc9b590 100644 --- a/friendly-id-jackson-datatype/src/main/java/com/devskiller/friendly_id/jackson/FriendlyIdDeserializer.java +++ b/friendly-id-jackson-datatype/src/main/java/com/devskiller/friendly_id/jackson/FriendlyIdDeserializer.java @@ -45,7 +45,7 @@ public UUID deserialize(JsonParser parser, DeserializationContext ctxt) { public ValueDeserializer createContextual(DeserializationContext ctxt, BeanProperty property) { if (property != null) { var annotation = property.getAnnotation(IdFormat.class); - if (annotation != null && annotation.value() == FriendlyIdFormat.RAW) { + if (annotation != null && annotation.value() == FriendlyIdFormat.UUID) { return new FriendlyIdDeserializer(false); } } diff --git a/friendly-id-jackson-datatype/src/main/java/com/devskiller/friendly_id/jackson/FriendlyIdModule.java b/friendly-id-jackson-datatype/src/main/java/com/devskiller/friendly_id/jackson/FriendlyIdModule.java index 69fe9e8..2327ff6 100644 --- a/friendly-id-jackson-datatype/src/main/java/com/devskiller/friendly_id/jackson/FriendlyIdModule.java +++ b/friendly-id-jackson-datatype/src/main/java/com/devskiller/friendly_id/jackson/FriendlyIdModule.java @@ -14,7 +14,7 @@ * enabling automatic conversion between UUID values and their FriendlyId string representation. *

*

- * By default, UUIDs are serialized as Base62 FriendlyIds. Use {@link FriendlyIdFormat#RAW} + * By default, UUIDs are serialized as Base62 FriendlyIds. Use {@link FriendlyIdFormat#UUID} * to serialize UUIDs in standard format while still accepting both formats on deserialization. * Per-field format can always be overridden with {@link com.devskiller.friendly_id.IdFormat @IdFormat}. *

@@ -31,7 +31,7 @@ public FriendlyIdModule() { /** * Creates a module with the specified default serialization format. *

- * When {@link FriendlyIdFormat#RAW} is used, UUIDs are serialized in standard format + * When {@link FriendlyIdFormat#UUID} is used, UUIDs are serialized in standard format * but deserialization still accepts both standard UUIDs and Base62 FriendlyIds. * Per-field format can be overridden with {@link com.devskiller.friendly_id.IdFormat @IdFormat}. * diff --git a/friendly-id-jackson-datatype/src/main/java/com/devskiller/friendly_id/jackson/FriendlyIdSerializer.java b/friendly-id-jackson-datatype/src/main/java/com/devskiller/friendly_id/jackson/FriendlyIdSerializer.java index 308d98f..d076795 100644 --- a/friendly-id-jackson-datatype/src/main/java/com/devskiller/friendly_id/jackson/FriendlyIdSerializer.java +++ b/friendly-id-jackson-datatype/src/main/java/com/devskiller/friendly_id/jackson/FriendlyIdSerializer.java @@ -38,7 +38,7 @@ public void serialize(UUID uuid, JsonGenerator jsonGenerator, SerializationConte public ValueSerializer createContextual(SerializationContext ctxt, BeanProperty property) { if (property != null) { IdFormat annotation = property.getAnnotation(IdFormat.class); - if (annotation != null && annotation.value() == FriendlyIdFormat.RAW) { + if (annotation != null && annotation.value() == FriendlyIdFormat.UUID) { return new FriendlyIdSerializer(false); } } diff --git a/friendly-id-jackson-datatype/src/test/java/com/devskiller/friendly_id/spring/Bar.java b/friendly-id-jackson-datatype/src/test/java/com/devskiller/friendly_id/spring/Bar.java index 46eee9f..3139445 100644 --- a/friendly-id-jackson-datatype/src/test/java/com/devskiller/friendly_id/spring/Bar.java +++ b/friendly-id-jackson-datatype/src/test/java/com/devskiller/friendly_id/spring/Bar.java @@ -6,6 +6,6 @@ import com.devskiller.friendly_id.IdFormat; public record Bar( - @IdFormat(FriendlyIdFormat.RAW) UUID rawUuid, + @IdFormat(FriendlyIdFormat.UUID) UUID rawUuid, UUID friendlyId ) {} diff --git a/friendly-id-jackson-datatype/src/test/java/com/devskiller/friendly_id/spring/Foo.java b/friendly-id-jackson-datatype/src/test/java/com/devskiller/friendly_id/spring/Foo.java index cd96f4c..c8ff0d3 100644 --- a/friendly-id-jackson-datatype/src/test/java/com/devskiller/friendly_id/spring/Foo.java +++ b/friendly-id-jackson-datatype/src/test/java/com/devskiller/friendly_id/spring/Foo.java @@ -6,6 +6,6 @@ import com.devskiller.friendly_id.IdFormat; public record Foo( - @IdFormat(FriendlyIdFormat.RAW) UUID rawUuid, + @IdFormat(FriendlyIdFormat.UUID) UUID rawUuid, UUID friendlyId ) {} diff --git a/friendly-id-jackson-datatype/src/test/java/com/devskiller/friendly_id/spring/RawFormatModuleTest.java b/friendly-id-jackson-datatype/src/test/java/com/devskiller/friendly_id/spring/RawFormatModuleTest.java index 4756592..1ad3cd4 100644 --- a/friendly-id-jackson-datatype/src/test/java/com/devskiller/friendly_id/spring/RawFormatModuleTest.java +++ b/friendly-id-jackson-datatype/src/test/java/com/devskiller/friendly_id/spring/RawFormatModuleTest.java @@ -16,7 +16,7 @@ class RawFormatModuleTest { private final UUID uuid = UUID.fromString("f088ce5b-9279-4cc3-946a-c15ad740dd6d"); private final JsonMapper mapper = JsonMapper.builder() - .addModule(new FriendlyIdModule(FriendlyIdFormat.RAW)) + .addModule(new FriendlyIdModule(FriendlyIdFormat.UUID)) .build(); @Test @@ -48,9 +48,9 @@ void shouldRespectPerFieldOverrideWhenModuleIsRaw() { String json = mapper.writeValueAsString(foo); - // rawUuid has @IdFormat(RAW) -> standard format + // rawUuid has @IdFormat(UUID) -> standard format assertThat(json).contains("\"rawUuid\":\"f088ce5b-9279-4cc3-946a-c15ad740dd6d\""); - // friendlyId has no annotation, module default is RAW -> standard format + // friendlyId has no annotation, module default is UUID -> standard format assertThat(json).contains("\"friendlyId\":\"f088ce5b-9279-4cc3-946a-c15ad740dd6d\""); } diff --git a/friendly-id-jackson2-datatype/src/main/java/com/devskiller/friendly_id/jackson2/FriendlyIdAnnotationIntrospector.java b/friendly-id-jackson2-datatype/src/main/java/com/devskiller/friendly_id/jackson2/FriendlyIdAnnotationIntrospector.java index 2cbf916..1f07cbb 100644 --- a/friendly-id-jackson2-datatype/src/main/java/com/devskiller/friendly_id/jackson2/FriendlyIdAnnotationIntrospector.java +++ b/friendly-id-jackson2-datatype/src/main/java/com/devskiller/friendly_id/jackson2/FriendlyIdAnnotationIntrospector.java @@ -21,7 +21,7 @@ public Object findSerializer(Annotated annotatedMethod) { IdFormat annotation = _findAnnotation(annotatedMethod, IdFormat.class); if (annotatedMethod.getRawType() == UUID.class && annotation != null) { return switch (annotation.value()) { - case RAW -> UUIDSerializer.class; + case UUID -> UUIDSerializer.class; case URL62 -> FriendlyIdSerializer.class; }; } @@ -33,7 +33,7 @@ public Object findDeserializer(Annotated annotatedMethod) { var annotation = _findAnnotation(annotatedMethod, IdFormat.class); if (rawDeserializationType(annotatedMethod) == UUID.class && annotation != null) { return switch (annotation.value()) { - case RAW -> UUIDDeserializer.class; + case UUID -> UUIDDeserializer.class; case URL62 -> FriendlyIdDeserializer.class; }; } diff --git a/friendly-id-jackson2-datatype/src/test/java/com/devskiller/friendly_id/spring/Bar.java b/friendly-id-jackson2-datatype/src/test/java/com/devskiller/friendly_id/spring/Bar.java index 6d87496..fe0cd86 100644 --- a/friendly-id-jackson2-datatype/src/test/java/com/devskiller/friendly_id/spring/Bar.java +++ b/friendly-id-jackson2-datatype/src/test/java/com/devskiller/friendly_id/spring/Bar.java @@ -7,7 +7,7 @@ public class Bar { - @IdFormat(FriendlyIdFormat.RAW) + @IdFormat(FriendlyIdFormat.UUID) private final UUID rawUuid; private final UUID friendlyId; diff --git a/friendly-id-jackson2-datatype/src/test/java/com/devskiller/friendly_id/spring/Foo.java b/friendly-id-jackson2-datatype/src/test/java/com/devskiller/friendly_id/spring/Foo.java index c866ed3..035bf00 100644 --- a/friendly-id-jackson2-datatype/src/test/java/com/devskiller/friendly_id/spring/Foo.java +++ b/friendly-id-jackson2-datatype/src/test/java/com/devskiller/friendly_id/spring/Foo.java @@ -7,7 +7,7 @@ public class Foo { - @IdFormat(FriendlyIdFormat.RAW) + @IdFormat(FriendlyIdFormat.UUID) private UUID rawUuid; private UUID friendlyId; diff --git a/friendly-id-jackson2-datatype/src/test/java/com/devskiller/friendly_id/spring/RawFormatModuleTest.java b/friendly-id-jackson2-datatype/src/test/java/com/devskiller/friendly_id/spring/RawFormatModuleTest.java index d5e45b1..39d5c5e 100644 --- a/friendly-id-jackson2-datatype/src/test/java/com/devskiller/friendly_id/spring/RawFormatModuleTest.java +++ b/friendly-id-jackson2-datatype/src/test/java/com/devskiller/friendly_id/spring/RawFormatModuleTest.java @@ -16,7 +16,7 @@ class RawFormatModuleTest { private final UUID uuid = UUID.fromString("f088ce5b-9279-4cc3-946a-c15ad740dd6d"); private final ObjectMapper mapper = new ObjectMapper() - .registerModule(new FriendlyIdJackson2Module(FriendlyIdFormat.RAW)); + .registerModule(new FriendlyIdJackson2Module(FriendlyIdFormat.UUID)); @Test void shouldSerializeUuidInStandardFormat() throws Exception { @@ -49,9 +49,9 @@ void shouldRespectPerFieldAnnotationWhenModuleIsRaw() throws Exception { String json = mapper.writeValueAsString(foo); - // rawUuid has @IdFormat(RAW) -> standard format + // rawUuid has @IdFormat(UUID) -> standard format assertThat(json).contains("\"rawUuid\":\"f088ce5b-9279-4cc3-946a-c15ad740dd6d\""); - // friendlyId has no annotation, module default is RAW -> standard format + // friendlyId has no annotation, module default is UUID -> standard format assertThat(json).contains("\"friendlyId\":\"f088ce5b-9279-4cc3-946a-c15ad740dd6d\""); } } diff --git a/friendly-id-samples/friendly-id-contracts/src/main/java/com/devskiller/friendly_id/sample/contracts/Item.java b/friendly-id-samples/friendly-id-contracts/src/main/java/com/devskiller/friendly_id/sample/contracts/Item.java index b9e7802..046335d 100644 --- a/friendly-id-samples/friendly-id-contracts/src/main/java/com/devskiller/friendly_id/sample/contracts/Item.java +++ b/friendly-id-samples/friendly-id-contracts/src/main/java/com/devskiller/friendly_id/sample/contracts/Item.java @@ -10,13 +10,13 @@ * Example record demonstrating different UUID serialization formats. * * @param id UUID serialized as FriendlyId string (default behavior) - * @param rawId UUID serialized as raw UUID string + * @param rawId UUID serialized in standard UUID format * @param friendlyUuid UUID explicitly serialized as FriendlyId string * @param friendlyId FriendlyId value object type */ public record Item( UUID id, - @IdFormat(FriendlyIdFormat.RAW) UUID rawId, + @IdFormat(FriendlyIdFormat.UUID) UUID rawId, @IdFormat(FriendlyIdFormat.URL62) UUID friendlyUuid, FriendlyId friendlyId ) { diff --git a/friendly-id-samples/friendly-id-spring-boot-customized/src/main/java/com/devskiller/friendly_id/sample/customized/Item.java b/friendly-id-samples/friendly-id-spring-boot-customized/src/main/java/com/devskiller/friendly_id/sample/customized/Item.java index 7521ee7..df7ae24 100644 --- a/friendly-id-samples/friendly-id-spring-boot-customized/src/main/java/com/devskiller/friendly_id/sample/customized/Item.java +++ b/friendly-id-samples/friendly-id-spring-boot-customized/src/main/java/com/devskiller/friendly_id/sample/customized/Item.java @@ -10,13 +10,13 @@ * Example record demonstrating different UUID serialization formats. * * @param id UUID serialized as FriendlyId string (default behavior) - * @param rawId UUID serialized as raw UUID string + * @param rawId UUID serialized in standard UUID format * @param friendlyUuid UUID explicitly serialized as FriendlyId string * @param friendlyId FriendlyId value object type */ public record Item( UUID id, - @IdFormat(FriendlyIdFormat.RAW) UUID rawId, + @IdFormat(FriendlyIdFormat.UUID) UUID rawId, @IdFormat(FriendlyIdFormat.URL62) UUID friendlyUuid, FriendlyId friendlyId ) { diff --git a/friendly-id-samples/friendly-id-spring-boot-simple/src/main/java/com/devskiller/friendly_id/sample/simple/Item.java b/friendly-id-samples/friendly-id-spring-boot-simple/src/main/java/com/devskiller/friendly_id/sample/simple/Item.java index b4ad243..9c72dec 100644 --- a/friendly-id-samples/friendly-id-spring-boot-simple/src/main/java/com/devskiller/friendly_id/sample/simple/Item.java +++ b/friendly-id-samples/friendly-id-spring-boot-simple/src/main/java/com/devskiller/friendly_id/sample/simple/Item.java @@ -10,13 +10,13 @@ * Example record demonstrating different UUID serialization formats. * * @param id UUID serialized as FriendlyId string (default behavior) - * @param rawId UUID serialized as raw UUID string + * @param rawId UUID serialized in standard UUID format * @param friendlyUuid UUID explicitly serialized as FriendlyId string * @param friendlyId FriendlyId value object type */ public record Item( UUID id, - @IdFormat(FriendlyIdFormat.RAW) UUID rawId, + @IdFormat(FriendlyIdFormat.UUID) UUID rawId, @IdFormat(FriendlyIdFormat.URL62) UUID friendlyUuid, FriendlyId friendlyId ) { diff --git a/friendly-id-samples/friendly-id-spring-boot3-simple/src/main/java/com/devskiller/friendly_id/sample/spring3/Item.java b/friendly-id-samples/friendly-id-spring-boot3-simple/src/main/java/com/devskiller/friendly_id/sample/spring3/Item.java index 277b83c..8ca3abf 100644 --- a/friendly-id-samples/friendly-id-spring-boot3-simple/src/main/java/com/devskiller/friendly_id/sample/spring3/Item.java +++ b/friendly-id-samples/friendly-id-spring-boot3-simple/src/main/java/com/devskiller/friendly_id/sample/spring3/Item.java @@ -10,13 +10,13 @@ * Example record demonstrating different UUID serialization formats. * * @param id UUID serialized as FriendlyId string (default behavior) - * @param rawId UUID serialized as raw UUID string + * @param rawId UUID serialized in standard UUID format * @param friendlyUuid UUID explicitly serialized as FriendlyId string * @param friendlyId FriendlyId value object type */ public record Item( UUID id, - @IdFormat(FriendlyIdFormat.RAW) UUID rawId, + @IdFormat(FriendlyIdFormat.UUID) UUID rawId, @IdFormat(FriendlyIdFormat.URL62) UUID friendlyUuid, FriendlyId friendlyId ) { diff --git a/friendly-id/src/main/java/com/devskiller/friendly_id/FriendlyIdFormat.java b/friendly-id/src/main/java/com/devskiller/friendly_id/FriendlyIdFormat.java index 6e46580..ec7d861 100644 --- a/friendly-id/src/main/java/com/devskiller/friendly_id/FriendlyIdFormat.java +++ b/friendly-id/src/main/java/com/devskiller/friendly_id/FriendlyIdFormat.java @@ -11,7 +11,7 @@ public enum FriendlyIdFormat { URL62, /** - * Leave this ID as is (without conversion) + * Standard UUID format (without Base62 conversion) */ - RAW + UUID }