github.com/spread-ai/gqlgen@v0.0.0-20221124102857-a6c8ef538a1d/plugin/federation/testdata/entityresolver/entity.resolvers.go (about) 1 package entityresolver 2 3 // This file will be automatically regenerated based on the schema, any resolver implementations 4 // will be copied through when generating and any unknown code will be moved to the end. 5 6 import ( 7 "context" 8 "fmt" 9 10 "github.com/spread-ai/gqlgen/plugin/federation/testdata/entityresolver/generated" 11 ) 12 13 // FindHelloByName is the resolver for the findHelloByName field. 14 func (r *entityResolver) FindHelloByName(ctx context.Context, name string) (*generated.Hello, error) { 15 return &generated.Hello{ 16 Name: name, 17 }, nil 18 } 19 20 // FindHelloMultiSingleKeysByKey1AndKey2 is the resolver for the findHelloMultiSingleKeysByKey1AndKey2 field. 21 func (r *entityResolver) FindHelloMultiSingleKeysByKey1AndKey2(ctx context.Context, key1 string, key2 string) (*generated.HelloMultiSingleKeys, error) { 22 panic(fmt.Errorf("not implemented")) 23 } 24 25 // FindHelloWithErrorsByName is the resolver for the findHelloWithErrorsByName field. 26 func (r *entityResolver) FindHelloWithErrorsByName(ctx context.Context, name string) (*generated.HelloWithErrors, error) { 27 if name == "inject error" { 28 return nil, generated.ErrResolvingHelloWithErrorsByName 29 } else if name == "" { 30 return nil, generated.ErrEmptyKeyResolvingHelloWithErrorsByName 31 } 32 33 return &generated.HelloWithErrors{ 34 Name: name, 35 }, nil 36 } 37 38 // FindManyMultiHelloByNames is the resolver for the findManyMultiHelloByNames field. 39 func (r *entityResolver) FindManyMultiHelloByNames(ctx context.Context, reps []*generated.MultiHelloByNamesInput) ([]*generated.MultiHello, error) { 40 results := []*generated.MultiHello{} 41 42 for _, item := range reps { 43 results = append(results, &generated.MultiHello{ 44 Name: item.Name + " - from multiget", 45 }) 46 } 47 48 return results, nil 49 } 50 51 // FindManyMultiHelloMultipleRequiresByNames is the resolver for the findManyMultiHelloMultipleRequiresByNames field. 52 func (r *entityResolver) FindManyMultiHelloMultipleRequiresByNames(ctx context.Context, reps []*generated.MultiHelloMultipleRequiresByNamesInput) ([]*generated.MultiHelloMultipleRequires, error) { 53 results := make([]*generated.MultiHelloMultipleRequires, len(reps)) 54 55 for i := range reps { 56 results[i] = &generated.MultiHelloMultipleRequires{ 57 Name: reps[i].Name, 58 } 59 } 60 61 return results, nil 62 } 63 64 // FindManyMultiHelloRequiresByNames is the resolver for the findManyMultiHelloRequiresByNames field. 65 func (r *entityResolver) FindManyMultiHelloRequiresByNames(ctx context.Context, reps []*generated.MultiHelloRequiresByNamesInput) ([]*generated.MultiHelloRequires, error) { 66 results := make([]*generated.MultiHelloRequires, len(reps)) 67 68 for i := range reps { 69 results[i] = &generated.MultiHelloRequires{ 70 Name: reps[i].Name, 71 } 72 } 73 74 return results, nil 75 } 76 77 // FindManyMultiHelloWithErrorByNames is the resolver for the findManyMultiHelloWithErrorByNames field. 78 func (r *entityResolver) FindManyMultiHelloWithErrorByNames(ctx context.Context, reps []*generated.MultiHelloWithErrorByNamesInput) ([]*generated.MultiHelloWithError, error) { 79 return nil, fmt.Errorf("error resolving MultiHelloWorldWithError") 80 } 81 82 // FindManyMultiPlanetRequiresNestedByNames is the resolver for the findManyMultiPlanetRequiresNestedByNames field. 83 func (r *entityResolver) FindManyMultiPlanetRequiresNestedByNames(ctx context.Context, reps []*generated.MultiPlanetRequiresNestedByNamesInput) ([]*generated.MultiPlanetRequiresNested, error) { 84 worlds := map[string]*generated.World{ 85 "earth": { 86 Foo: "A", 87 }, 88 "mars": { 89 Foo: "B", 90 }, 91 } 92 93 results := make([]*generated.MultiPlanetRequiresNested, len(reps)) 94 95 for i := range reps { 96 name := reps[i].Name 97 world, ok := worlds[name] 98 if !ok { 99 return nil, fmt.Errorf("unknown planet: %s", name) 100 } 101 102 results[i] = &generated.MultiPlanetRequiresNested{ 103 Name: name, 104 World: world, 105 } 106 } 107 108 return results, nil 109 } 110 111 // FindPlanetMultipleRequiresByName is the resolver for the findPlanetMultipleRequiresByName field. 112 func (r *entityResolver) FindPlanetMultipleRequiresByName(ctx context.Context, name string) (*generated.PlanetMultipleRequires, error) { 113 return &generated.PlanetMultipleRequires{Name: name}, nil 114 } 115 116 // FindPlanetRequiresByName is the resolver for the findPlanetRequiresByName field. 117 func (r *entityResolver) FindPlanetRequiresByName(ctx context.Context, name string) (*generated.PlanetRequires, error) { 118 return &generated.PlanetRequires{ 119 Name: name, 120 }, nil 121 } 122 123 // FindPlanetRequiresNestedByName is the resolver for the findPlanetRequiresNestedByName field. 124 func (r *entityResolver) FindPlanetRequiresNestedByName(ctx context.Context, name string) (*generated.PlanetRequiresNested, error) { 125 worlds := map[string]*generated.World{ 126 "earth": { 127 Foo: "A", 128 }, 129 "mars": { 130 Foo: "B", 131 }, 132 } 133 world, ok := worlds[name] 134 if !ok { 135 return nil, fmt.Errorf("unknown planet: %s", name) 136 } 137 138 return &generated.PlanetRequiresNested{ 139 Name: name, 140 World: world, 141 }, nil 142 } 143 144 // FindWorldByHelloNameAndFoo is the resolver for the findWorldByHelloNameAndFoo field. 145 func (r *entityResolver) FindWorldByHelloNameAndFoo(ctx context.Context, helloName string, foo string) (*generated.World, error) { 146 return &generated.World{ 147 Hello: &generated.Hello{ 148 Name: helloName, 149 }, 150 Foo: foo, 151 }, nil 152 } 153 154 // FindWorldNameByName is the resolver for the findWorldNameByName field. 155 func (r *entityResolver) FindWorldNameByName(ctx context.Context, name string) (*generated.WorldName, error) { 156 return &generated.WorldName{ 157 Name: name, 158 }, nil 159 } 160 161 // FindWorldWithMultipleKeysByHelloNameAndFoo is the resolver for the findWorldWithMultipleKeysByHelloNameAndFoo field. 162 func (r *entityResolver) FindWorldWithMultipleKeysByHelloNameAndFoo(ctx context.Context, helloName string, foo string) (*generated.WorldWithMultipleKeys, error) { 163 return &generated.WorldWithMultipleKeys{ 164 Hello: &generated.Hello{ 165 Name: helloName, 166 }, 167 Foo: foo, 168 }, nil 169 } 170 171 // FindWorldWithMultipleKeysByBar is the resolver for the findWorldWithMultipleKeysByBar field. 172 func (r *entityResolver) FindWorldWithMultipleKeysByBar(ctx context.Context, bar int) (*generated.WorldWithMultipleKeys, error) { 173 return &generated.WorldWithMultipleKeys{ 174 Bar: bar, 175 }, nil 176 } 177 178 // Entity returns generated.EntityResolver implementation. 179 func (r *Resolver) Entity() generated.EntityResolver { return &entityResolver{r} } 180 181 type entityResolver struct{ *Resolver }