@@ -2,6 +2,7 @@ package tools
2
2
3
3
import (
4
4
"context"
5
+ "fmt"
5
6
6
7
"github.com/graphql-go/graphql"
7
8
"github.com/graphql-go/graphql/language/ast"
@@ -197,111 +198,133 @@ func (c *registry) applyDirectives(p applyDirectiveParams) error {
197
198
198
199
args , err := GetArgumentValues (directive .Args , def .Arguments , map [string ]interface {}{})
199
200
if err != nil {
200
- return err
201
+ return fmt . Errorf ( "applyDirective %v error: %s" , p . config , err )
201
202
}
202
203
203
204
switch p .config .(type ) {
204
205
case * graphql.SchemaConfig :
205
206
if visitor .VisitSchema != nil {
206
- visitor .VisitSchema (VisitSchemaParams {
207
+ if err := visitor .VisitSchema (VisitSchemaParams {
207
208
Context : c .ctx ,
208
209
Config : p .config .(* graphql.SchemaConfig ),
209
210
Args : args ,
210
211
Node : p .node .(* ast.SchemaDefinition ),
211
- })
212
+ }); err != nil {
213
+ return err
214
+ }
212
215
}
213
216
case * graphql.ScalarConfig :
214
217
if visitor .VisitScalar != nil {
215
- visitor .VisitScalar (VisitScalarParams {
218
+ if err := visitor .VisitScalar (VisitScalarParams {
216
219
Context : c .ctx ,
217
220
Config : p .config .(* graphql.ScalarConfig ),
218
221
Args : args ,
219
222
Node : p .node .(* ast.ScalarDefinition ),
220
- })
223
+ }); err != nil {
224
+ return err
225
+ }
221
226
}
222
227
case * graphql.ObjectConfig :
223
228
if visitor .VisitObject != nil {
224
- visitor .VisitObject (VisitObjectParams {
229
+ if err := visitor .VisitObject (VisitObjectParams {
225
230
Context : c .ctx ,
226
231
Config : p .config .(* graphql.ObjectConfig ),
227
232
Args : args ,
228
233
Node : p .node .(* ast.ObjectDefinition ),
229
234
Extensions : p .extensions ,
230
- })
235
+ }); err != nil {
236
+ return err
237
+ }
231
238
}
232
239
case * graphql.Field :
233
240
if visitor .VisitFieldDefinition != nil {
234
- visitor .VisitFieldDefinition (VisitFieldDefinitionParams {
241
+ if err := visitor .VisitFieldDefinition (VisitFieldDefinitionParams {
235
242
Context : c .ctx ,
236
243
Config : p .config .(* graphql.Field ),
237
244
Args : args ,
238
245
Node : p .node .(* ast.FieldDefinition ),
239
246
ParentName : p .parentName ,
240
247
ParentKind : p .parentKind ,
241
- })
248
+ }); err != nil {
249
+ return err
250
+ }
242
251
}
243
252
case * graphql.ArgumentConfig :
244
253
if visitor .VisitArgumentDefinition != nil {
245
- visitor .VisitArgumentDefinition (VisitArgumentDefinitionParams {
254
+ if err := visitor .VisitArgumentDefinition (VisitArgumentDefinitionParams {
246
255
Context : c .ctx ,
247
256
Config : p .config .(* graphql.ArgumentConfig ),
248
257
Args : args ,
249
258
Node : p .node .(* ast.InputValueDefinition ),
250
- })
259
+ }); err != nil {
260
+ return err
261
+ }
251
262
}
252
263
case * graphql.InterfaceConfig :
253
264
if visitor .VisitInterface != nil {
254
- visitor .VisitInterface (VisitInterfaceParams {
265
+ if err := visitor .VisitInterface (VisitInterfaceParams {
255
266
Context : c .ctx ,
256
267
Config : p .config .(* graphql.InterfaceConfig ),
257
268
Args : args ,
258
269
Node : p .node .(* ast.InterfaceDefinition ),
259
- })
270
+ }); err != nil {
271
+ return err
272
+ }
260
273
}
261
274
case * graphql.UnionConfig :
262
275
if visitor .VisitUnion != nil {
263
- visitor .VisitUnion (VisitUnionParams {
276
+ if err := visitor .VisitUnion (VisitUnionParams {
264
277
Context : c .ctx ,
265
278
Config : p .config .(* graphql.UnionConfig ),
266
279
Args : args ,
267
280
Node : p .node .(* ast.UnionDefinition ),
268
- })
281
+ }); err != nil {
282
+ return err
283
+ }
269
284
}
270
285
case * graphql.EnumConfig :
271
286
if visitor .VisitEnum != nil {
272
- visitor .VisitEnum (VisitEnumParams {
287
+ if err := visitor .VisitEnum (VisitEnumParams {
273
288
Context : c .ctx ,
274
289
Config : p .config .(* graphql.EnumConfig ),
275
290
Args : args ,
276
291
Node : p .node .(* ast.EnumDefinition ),
277
- })
292
+ }); err != nil {
293
+ return err
294
+ }
278
295
}
279
296
case * graphql.EnumValueConfig :
280
297
if visitor .VisitEnumValue != nil {
281
- visitor .VisitEnumValue (VisitEnumValueParams {
298
+ if err := visitor .VisitEnumValue (VisitEnumValueParams {
282
299
Context : c .ctx ,
283
300
Config : p .config .(* graphql.EnumValueConfig ),
284
301
Args : args ,
285
302
Node : p .node .(* ast.EnumValueDefinition ),
286
- })
303
+ }); err != nil {
304
+ return err
305
+ }
287
306
}
288
307
case * graphql.InputObjectConfig :
289
308
if visitor .VisitInputObject != nil {
290
- visitor .VisitInputObject (VisitInputObjectParams {
309
+ if err := visitor .VisitInputObject (VisitInputObjectParams {
291
310
Context : c .ctx ,
292
311
Config : p .config .(* graphql.InputObjectConfig ),
293
312
Args : args ,
294
313
Node : p .node .(* ast.InputObjectDefinition ),
295
- })
314
+ }); err != nil {
315
+ return err
316
+ }
296
317
}
297
318
case * graphql.InputObjectFieldConfig :
298
319
if visitor .VisitInputFieldDefinition != nil {
299
- visitor .VisitInputFieldDefinition (VisitInputFieldDefinitionParams {
320
+ if err := visitor .VisitInputFieldDefinition (VisitInputFieldDefinitionParams {
300
321
Context : c .ctx ,
301
322
Config : p .config .(* graphql.InputObjectFieldConfig ),
302
323
Args : args ,
303
324
Node : p .node .(* ast.InputValueDefinition ),
304
- })
325
+ }); err != nil {
326
+ return err
327
+ }
305
328
}
306
329
}
307
330
}
0 commit comments