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