Files
spring-ai/models
Sébastien Deleuze f21b8a42b5 Refine Jackson ObjectMapper handling
ObjectMapper instantiation is costly, so unless its usage
is one-shot, it is better to create a reusable instance
for upcoming usage.

Also, before this commit, serialization of most Kotlin
classes was not supported due to the lack of proper
Jackson KotlinModule detection.

This commit:
 - Avoids per invocation ObjectMapper instantiation when
   relevant
 - Automatically detects and enables well-known Jackson
   modules including the Kotlin one
 - Removes org.springframework.ai.vectorstore.JsonUtils
   which looks not needed anymore

More optimizations are possible like reusing more
ObjectMapper instances, but this could introduce more breaking
changes so this commit intends to be a good first step.

Kotlin tests will be provided in a follow-up commit.

Additional changes:
 - Update ModelOptionsUtils to use JacksonUtils.instantiateAvailableModules()
 - Add missing license headers
 - Add missing author Javadoc comments
2024-10-24 09:20:47 +02:00
..
2024-10-21 10:24:28 +02:00
2024-10-21 10:24:28 +02:00
2024-10-21 10:24:28 +02:00
2024-10-21 10:24:28 +02:00
2024-10-21 10:24:28 +02:00
2024-10-21 10:24:28 +02:00
2024-10-21 10:24:28 +02:00
2024-10-21 10:24:28 +02:00
2024-10-21 10:24:28 +02:00
2024-10-21 10:24:28 +02:00