Skip to content

Commit 6f6cfd9

Browse files
committed
Try builder first, then fallback to deprecated constructor
1 parent 9cdff7a commit 6f6cfd9

File tree

1 file changed

+8
-3
lines changed

1 file changed

+8
-3
lines changed

temporal-kotlin/src/main/kotlin/io/temporal/common/converter/KotlinObjectMapperFactory.kt

+8-3
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,14 @@ class KotlinObjectMapperFactory {
2929
fun new(): ObjectMapper {
3030
val mapper = JacksonJsonPayloadConverter.newDefaultObjectMapper()
3131

32-
// use deprecated constructor instead of builder to maintain compatibility with old jackson versions
33-
@Suppress("deprecation")
34-
val km = KotlinModule()
32+
val km = try {
33+
KotlinModule.Builder()
34+
.build()
35+
} catch (e: ClassNotFoundException) {
36+
// use deprecated constructor as fallback
37+
@Suppress("deprecation")
38+
KotlinModule()
39+
}
3540
mapper.registerModule(km)
3641
return mapper
3742
}

0 commit comments

Comments
 (0)