Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ internal class KotlinDeserializers(
override fun findBeanDeserializer(
type: JavaType,
config: DeserializationConfig?,
beanDesc: BeanDescription?,
beanDescRef: BeanDescription.Supplier?,
): ValueDeserializer<*>? {
val rawClass = type.rawClass

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,12 +11,12 @@ object KotlinValueDeserializerModifier : ValueDeserializerModifier() {

override fun modifyDeserializer(
config: DeserializationConfig,
beanDesc: BeanDescription,
beanDescRef: BeanDescription.Supplier,
deserializer: ValueDeserializer<*>
): ValueDeserializer<out Any> {
val modifiedFromParent = super.modifyDeserializer(config, beanDesc, deserializer)
val modifiedFromParent = super.modifyDeserializer(config, beanDescRef, deserializer)

val objectSingletonInstance = objectSingletonInstance(beanDesc.beanClass)
val objectSingletonInstance = objectSingletonInstance(beanDescRef.beanClass)
return if (objectSingletonInstance != null) {
KotlinObjectSingletonDeserializer(objectSingletonInstance, modifiedFromParent)
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -150,10 +150,10 @@ internal class KotlinInstantiators(
) : ValueInstantiators.Base() {
override fun modifyValueInstantiator(
deserConfig: DeserializationConfig,
beanDescriptor: BeanDescription,
beanDescriptorRef: BeanDescription.Supplier,
defaultInstantiator: ValueInstantiator
): ValueInstantiator {
return if (beanDescriptor.beanClass.isKotlinClass()) {
return if (beanDescriptorRef.beanClass.isKotlinClass()) {
if (defaultInstantiator::class == StdValueInstantiator::class) {
KotlinValueInstantiator(
defaultInstantiator as StdValueInstantiator,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ class KotlinInstantiatorsTest {
val defaultInstantiator = StdValueInstantiator(deserConfig, javaType)
val instantiator = kotlinInstantiators.modifyValueInstantiator(
deserConfig,
deserConfig.classIntrospectorInstance().introspectForDeserialization(javaType),
deserConfig.classIntrospectorInstance().introspectForDeserialization(javaType).supplier(),
defaultInstantiator
)

Expand All @@ -36,7 +36,7 @@ class KotlinInstantiatorsTest {
val javaType = mapper.constructType(TestClass::class.java)
val instantiator = kotlinInstantiators.modifyValueInstantiator(
deserConfig,
deserConfig.classIntrospectorInstance().introspectForDeserialization(javaType),
deserConfig.classIntrospectorInstance().introspectForDeserialization(javaType).supplier(),
StdValueInstantiator(deserConfig, javaType)
)

Expand All @@ -58,7 +58,7 @@ class KotlinInstantiatorsTest {
kotlinInstantiators.modifyValueInstantiator(
deserConfig,
deserConfig.classIntrospectorInstance()
.introspectForDeserialization(mapper.constructType(TestClass::class.java)),
.introspectForDeserialization(mapper.constructType(TestClass::class.java)).supplier(),
subClassInstantiator
)
}
Expand Down
Loading