File tree Expand file tree Collapse file tree 1 file changed +6
-12
lines changed
src/main/kotlin/com/fasterxml/jackson/module/kotlin/deser/singleton_support Expand file tree Collapse file tree 1 file changed +6
-12
lines changed Original file line number Diff line number Diff line change @@ -7,25 +7,19 @@ import com.fasterxml.jackson.databind.deser.BeanDeserializerModifier
7
7
import com.fasterxml.jackson.module.kotlin.isKotlinClass
8
8
9
9
// [module-kotlin#225]: keep Kotlin singletons as singletons
10
- object KotlinBeanDeserializerModifier : BeanDeserializerModifier() {
10
+ internal object KotlinBeanDeserializerModifier : BeanDeserializerModifier() {
11
11
override fun modifyDeserializer (
12
12
config : DeserializationConfig ,
13
13
beanDesc : BeanDescription ,
14
14
deserializer : JsonDeserializer <* >
15
15
): JsonDeserializer <out Any > {
16
16
val modifiedFromParent = super .modifyDeserializer(config, beanDesc, deserializer)
17
17
18
- val objectSingletonInstance = objectSingletonInstance(beanDesc.beanClass)
19
- return if (objectSingletonInstance != null ) {
20
- KotlinObjectSingletonDeserializer (objectSingletonInstance, modifiedFromParent)
21
- } else {
22
- modifiedFromParent
23
- }
18
+ return objectSingletonInstance(beanDesc.beanClass)
19
+ ?.let { KotlinObjectSingletonDeserializer (it, modifiedFromParent) }
20
+ ? : modifiedFromParent
24
21
}
25
22
}
26
23
27
- private fun objectSingletonInstance (beanClass : Class <* >): Any? = if (! beanClass.isKotlinClass()) {
28
- null
29
- } else {
30
- beanClass.kotlin.objectInstance
31
- }
24
+ private fun objectSingletonInstance (beanClass : Class <* >): Any? = beanClass.takeIf { beanClass.isKotlinClass() }
25
+ ?.let { it.kotlin.objectInstance }
You can’t perform that action at this time.
0 commit comments