1// Code generated by scripts/gengraphql.go. DO NOT EDIT.
2
3package schema
4
5import (
6	errors "errors"
7	graphql1 "github.com/graphql-go/graphql"
8	graphql "github.com/sensu/sensu-go/graphql"
9)
10
11// KVPairStringKeyFieldResolver implement to resolve requests for the KVPairString's key field.
12type KVPairStringKeyFieldResolver interface {
13	// Key implements response to request for key field.
14	Key(p graphql.ResolveParams) (string, error)
15}
16
17// KVPairStringValFieldResolver implement to resolve requests for the KVPairString's val field.
18type KVPairStringValFieldResolver interface {
19	// Val implements response to request for val field.
20	Val(p graphql.ResolveParams) (string, error)
21}
22
23//
24// KVPairStringFieldResolvers represents a collection of methods whose products represent the
25// response values of the 'KVPairString' type.
26//
27// == Example SDL
28//
29//   """
30//   Dog's are not hooman.
31//   """
32//   type Dog implements Pet {
33//     "name of this fine beast."
34//     name:  String!
35//
36//     "breed of this silly animal; probably shibe."
37//     breed: [Breed]
38//   }
39//
40// == Example generated interface
41//
42//   // DogResolver ...
43//   type DogFieldResolvers interface {
44//     DogNameFieldResolver
45//     DogBreedFieldResolver
46//
47//     // IsTypeOf is used to determine if a given value is associated with the Dog type
48//     IsTypeOf(interface{}, graphql.IsTypeOfParams) bool
49//   }
50//
51// == Example implementation ...
52//
53//   // DogResolver implements DogFieldResolvers interface
54//   type DogResolver struct {
55//     logger logrus.LogEntry
56//     store interface{
57//       store.BreedStore
58//       store.DogStore
59//     }
60//   }
61//
62//   // Name implements response to request for name field.
63//   func (r *DogResolver) Name(p graphql.ResolveParams) (interface{}, error) {
64//     // ... implementation details ...
65//     dog := p.Source.(DogGetter)
66//     return dog.GetName()
67//   }
68//
69//   // Breed implements response to request for breed field.
70//   func (r *DogResolver) Breed(p graphql.ResolveParams) (interface{}, error) {
71//     // ... implementation details ...
72//     dog := p.Source.(DogGetter)
73//     breed := r.store.GetBreed(dog.GetBreedName())
74//     return breed
75//   }
76//
77//   // IsTypeOf is used to determine if a given value is associated with the Dog type
78//   func (r *DogResolver) IsTypeOf(p graphql.IsTypeOfParams) bool {
79//     // ... implementation details ...
80//     _, ok := p.Value.(DogGetter)
81//     return ok
82//   }
83//
84type KVPairStringFieldResolvers interface {
85	KVPairStringKeyFieldResolver
86	KVPairStringValFieldResolver
87}
88
89// KVPairStringAliases implements all methods on KVPairStringFieldResolvers interface by using reflection to
90// match name of field to a field on the given value. Intent is reduce friction
91// of writing new resolvers by removing all the instances where you would simply
92// have the resolvers method return a field.
93//
94// == Example SDL
95//
96//    type Dog {
97//      name:   String!
98//      weight: Float!
99//      dob:    DateTime
100//      breed:  [Breed]
101//    }
102//
103// == Example generated aliases
104//
105//   type DogAliases struct {}
106//   func (_ DogAliases) Name(p graphql.ResolveParams) (interface{}, error) {
107//     // reflect...
108//   }
109//   func (_ DogAliases) Weight(p graphql.ResolveParams) (interface{}, error) {
110//     // reflect...
111//   }
112//   func (_ DogAliases) Dob(p graphql.ResolveParams) (interface{}, error) {
113//     // reflect...
114//   }
115//   func (_ DogAliases) Breed(p graphql.ResolveParams) (interface{}, error) {
116//     // reflect...
117//   }
118//
119// == Example Implementation
120//
121//   type DogResolver struct { // Implements DogResolver
122//     DogAliases
123//     store store.BreedStore
124//   }
125//
126//   // NOTE:
127//   // All other fields are satisified by DogAliases but since this one
128//   // requires hitting the store we implement it in our resolver.
129//   func (r *DogResolver) Breed(p graphql.ResolveParams) interface{} {
130//     dog := v.(*Dog)
131//     return r.BreedsById(dog.BreedIDs)
132//   }
133//
134type KVPairStringAliases struct{}
135
136// Key implements response to request for 'key' field.
137func (_ KVPairStringAliases) Key(p graphql.ResolveParams) (string, error) {
138	val, err := graphql.DefaultResolver(p.Source, p.Info.FieldName)
139	ret, ok := val.(string)
140	if err != nil {
141		return ret, err
142	}
143	if !ok {
144		return ret, errors.New("unable to coerce value for field 'key'")
145	}
146	return ret, err
147}
148
149// Val implements response to request for 'val' field.
150func (_ KVPairStringAliases) Val(p graphql.ResolveParams) (string, error) {
151	val, err := graphql.DefaultResolver(p.Source, p.Info.FieldName)
152	ret, ok := val.(string)
153	if err != nil {
154		return ret, err
155	}
156	if !ok {
157		return ret, errors.New("unable to coerce value for field 'val'")
158	}
159	return ret, err
160}
161
162/*
163KVPairStringType The KVPairString type respresents a name-value relationship where the value is
164always a string.
165*/
166var KVPairStringType = graphql.NewType("KVPairString", graphql.ObjectKind)
167
168// RegisterKVPairString registers KVPairString object type with given service.
169func RegisterKVPairString(svc *graphql.Service, impl KVPairStringFieldResolvers) {
170	svc.RegisterObject(_ObjectTypeKVPairStringDesc, impl)
171}
172func _ObjTypeKVPairStringKeyHandler(impl interface{}) graphql1.FieldResolveFn {
173	resolver := impl.(KVPairStringKeyFieldResolver)
174	return func(frp graphql1.ResolveParams) (interface{}, error) {
175		return resolver.Key(frp)
176	}
177}
178
179func _ObjTypeKVPairStringValHandler(impl interface{}) graphql1.FieldResolveFn {
180	resolver := impl.(KVPairStringValFieldResolver)
181	return func(frp graphql1.ResolveParams) (interface{}, error) {
182		return resolver.Val(frp)
183	}
184}
185
186func _ObjectTypeKVPairStringConfigFn() graphql1.ObjectConfig {
187	return graphql1.ObjectConfig{
188		Description: "The KVPairString type respresents a name-value relationship where the value is\nalways a string.",
189		Fields: graphql1.Fields{
190			"key": &graphql1.Field{
191				Args:              graphql1.FieldConfigArgument{},
192				DeprecationReason: "",
193				Description:       "self descriptive",
194				Name:              "key",
195				Type:              graphql1.NewNonNull(graphql1.String),
196			},
197			"val": &graphql1.Field{
198				Args:              graphql1.FieldConfigArgument{},
199				DeprecationReason: "",
200				Description:       "self descriptive",
201				Name:              "val",
202				Type:              graphql1.NewNonNull(graphql1.String),
203			},
204		},
205		Interfaces: []*graphql1.Interface{},
206		IsTypeOf: func(_ graphql1.IsTypeOfParams) bool {
207			// NOTE:
208			// Panic by default. Intent is that when Service is invoked, values of
209			// these fields are updated with instantiated resolvers. If these
210			// defaults are called it is most certainly programmer err.
211			// If you're see this comment then: 'Whoops! Sorry, my bad.'
212			panic("Unimplemented; see KVPairStringFieldResolvers.")
213		},
214		Name: "KVPairString",
215	}
216}
217
218// describe KVPairString's configuration; kept private to avoid unintentional tampering of configuration at runtime.
219var _ObjectTypeKVPairStringDesc = graphql.ObjectDesc{
220	Config: _ObjectTypeKVPairStringConfigFn,
221	FieldHandlers: map[string]graphql.FieldHandler{
222		"key": _ObjTypeKVPairStringKeyHandler,
223		"val": _ObjTypeKVPairStringValHandler,
224	},
225}
226
227// ObjectMetaNameFieldResolver implement to resolve requests for the ObjectMeta's name field.
228type ObjectMetaNameFieldResolver interface {
229	// Name implements response to request for name field.
230	Name(p graphql.ResolveParams) (string, error)
231}
232
233// ObjectMetaNamespaceFieldResolver implement to resolve requests for the ObjectMeta's namespace field.
234type ObjectMetaNamespaceFieldResolver interface {
235	// Namespace implements response to request for namespace field.
236	Namespace(p graphql.ResolveParams) (string, error)
237}
238
239// ObjectMetaLabelsFieldResolver implement to resolve requests for the ObjectMeta's labels field.
240type ObjectMetaLabelsFieldResolver interface {
241	// Labels implements response to request for labels field.
242	Labels(p graphql.ResolveParams) (interface{}, error)
243}
244
245// ObjectMetaAnnotationsFieldResolver implement to resolve requests for the ObjectMeta's annotations field.
246type ObjectMetaAnnotationsFieldResolver interface {
247	// Annotations implements response to request for annotations field.
248	Annotations(p graphql.ResolveParams) (interface{}, error)
249}
250
251//
252// ObjectMetaFieldResolvers represents a collection of methods whose products represent the
253// response values of the 'ObjectMeta' type.
254//
255// == Example SDL
256//
257//   """
258//   Dog's are not hooman.
259//   """
260//   type Dog implements Pet {
261//     "name of this fine beast."
262//     name:  String!
263//
264//     "breed of this silly animal; probably shibe."
265//     breed: [Breed]
266//   }
267//
268// == Example generated interface
269//
270//   // DogResolver ...
271//   type DogFieldResolvers interface {
272//     DogNameFieldResolver
273//     DogBreedFieldResolver
274//
275//     // IsTypeOf is used to determine if a given value is associated with the Dog type
276//     IsTypeOf(interface{}, graphql.IsTypeOfParams) bool
277//   }
278//
279// == Example implementation ...
280//
281//   // DogResolver implements DogFieldResolvers interface
282//   type DogResolver struct {
283//     logger logrus.LogEntry
284//     store interface{
285//       store.BreedStore
286//       store.DogStore
287//     }
288//   }
289//
290//   // Name implements response to request for name field.
291//   func (r *DogResolver) Name(p graphql.ResolveParams) (interface{}, error) {
292//     // ... implementation details ...
293//     dog := p.Source.(DogGetter)
294//     return dog.GetName()
295//   }
296//
297//   // Breed implements response to request for breed field.
298//   func (r *DogResolver) Breed(p graphql.ResolveParams) (interface{}, error) {
299//     // ... implementation details ...
300//     dog := p.Source.(DogGetter)
301//     breed := r.store.GetBreed(dog.GetBreedName())
302//     return breed
303//   }
304//
305//   // IsTypeOf is used to determine if a given value is associated with the Dog type
306//   func (r *DogResolver) IsTypeOf(p graphql.IsTypeOfParams) bool {
307//     // ... implementation details ...
308//     _, ok := p.Value.(DogGetter)
309//     return ok
310//   }
311//
312type ObjectMetaFieldResolvers interface {
313	ObjectMetaNameFieldResolver
314	ObjectMetaNamespaceFieldResolver
315	ObjectMetaLabelsFieldResolver
316	ObjectMetaAnnotationsFieldResolver
317}
318
319// ObjectMetaAliases implements all methods on ObjectMetaFieldResolvers interface by using reflection to
320// match name of field to a field on the given value. Intent is reduce friction
321// of writing new resolvers by removing all the instances where you would simply
322// have the resolvers method return a field.
323//
324// == Example SDL
325//
326//    type Dog {
327//      name:   String!
328//      weight: Float!
329//      dob:    DateTime
330//      breed:  [Breed]
331//    }
332//
333// == Example generated aliases
334//
335//   type DogAliases struct {}
336//   func (_ DogAliases) Name(p graphql.ResolveParams) (interface{}, error) {
337//     // reflect...
338//   }
339//   func (_ DogAliases) Weight(p graphql.ResolveParams) (interface{}, error) {
340//     // reflect...
341//   }
342//   func (_ DogAliases) Dob(p graphql.ResolveParams) (interface{}, error) {
343//     // reflect...
344//   }
345//   func (_ DogAliases) Breed(p graphql.ResolveParams) (interface{}, error) {
346//     // reflect...
347//   }
348//
349// == Example Implementation
350//
351//   type DogResolver struct { // Implements DogResolver
352//     DogAliases
353//     store store.BreedStore
354//   }
355//
356//   // NOTE:
357//   // All other fields are satisified by DogAliases but since this one
358//   // requires hitting the store we implement it in our resolver.
359//   func (r *DogResolver) Breed(p graphql.ResolveParams) interface{} {
360//     dog := v.(*Dog)
361//     return r.BreedsById(dog.BreedIDs)
362//   }
363//
364type ObjectMetaAliases struct{}
365
366// Name implements response to request for 'name' field.
367func (_ ObjectMetaAliases) Name(p graphql.ResolveParams) (string, error) {
368	val, err := graphql.DefaultResolver(p.Source, p.Info.FieldName)
369	ret, ok := val.(string)
370	if err != nil {
371		return ret, err
372	}
373	if !ok {
374		return ret, errors.New("unable to coerce value for field 'name'")
375	}
376	return ret, err
377}
378
379// Namespace implements response to request for 'namespace' field.
380func (_ ObjectMetaAliases) Namespace(p graphql.ResolveParams) (string, error) {
381	val, err := graphql.DefaultResolver(p.Source, p.Info.FieldName)
382	ret, ok := val.(string)
383	if err != nil {
384		return ret, err
385	}
386	if !ok {
387		return ret, errors.New("unable to coerce value for field 'namespace'")
388	}
389	return ret, err
390}
391
392// Labels implements response to request for 'labels' field.
393func (_ ObjectMetaAliases) Labels(p graphql.ResolveParams) (interface{}, error) {
394	val, err := graphql.DefaultResolver(p.Source, p.Info.FieldName)
395	return val, err
396}
397
398// Annotations implements response to request for 'annotations' field.
399func (_ ObjectMetaAliases) Annotations(p graphql.ResolveParams) (interface{}, error) {
400	val, err := graphql.DefaultResolver(p.Source, p.Info.FieldName)
401	return val, err
402}
403
404// ObjectMetaType ObjectMeta is metadata all persisted objects have.
405var ObjectMetaType = graphql.NewType("ObjectMeta", graphql.ObjectKind)
406
407// RegisterObjectMeta registers ObjectMeta object type with given service.
408func RegisterObjectMeta(svc *graphql.Service, impl ObjectMetaFieldResolvers) {
409	svc.RegisterObject(_ObjectTypeObjectMetaDesc, impl)
410}
411func _ObjTypeObjectMetaNameHandler(impl interface{}) graphql1.FieldResolveFn {
412	resolver := impl.(ObjectMetaNameFieldResolver)
413	return func(frp graphql1.ResolveParams) (interface{}, error) {
414		return resolver.Name(frp)
415	}
416}
417
418func _ObjTypeObjectMetaNamespaceHandler(impl interface{}) graphql1.FieldResolveFn {
419	resolver := impl.(ObjectMetaNamespaceFieldResolver)
420	return func(frp graphql1.ResolveParams) (interface{}, error) {
421		return resolver.Namespace(frp)
422	}
423}
424
425func _ObjTypeObjectMetaLabelsHandler(impl interface{}) graphql1.FieldResolveFn {
426	resolver := impl.(ObjectMetaLabelsFieldResolver)
427	return func(frp graphql1.ResolveParams) (interface{}, error) {
428		return resolver.Labels(frp)
429	}
430}
431
432func _ObjTypeObjectMetaAnnotationsHandler(impl interface{}) graphql1.FieldResolveFn {
433	resolver := impl.(ObjectMetaAnnotationsFieldResolver)
434	return func(frp graphql1.ResolveParams) (interface{}, error) {
435		return resolver.Annotations(frp)
436	}
437}
438
439func _ObjectTypeObjectMetaConfigFn() graphql1.ObjectConfig {
440	return graphql1.ObjectConfig{
441		Description: "ObjectMeta is metadata all persisted objects have.",
442		Fields: graphql1.Fields{
443			"annotations": &graphql1.Field{
444				Args:              graphql1.FieldConfigArgument{},
445				DeprecationReason: "",
446				Description:       "self descriptive",
447				Name:              "annotations",
448				Type:              graphql1.NewList(graphql1.NewNonNull(graphql.OutputType("KVPairString"))),
449			},
450			"labels": &graphql1.Field{
451				Args:              graphql1.FieldConfigArgument{},
452				DeprecationReason: "",
453				Description:       "self descriptive",
454				Name:              "labels",
455				Type:              graphql1.NewList(graphql1.NewNonNull(graphql.OutputType("KVPairString"))),
456			},
457			"name": &graphql1.Field{
458				Args:              graphql1.FieldConfigArgument{},
459				DeprecationReason: "",
460				Description:       "self descriptive",
461				Name:              "name",
462				Type:              graphql1.NewNonNull(graphql1.String),
463			},
464			"namespace": &graphql1.Field{
465				Args:              graphql1.FieldConfigArgument{},
466				DeprecationReason: "",
467				Description:       "self descriptive",
468				Name:              "namespace",
469				Type:              graphql1.NewNonNull(graphql1.String),
470			},
471		},
472		Interfaces: []*graphql1.Interface{},
473		IsTypeOf: func(_ graphql1.IsTypeOfParams) bool {
474			// NOTE:
475			// Panic by default. Intent is that when Service is invoked, values of
476			// these fields are updated with instantiated resolvers. If these
477			// defaults are called it is most certainly programmer err.
478			// If you're see this comment then: 'Whoops! Sorry, my bad.'
479			panic("Unimplemented; see ObjectMetaFieldResolvers.")
480		},
481		Name: "ObjectMeta",
482	}
483}
484
485// describe ObjectMeta's configuration; kept private to avoid unintentional tampering of configuration at runtime.
486var _ObjectTypeObjectMetaDesc = graphql.ObjectDesc{
487	Config: _ObjectTypeObjectMetaConfigFn,
488	FieldHandlers: map[string]graphql.FieldHandler{
489		"annotations": _ObjTypeObjectMetaAnnotationsHandler,
490		"labels":      _ObjTypeObjectMetaLabelsHandler,
491		"name":        _ObjTypeObjectMetaNameHandler,
492		"namespace":   _ObjTypeObjectMetaNamespaceHandler,
493	},
494}
495