You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Here's an example error of when using a Exposed class: Exception in thread "main" com.apurebase.kgraphql.schema.SchemaException: Generic types are not supported by GraphQL, found kotlin.collections.Map<org.jetbrains.exposed.sql.Expression<*>, kotlin.Int> thrown from SchemaCompilation.kt:168
Instead of throwing this error, it would be great to provide a error message which recursively provides full information of exactly where this issue is coming from.
In a Exposed sample, the reason would be because of the type is extending the Entity<Int> type, and a field on this class is ResultRow and it's here the field fieldIndex of the type Map<Expression<*>, Int> lies, which is causing this to fail.
The text was updated successfully, but these errors were encountered:
For the specific case of Exposed's DAO, it'd be nice to only use the properties defined on the class itself using KClass<T>.declaredMemberProperties. While this does mean you lose some benefits of inheritance, there exist solutions to it, e.g.
openclassA {
openval x:Int=1
}
classB : A() {
overrideval x:Int// Redeclares x, but doesn't redefine it, meaning it acts as effectively a no-op and still shows up in declaredMemberProperties
get() =super.x
}
This way, properties of Entity<T> are not included unless expressly so, fixing a lot of the issues currently happening with Exposed.
Here's an example error of when using a Exposed class:
Exception in thread "main" com.apurebase.kgraphql.schema.SchemaException: Generic types are not supported by GraphQL, found kotlin.collections.Map<org.jetbrains.exposed.sql.Expression<*>, kotlin.Int>
thrown from SchemaCompilation.kt:168Instead of throwing this error, it would be great to provide a error message which recursively provides full information of exactly where this issue is coming from.
In a Exposed sample, the reason would be because of the type is extending the
Entity<Int>
type, and a field on this class is ResultRow and it's here the fieldfieldIndex
of the typeMap<Expression<*>, Int>
lies, which is causing this to fail.The text was updated successfully, but these errors were encountered: