Documentation
¶
Index ¶
- func NewExecutableSchema(cfg Config) graphql.ExecutableSchema
- type AnswerResolver
- type ApplicationResolver
- type BuildingResolver
- type ComplexityRoot
- type Config
- type DirectiveRoot
- type EventResolver
- type MutationResolver
- type NewAnswerResolver
- type NewBuildingResolver
- type NewEventResolver
- type NewLabelResolver
- type NewQuestionResolver
- type NewRoomResolver
- type NewSettingResolver
- type QueryResolver
- type QuestionResolver
- type Resolver
- func (r *Resolver) Answer() AnswerResolver
- func (r *Resolver) Application() ApplicationResolver
- func (r *Resolver) Building() BuildingResolver
- func (r *Resolver) Event() EventResolver
- func (r *Resolver) FetchSettings(ctx context.Context) error
- func (r *Resolver) Mutation() MutationResolver
- func (r *Resolver) NewAnswer() NewAnswerResolver
- func (r *Resolver) NewBuilding() NewBuildingResolver
- func (r *Resolver) NewEvent() NewEventResolver
- func (r *Resolver) NewLabel() NewLabelResolver
- func (r *Resolver) NewQuestion() NewQuestionResolver
- func (r *Resolver) NewRoom() NewRoomResolver
- func (r *Resolver) NewSetting() NewSettingResolver
- func (r *Resolver) Query() QueryResolver
- func (r *Resolver) Question() QuestionResolver
- func (r *Resolver) Room() RoomResolver
- func (r *Resolver) Setting() SettingResolver
- type ResolverRoot
- type RoomResolver
- type SettingResolver
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 AnswerResolver ¶
type ApplicationResolver ¶
type ApplicationResolver interface { Score(ctx context.Context, obj *models.Application) (int, error) Responses(ctx context.Context, obj *models.Application) ([]*model.QuestionAnswersPair, error) }
type BuildingResolver ¶
type ComplexityRoot ¶
type ComplexityRoot struct { Answer struct { ID func(childComplexity int) int Points func(childComplexity int) int Title func(childComplexity int) int } AnswerValuePair struct { Answer func(childComplexity int) int Value func(childComplexity int) int } Application struct { Accepted func(childComplexity int) int Event func(childComplexity int) int Form func(childComplexity int) int Responses func(childComplexity int) int Score func(childComplexity int) int Student func(childComplexity int) int } AuthPayload struct { SessionID func(childComplexity int) int User func(childComplexity int) int } Building struct { City func(childComplexity int) int ID func(childComplexity int) int Latitude func(childComplexity int) int Longitude func(childComplexity int) int Name func(childComplexity int) int Number func(childComplexity int) int Rooms func(childComplexity int) int Street func(childComplexity int) int Zip func(childComplexity int) int ZoomLevel func(childComplexity int) int } Event struct { Description func(childComplexity int) int From func(childComplexity int) int ID func(childComplexity int) int NeedsTutors func(childComplexity int) int RegistrationForm func(childComplexity int) int RoomsAvailable func(childComplexity int) int Title func(childComplexity int) int To func(childComplexity int) int Topic func(childComplexity int) int TutorsAssigned func(childComplexity int) int TutorsAvailable func(childComplexity int) int Type func(childComplexity int) int Umbrella func(childComplexity int) int } EventRegistration struct { Event func(childComplexity int) int Room func(childComplexity int) int } EventTutorRoomPair struct { Registrations func(childComplexity int) int Room func(childComplexity int) int Tutors func(childComplexity int) int } Form struct { Description func(childComplexity int) int EventID func(childComplexity int) int Questions func(childComplexity int) int Title func(childComplexity int) int } Label struct { Color func(childComplexity int) int Name func(childComplexity int) int } Mutation struct { AddBuilding func(childComplexity int, building models.Building) int AddEvent func(childComplexity int, event models.Event) int AddEventAssignmentForTutor func(childComplexity int, assignment models.EventToUserAssignment) int AddForm func(childComplexity int, form models.Form) int AddLabel func(childComplexity int, label models.Label) int AddRoom func(childComplexity int, room models.Room) int AddRoomAvailabilityForEvent func(childComplexity int, availability models.RoomToEventAvailability) int AddSetting func(childComplexity int, setting models.Setting) int AddStudent func(childComplexity int, student models.User, application model.NewUserToEventApplication) int AddStudentApplicationForEvent func(childComplexity int, application model.NewUserToEventApplication) int AddStudentRegistrationForEvent func(childComplexity int, registration models.UserToEventRegistration) int AddTutor func(childComplexity int, tutor models.User, availability model.NewUserToEventAvailability) int AddTutorAvailabilityForEvent func(childComplexity int, availability model.NewUserToEventAvailability) int AddUser func(childComplexity int, user models.User) int DeleteBuilding func(childComplexity int, id []int) int DeleteEvent func(childComplexity int, id []int) int DeleteEventAssignmentForTutor func(childComplexity int, assignment models.EventToUserAssignment) int DeleteForm func(childComplexity int, id []int) int DeleteLabel func(childComplexity int, name []string) int DeleteRoom func(childComplexity int, number []string, buildingID int) int DeleteRoomAvailabilityForEvent func(childComplexity int, availability models.RoomToEventAvailability) int DeleteSetting func(childComplexity int, key []string) int DeleteStudentApplicationForEvent func(childComplexity int, mail string, eventID int) int DeleteStudentRegistrationForEvent func(childComplexity int, registration models.UserToEventRegistration) int DeleteTutorAvailabilityForEvent func(childComplexity int, availability model.NewUserToEventAvailability) int DeleteUser func(childComplexity int, mail []string) int UpdateBuilding func(childComplexity int, id int, building models.Building) int UpdateEvent func(childComplexity int, id int, event models.Event) int UpdateForm func(childComplexity int, id int, form models.Form) int UpdateLabel func(childComplexity int, label models.Label) int UpdateRoom func(childComplexity int, room models.Room) int UpdateRoomForTutorial func(childComplexity int, newRoomNumber string, newBuildingID int, eventID int, oldRoomNumber string, oldBuildingID int) int UpdateSetting func(childComplexity int, setting models.Setting) int UpdateUser func(childComplexity int, user models.User) int } Query struct { Applications func(childComplexity int, eventID *int, studentMail []string) int Buildings func(childComplexity int, id []int) int Events func(childComplexity int, id []int, umbrellaID []int, topic []string, typeArg []string, needsTutors *bool, onlyFuture *bool, userMail []string) int Forms func(childComplexity int, id []int) int Labels func(childComplexity int, name []string, kind []model.LabelKind, umbrellaID []int) int Login func(childComplexity int, credentials *model.EmailPassword, sessionID *string) int Registrations func(childComplexity int, studentMail string) int Rooms func(childComplexity int, number []string, buildingID int) int Settings func(childComplexity int, key []string, typeArg []model.ScalarType) int Umbrellas func(childComplexity int, id []int, onlyFuture *bool) int Users func(childComplexity int, mail []string, sessionID []string) int } Question struct { Answers func(childComplexity int) int ID func(childComplexity int) int Required func(childComplexity int) int Title func(childComplexity int) int Type func(childComplexity int) int } QuestionAnswersPair struct { Answers func(childComplexity int) int Question func(childComplexity int) int } Room struct { Building func(childComplexity int) int Capacity func(childComplexity int) int Floor func(childComplexity int) int Name func(childComplexity int) int Number func(childComplexity int) int } Setting struct { Key func(childComplexity int) int Type func(childComplexity int) int Value func(childComplexity int) int } User struct { Applications func(childComplexity int) int Confirmed func(childComplexity int) int EventsAssigned func(childComplexity int) int EventsAvailable func(childComplexity int) int EventsRegistered func(childComplexity int) int Fn func(childComplexity int) int Mail func(childComplexity int) int Sn func(childComplexity int) int } }
type Config ¶
type Config struct { Schema *ast.Schema Resolvers ResolverRoot Directives DirectiveRoot Complexity ComplexityRoot }
type DirectiveRoot ¶
type DirectiveRoot struct { }
type EventResolver ¶
type MutationResolver ¶
type MutationResolver interface { AddUser(ctx context.Context, user models.User) (*models.User, error) UpdateUser(ctx context.Context, user models.User) (*models.User, error) DeleteUser(ctx context.Context, mail []string) (int, error) AddTutor(ctx context.Context, tutor models.User, availability model.NewUserToEventAvailability) (*models.User, error) AddStudent(ctx context.Context, student models.User, application model.NewUserToEventApplication) (*models.User, error) AddEvent(ctx context.Context, event models.Event) (*models.Event, error) UpdateEvent(ctx context.Context, id int, event models.Event) (*models.Event, error) DeleteEvent(ctx context.Context, id []int) (int, error) AddBuilding(ctx context.Context, building models.Building) (*models.Building, error) UpdateBuilding(ctx context.Context, id int, building models.Building) (*models.Building, error) DeleteBuilding(ctx context.Context, id []int) (int, error) AddRoom(ctx context.Context, room models.Room) (*models.Room, error) UpdateRoom(ctx context.Context, room models.Room) (*models.Room, error) DeleteRoom(ctx context.Context, number []string, buildingID int) (int, error) AddLabel(ctx context.Context, label models.Label) (*models.Label, error) UpdateLabel(ctx context.Context, label models.Label) (*models.Label, error) DeleteLabel(ctx context.Context, name []string) (int, error) AddSetting(ctx context.Context, setting models.Setting) (*models.Setting, error) UpdateSetting(ctx context.Context, setting models.Setting) (*models.Setting, error) DeleteSetting(ctx context.Context, key []string) (int, error) AddForm(ctx context.Context, form models.Form) (*models.Form, error) UpdateForm(ctx context.Context, id int, form models.Form) (*models.Form, error) DeleteForm(ctx context.Context, id []int) (int, error) AddEventAssignmentForTutor(ctx context.Context, assignment models.EventToUserAssignment) (*models.Event, error) DeleteEventAssignmentForTutor(ctx context.Context, assignment models.EventToUserAssignment) (*models.Event, error) AddTutorAvailabilityForEvent(ctx context.Context, availability model.NewUserToEventAvailability) (*models.User, error) DeleteTutorAvailabilityForEvent(ctx context.Context, availability model.NewUserToEventAvailability) (*models.User, error) AddRoomAvailabilityForEvent(ctx context.Context, availability models.RoomToEventAvailability) (*models.Room, error) UpdateRoomForTutorial(ctx context.Context, newRoomNumber string, newBuildingID int, eventID int, oldRoomNumber string, oldBuildingID int) (*models.Event, error) DeleteRoomAvailabilityForEvent(ctx context.Context, availability models.RoomToEventAvailability) (*models.Room, error) AddStudentRegistrationForEvent(ctx context.Context, registration models.UserToEventRegistration) (*models.UserToEventRegistration, error) DeleteStudentRegistrationForEvent(ctx context.Context, registration models.UserToEventRegistration) (*models.User, error) AddStudentApplicationForEvent(ctx context.Context, application model.NewUserToEventApplication) (*models.User, error) DeleteStudentApplicationForEvent(ctx context.Context, mail string, eventID int) (*models.User, error) }
type NewAnswerResolver ¶
type NewBuildingResolver ¶
type NewEventResolver ¶
type NewLabelResolver ¶
type NewQuestionResolver ¶
type NewRoomResolver ¶
type NewSettingResolver ¶
type QueryResolver ¶
type QueryResolver interface { Events(ctx context.Context, id []int, umbrellaID []int, topic []string, typeArg []string, needsTutors *bool, onlyFuture *bool, userMail []string) ([]*models.Event, error) Umbrellas(ctx context.Context, id []int, onlyFuture *bool) ([]*models.Event, error) Buildings(ctx context.Context, id []int) ([]*models.Building, error) Rooms(ctx context.Context, number []string, buildingID int) ([]*models.Room, error) Labels(ctx context.Context, name []string, kind []model.LabelKind, umbrellaID []int) ([]*models.Label, error) Settings(ctx context.Context, key []string, typeArg []model.ScalarType) ([]*models.Setting, error) Users(ctx context.Context, mail []string, sessionID []string) ([]*models.User, error) Forms(ctx context.Context, id []int) ([]*models.Form, error) Applications(ctx context.Context, eventID *int, studentMail []string) ([]*models.Application, error) Registrations(ctx context.Context, studentMail string) ([]*models.UserToEventRegistration, error) Login(ctx context.Context, credentials *model.EmailPassword, sessionID *string) (*model.AuthPayload, error) }
type QuestionResolver ¶
type Resolver ¶
func (*Resolver) Answer ¶
func (r *Resolver) Answer() AnswerResolver
Answer returns AnswerResolver implementation.
func (*Resolver) Application ¶
func (r *Resolver) Application() ApplicationResolver
Application returns ApplicationResolver implementation.
func (*Resolver) Building ¶
func (r *Resolver) Building() BuildingResolver
Building returns BuildingResolver implementation.
func (*Resolver) Event ¶
func (r *Resolver) Event() EventResolver
Event returns EventResolver implementation.
func (*Resolver) Mutation ¶
func (r *Resolver) Mutation() MutationResolver
Mutation returns MutationResolver implementation.
func (*Resolver) NewAnswer ¶
func (r *Resolver) NewAnswer() NewAnswerResolver
NewAnswer returns NewAnswerResolver implementation.
func (*Resolver) NewBuilding ¶
func (r *Resolver) NewBuilding() NewBuildingResolver
NewBuilding returns NewBuildingResolver implementation.
func (*Resolver) NewEvent ¶
func (r *Resolver) NewEvent() NewEventResolver
NewEvent returns NewEventResolver implementation.
func (*Resolver) NewLabel ¶
func (r *Resolver) NewLabel() NewLabelResolver
NewLabel returns NewLabelResolver implementation.
func (*Resolver) NewQuestion ¶
func (r *Resolver) NewQuestion() NewQuestionResolver
NewQuestion returns NewQuestionResolver implementation.
func (*Resolver) NewRoom ¶
func (r *Resolver) NewRoom() NewRoomResolver
NewRoom returns NewRoomResolver implementation.
func (*Resolver) NewSetting ¶
func (r *Resolver) NewSetting() NewSettingResolver
NewSetting returns NewSettingResolver implementation.
func (*Resolver) Query ¶
func (r *Resolver) Query() QueryResolver
Query returns QueryResolver implementation.
func (*Resolver) Question ¶
func (r *Resolver) Question() QuestionResolver
Question returns QuestionResolver implementation.
func (*Resolver) Room ¶
func (r *Resolver) Room() RoomResolver
Room returns RoomResolver implementation.
func (*Resolver) Setting ¶
func (r *Resolver) Setting() SettingResolver
Setting returns SettingResolver implementation.
type ResolverRoot ¶
type ResolverRoot interface { Answer() AnswerResolver Application() ApplicationResolver Building() BuildingResolver Event() EventResolver Mutation() MutationResolver Query() QueryResolver Question() QuestionResolver Room() RoomResolver Setting() SettingResolver NewAnswer() NewAnswerResolver NewBuilding() NewBuildingResolver NewEvent() NewEventResolver NewLabel() NewLabelResolver NewQuestion() NewQuestionResolver NewRoom() NewRoomResolver NewSetting() NewSettingResolver }