Closed
Description
The below use case is supported.
abstract class FooResolver<T> implements GraphQLResolver<Bar> {
String getValue(T foo) {
return "value"
}
}
class BarResolver extends FooResolver<Bar> {
}
But the following way is not supported. Fails with
Caused by: com.coxautodev.graphql.tools.ResolverError: Unable to determine data class for resolver 'com.coxautodev.graphql.tools.SuperclassResolverSpec$BarResolver' from generic interface! This is most likely a bug with graphql-java-tools.
abstract class FooResolver<T> implements GraphQLResolver<T> {
String getValue(T foo) {
return "value"
}
}
class BarResolver extends FooResolver<Bar> {
}
class CarResolver extends FooResolver<Car> {
}
Though the same approach can be supported currently, but it has duplicated code that can be made cleaner as proposed earlier.
abstract class FooResolver<T> {
String getValue(T foo) {
return "value"
}
}
class BarResolver extends FooResolver<Bar> implements GraphQLResolver<Bar> {
}
class CarResolver extends FooResolver<Car> implements GraphQLResolver<Car> {
}
Metadata
Metadata
Assignees
Labels
No labels