Skip to content

Commit 84e9907

Browse files
authored
Merge pull request #11 from ProjectMapK/refactor-kotlinmodule
Simplify module settings.
2 parents 3977a84 + abd4586 commit 84e9907

File tree

2 files changed

+10
-31
lines changed

2 files changed

+10
-31
lines changed

src/main/kotlin/com/fasterxml/jackson/module/kotlin/KotlinModule.kt

Lines changed: 10 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,8 @@ import com.fasterxml.jackson.databind.module.SimpleModule
55
import com.fasterxml.jackson.module.kotlin.KotlinFeature.NullIsSameAsDefault
66
import com.fasterxml.jackson.module.kotlin.KotlinFeature.NullToEmptyCollection
77
import com.fasterxml.jackson.module.kotlin.KotlinFeature.NullToEmptyMap
8+
import com.fasterxml.jackson.module.kotlin.KotlinFeature.SingletonSupport
89
import com.fasterxml.jackson.module.kotlin.KotlinFeature.StrictNullChecks
9-
import com.fasterxml.jackson.module.kotlin.SingletonSupport.CANONICALIZE
10-
import com.fasterxml.jackson.module.kotlin.SingletonSupport.DISABLED
1110
import com.fasterxml.jackson.module.kotlin.deser.deserializers.KotlinDeserializers
1211
import com.fasterxml.jackson.module.kotlin.deser.deserializers.KotlinKeyDeserializers
1312
import com.fasterxml.jackson.module.kotlin.deser.singleton_support.KotlinBeanDeserializerModifier
@@ -33,22 +32,19 @@ import kotlin.reflect.KClass
3332
* protects against this but has significant performance impact.
3433
*/
3534
public class KotlinModule private constructor(
36-
public val reflectionCacheSize: Int = 512,
37-
public val nullToEmptyCollection: Boolean = false,
38-
public val nullToEmptyMap: Boolean = false,
39-
public val nullIsSameAsDefault: Boolean = false,
40-
public val singletonSupport: SingletonSupport = DISABLED,
41-
public val strictNullChecks: Boolean = false
35+
public val reflectionCacheSize: Int,
36+
public val nullToEmptyCollection: Boolean,
37+
public val nullToEmptyMap: Boolean,
38+
public val nullIsSameAsDefault: Boolean,
39+
public val singletonSupport: Boolean,
40+
public val strictNullChecks: Boolean
4241
) : SimpleModule(KotlinModule::class.java.name /* TODO: add Version parameter */) {
4342
private constructor(builder: Builder) : this(
4443
builder.reflectionCacheSize,
4544
builder.isEnabled(NullToEmptyCollection),
4645
builder.isEnabled(NullToEmptyMap),
4746
builder.isEnabled(NullIsSameAsDefault),
48-
when {
49-
builder.isEnabled(KotlinFeature.SingletonSupport) -> CANONICALIZE
50-
else -> DISABLED
51-
},
47+
builder.isEnabled(SingletonSupport),
5248
builder.isEnabled(StrictNullChecks)
5349
)
5450

@@ -69,11 +65,8 @@ public class KotlinModule private constructor(
6965

7066
context.addValueInstantiators(KotlinInstantiators(cache, nullToEmptyCollection, nullToEmptyMap, nullIsSameAsDefault, strictNullChecks))
7167

72-
when (singletonSupport) {
73-
DISABLED -> Unit
74-
CANONICALIZE -> {
75-
context.addBeanDeserializerModifier(KotlinBeanDeserializerModifier)
76-
}
68+
if (singletonSupport) {
69+
context.addBeanDeserializerModifier(KotlinBeanDeserializerModifier)
7770
}
7871

7972
context.insertAnnotationIntrospector(KotlinAnnotationIntrospector(context, cache, nullToEmptyCollection, nullToEmptyMap, nullIsSameAsDefault))

src/main/kotlin/com/fasterxml/jackson/module/kotlin/SingletonSupport.kt

Lines changed: 0 additions & 14 deletions
This file was deleted.

0 commit comments

Comments
 (0)