1414 */
1515package graphql .annotations ;
1616
17- import graphql .schema .GraphQLList ;
18-
1917import java .lang .reflect .AnnotatedParameterizedType ;
2018import java .lang .reflect .AnnotatedType ;
2119import java .lang .reflect .ParameterizedType ;
22- import java .util .Collection ;
2320import java .util .List ;
2421
2522public class BatchedTypeFunction implements TypeFunction {
@@ -30,7 +27,17 @@ public BatchedTypeFunction(TypeFunction defaultTypeFunction) {
3027 }
3128
3229 @ Override
33- public graphql .schema .GraphQLType apply (Class <?> aClass , AnnotatedType annotatedType ) {
30+ public String getTypeName (Class <?> aClass , AnnotatedType annotatedType ) {
31+ return defaultTypeFunction .getTypeName (aClass , annotatedType );
32+ }
33+
34+ @ Override
35+ public boolean canBuildType (final Class <?> aClass , final AnnotatedType type ) {
36+ return defaultTypeFunction .canBuildType (aClass , type );
37+ }
38+
39+ @ Override
40+ public graphql .schema .GraphQLType buildType (final String typeName , final Class <?> aClass , final AnnotatedType annotatedType ) {
3441 if (!aClass .isAssignableFrom (List .class )) {
3542 throw new IllegalArgumentException ("Batched method should return a List" );
3643 }
@@ -45,10 +52,6 @@ public graphql.schema.GraphQLType apply(Class<?> aClass, AnnotatedType annotated
4552 } else {
4653 klass = (Class <?>) arg .getType ();
4754 }
48- return defaultTypeFunction .apply (klass , arg );
49- }
50-
51- @ Override public Collection <Class <?>> getAcceptedTypes () {
52- return defaultTypeFunction .getAcceptedTypes ();
55+ return defaultTypeFunction .buildType (typeName , klass , arg );
5356 }
5457}
0 commit comments