Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewExecutableSchema ¶
func NewExecutableSchema(cfg Config) graphql.ExecutableSchema
NewExecutableSchema creates an ExecutableSchema from the ResolverRoot interface.
Types ¶
type ComplexityRoot ¶
type ComplexityRoot struct { AuthResponse struct { AuthToken func(childComplexity int) int User func(childComplexity int) int } AuthToken struct { AccessToken func(childComplexity int) int ExpiredAt func(childComplexity int) int } Device struct { CreatedDate func(childComplexity int) int ID func(childComplexity int) int LastModified func(childComplexity int) int MacAddress func(childComplexity int) int Memo func(childComplexity int) int Model func(childComplexity int) int Name func(childComplexity int) int Room func(childComplexity int) int SerialNumber func(childComplexity int) int Status func(childComplexity int) int Type func(childComplexity int) int } Email struct { CreatedDate func(childComplexity int) int Data func(childComplexity int) int From func(childComplexity int) int ID func(childComplexity int) int To func(childComplexity int) int } Mutation struct { CreateDevice func(childComplexity int, input models.DeviceInput) int CreateEmail func(childComplexity int, input models.EmailInput) int CreateRoom func(childComplexity int, input models.RoomInput) int CreateUser func(childComplexity int, input models.UserInput) int Login func(childComplexity int, input models.LoginInput) int UpdateDevice func(childComplexity int, id string, input models.DeviceUpdate) int UpdateRoom func(childComplexity int, id string, input models.RoomUpdate) int UpdateUser func(childComplexity int, id string, input models.UserUpdate) int } Query struct { Device func(childComplexity int, id string) int Devices func(childComplexity int) int Email func(childComplexity int, id string) int Emails func(childComplexity int) int Room func(childComplexity int, id string) int Rooms func(childComplexity int, filter *models.RoomFilter, limit *int, offset *int) int User func(childComplexity int, id string) int Users func(childComplexity int) int } Room struct { CreatedDate func(childComplexity int) int Devices func(childComplexity int) int ID func(childComplexity int) int Memo func(childComplexity int) int Password func(childComplexity int) int RoomNumber func(childComplexity int) int Username func(childComplexity int) int } Subscription struct { NewEmails func(childComplexity int) int } User struct { Abbr func(childComplexity int) int Email func(childComplexity int) int ID func(childComplexity int) int Location func(childComplexity int) int Name func(childComplexity int) int Openhab func(childComplexity int) int Username func(childComplexity int) int } }
type Config ¶
type Config struct { Resolvers ResolverRoot Directives DirectiveRoot Complexity ComplexityRoot }
type DeviceResolver ¶
type DirectiveRoot ¶
type DirectiveRoot struct { }
type MutationResolver ¶
type MutationResolver interface { Login(ctx context.Context, input models.LoginInput) (*models.AuthResponse, error) CreateRoom(ctx context.Context, input models.RoomInput) (*models.Room, error) UpdateRoom(ctx context.Context, id string, input models.RoomUpdate) (*models.Room, error) CreateDevice(ctx context.Context, input models.DeviceInput) (*models.Device, error) UpdateDevice(ctx context.Context, id string, input models.DeviceUpdate) (*models.Device, error) CreateUser(ctx context.Context, input models.UserInput) (*models.User, error) UpdateUser(ctx context.Context, id string, input models.UserUpdate) (*models.User, error) CreateEmail(ctx context.Context, input models.EmailInput) (*models.Email, error) }
type QueryResolver ¶
type QueryResolver interface { Emails(ctx context.Context) ([]*models.Email, error) Email(ctx context.Context, id string) (*models.Email, error) Users(ctx context.Context) ([]*models.User, error) User(ctx context.Context, id string) (*models.User, error) Rooms(ctx context.Context, filter *models.RoomFilter, limit *int, offset *int) ([]*models.Room, error) Room(ctx context.Context, id string) (*models.Room, error) Devices(ctx context.Context) ([]*models.Device, error) Device(ctx context.Context, id string) (*models.Device, error) }
type Resolver ¶
type Resolver struct { DeviceRepo mongodb.DeviceRepo RoomRepo mongodb.RoomRepo UserRepo mongodb.UserRepo EmailRepo mongodb.EmailRepo Redis redis.Client }
Resolver struct
func (*Resolver) Device ¶
func (r *Resolver) Device() DeviceResolver
Device returns DeviceResolver implementation.
func (*Resolver) Mutation ¶
func (r *Resolver) Mutation() MutationResolver
Mutation returns MutationResolver implementation.
func (*Resolver) Query ¶
func (r *Resolver) Query() QueryResolver
Query returns QueryResolver implementation.
func (*Resolver) Room ¶
func (r *Resolver) Room() RoomResolver
Room returns RoomResolver implementation.
func (*Resolver) Subscription ¶
func (r *Resolver) Subscription() SubscriptionResolver
Subscription returns SubscriptionResolver implementation.
type ResolverRoot ¶
type ResolverRoot interface { Device() DeviceResolver Mutation() MutationResolver Query() QueryResolver Room() RoomResolver Subscription() SubscriptionResolver }
type RoomResolver ¶
Click to show internal directories.
Click to hide internal directories.