Skip to content

Commit 061eea2

Browse files
authored
fix: map Java Object to Kotlin Any (#511)
1 parent 60a3d49 commit 061eea2

File tree

3 files changed

+9
-0
lines changed

3 files changed

+9
-0
lines changed

querydsl-tooling/querydsl-kotlin-codegen/src/main/kotlin/com/querydsl/kotlin/codegen/Extensions.kt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,7 @@ fun Type.asClassName(): ClassName = when (this.fullName) {
4141
"java.lang.Long", "long" -> Long::class.asClassName()
4242
"java.lang.Float", "float" -> Float::class.asClassName()
4343
"java.lang.Double", "double" -> Double::class.asClassName()
44+
"java.lang.Object" -> Any::class.asClassName()
4445
"boolean[]" -> BooleanArray::class.asClassName()
4546
"byte[]" -> ByteArray::class.asClassName()
4647
"char[]" -> CharArray::class.asClassName()

querydsl-tooling/querydsl-kotlin-codegen/src/test/kotlin/com/querydsl/kotlin/codegen/EmbeddableSerializerTest.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -60,6 +60,8 @@ class EmbeddableSerializerTest {
6060
entityType.addProperty(Property(entityType, "i", ClassType(TypeCategory.NUMERIC, Int::class.java)))
6161
entityType.addProperty(Property(entityType, "s", ClassType(TypeCategory.STRING, String::class.java)))
6262
entityType.addProperty(Property(entityType, "t", ClassType(TypeCategory.TIME, Time::class.java)))
63+
entityType.addProperty(Property(entityType, "o", ClassType(TypeCategory.SIMPLE, Object::class.java)))
64+
entityType.addProperty(Property(entityType, "a", ClassType(TypeCategory.SIMPLE, Any::class.java)))
6365
typeMappings.register(entityType, queryTypeFactory.create(entityType))
6466
serializer.serialize(entityType, SimpleSerializerConfig.DEFAULT, JavaWriter(writer))
6567
assertCompiles("QEntity", writer.toString())
@@ -139,6 +141,8 @@ class EmbeddableSerializerTest {
139141
entityType.addProperty(Property(entityType, "i", ClassType(TypeCategory.NUMERIC, Int::class.java)))
140142
entityType.addProperty(Property(entityType, "s", ClassType(TypeCategory.STRING, String::class.java)))
141143
entityType.addProperty(Property(entityType, "t", ClassType(TypeCategory.TIME, Time::class.java)))
144+
entityType.addProperty(Property(entityType, "o", ClassType(TypeCategory.SIMPLE, Object::class.java)))
145+
entityType.addProperty(Property(entityType, "a", ClassType(TypeCategory.SIMPLE, Any::class.java)))
142146
val subType = EntityType(SimpleType(TypeCategory.ENTITY, "Entity2", "", "Entity2", false, false))
143147
subType.include(Supertype(type, entityType))
144148
typeMappings.register(entityType, queryTypeFactory.create(entityType))

querydsl-tooling/querydsl-kotlin-codegen/src/test/kotlin/com/querydsl/kotlin/codegen/EntitySerializerTest.kt

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,8 @@ class EntitySerializerTest {
131131
entityType.addProperty(Property(entityType, "i", ClassType(TypeCategory.NUMERIC, Int::class.java)))
132132
entityType.addProperty(Property(entityType, "s", ClassType(TypeCategory.STRING, String::class.java)))
133133
entityType.addProperty(Property(entityType, "t", ClassType(TypeCategory.TIME, Time::class.java)))
134+
entityType.addProperty(Property(entityType, "o", ClassType(TypeCategory.SIMPLE, Object::class.java)))
135+
entityType.addProperty(Property(entityType, "a", ClassType(TypeCategory.SIMPLE, Any::class.java)))
134136
val subType = EntityType(SimpleType(TypeCategory.ENTITY, "Entity2", "", "Entity2", false, false))
135137
subType.include(Supertype(type, entityType))
136138
typeMappings.register(subType, queryTypeFactory.create(subType))
@@ -151,6 +153,8 @@ class EntitySerializerTest {
151153
entityType.addProperty(Property(entityType, "i", ClassType(TypeCategory.NUMERIC, Int::class.java)))
152154
entityType.addProperty(Property(entityType, "s", ClassType(TypeCategory.STRING, String::class.java)))
153155
entityType.addProperty(Property(entityType, "t", ClassType(TypeCategory.TIME, Time::class.java)))
156+
entityType.addProperty(Property(entityType, "o", ClassType(TypeCategory.SIMPLE, Object::class.java)))
157+
entityType.addProperty(Property(entityType, "a", ClassType(TypeCategory.SIMPLE, Any::class.java)))
154158
typeMappings.register(entityType, queryTypeFactory.create(entityType))
155159
serializer.serialize(entityType, SimpleSerializerConfig.DEFAULT, JavaWriter(writer))
156160
assertCompiles("QEntity", writer.toString())

0 commit comments

Comments
 (0)