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 }