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 { Conversation struct { AvatarURL func(childComplexity int) int CreationTime func(childComplexity int) int ID func(childComplexity int) int Messages func(childComplexity int, afterID *string, limit int) int Participants func(childComplexity int) int Title func(childComplexity int) int } Message struct { Body func(childComplexity int) int Conversation func(childComplexity int) int Edits func(childComplexity int) int ID func(childComplexity int) int Sender func(childComplexity int) int SendingTime func(childComplexity int) int } MessageEdit struct { Editor func(childComplexity int) int PreviousBody func(childComplexity int) int Time func(childComplexity int) int } Mutation struct { CreateConversation func(childComplexity int, title string, participants []string, avatarURL *string) int CreateSession func(childComplexity int, username string, password string) int CreateUser func(childComplexity int, username string, displayName string, avatarURL *string, password string) int DeleteMessage func(childComplexity int, messageID string, reason *string) int DestroySession func(childComplexity int, id string) int EditConversation func(childComplexity int, conversationID string, title *string, avatarURL *string) int EditMessage func(childComplexity int, messageID string, body string) int LeaveConversation func(childComplexity int, conversationID string) int RemoveUserFromConversation func(childComplexity int, conversationID string, userID string) int SendMessage func(childComplexity int, body string, conversationID string) int } Query struct { User func(childComplexity int, id string) int } Session struct { CreationTime func(childComplexity int) int ID func(childComplexity int) int IP func(childComplexity int) int User func(childComplexity int) int UserAgent func(childComplexity int) int } User struct { AvatarURL func(childComplexity int) int Conversations func(childComplexity int) int CreationTime func(childComplexity int) int DisplayName func(childComplexity int) int ID func(childComplexity int) int Sessions func(childComplexity int) int Username func(childComplexity int) int } }
type Config ¶
type Config struct { Resolvers ResolverRoot Directives DirectiveRoot Complexity ComplexityRoot }
type ConversationResolver ¶
type DirectiveRoot ¶
type DirectiveRoot struct { }
type MessageEditResolver ¶
type MessageResolver ¶
type MutationResolver ¶
type MutationResolver interface { CreateSession(ctx context.Context, username string, password string) (*model.Session, error) DestroySession(ctx context.Context, id string) (bool, error) CreateUser(ctx context.Context, username string, displayName string, avatarURL *string, password string) (*model.User, error) SendMessage(ctx context.Context, body string, conversationID string) (*model.Message, error) EditMessage(ctx context.Context, messageID string, body string) (*model.Message, error) DeleteMessage(ctx context.Context, messageID string, reason *string) (bool, error) CreateConversation(ctx context.Context, title string, participants []string, avatarURL *string) (*model.Conversation, error) LeaveConversation(ctx context.Context, conversationID string) (bool, error) EditConversation(ctx context.Context, conversationID string, title *string, avatarURL *string) (*model.Conversation, error) RemoveUserFromConversation(ctx context.Context, conversationID string, userID string) (bool, error) }
type QueryResolver ¶
type ResolverRoot ¶
type ResolverRoot interface { Conversation() ConversationResolver Message() MessageResolver MessageEdit() MessageEditResolver Mutation() MutationResolver Query() QueryResolver Session() SessionResolver User() UserResolver }
type SessionResolver ¶
Click to show internal directories.
Click to hide internal directories.