dataloaders

package
v0.0.0-...-8ac9c69 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 11, 2024 License: MIT Imports: 13 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetChatMessageView

func GetChatMessageView(ctx context.Context, chatMessageID string) (*db.ChatMessageView, error)

func GetCompetenceParents

func GetCompetenceParents(ctx context.Context, competenceID string, currentUser *middleware.UserContext) ([]*db.Competence, error)

func GetUser

func GetUser(ctx context.Context, id string, currentUser *middleware.UserContext) (*db.User, error)

func Middleware

func Middleware(loaders *Loaders) func(echo.HandlerFunc) echo.HandlerFunc

Types

type CompetenceParents

type CompetenceParents struct {
	bun.BaseModel

	CompetenceID string
	Parents      json.RawMessage `bun:",type:jsonb"`
}

type Loaders

type Loaders struct {
	CompetenceLoader  *dataloader.Loader
	UserLoader        *dataloader.Loader
	ChatMessageLoader *dataloader.Loader
}

Loaders wrap your data loaders to inject via middleware

func For

func For(ctx context.Context) *Loaders

For returns the dataloader for a given context

func NewLoaders

func NewLoaders(conn *bun.DB) *Loaders

NewLoaders instantiates data loaders for the middleware

type Reader

type Reader struct {
	// contains filtered or unexported fields
}

func (*Reader) GetCompetenceParents

func (u *Reader) GetCompetenceParents(ctx context.Context, keys dataloader.Keys) []*dataloader.Result

TODO: refactor this to optimise code readability and maintainability

func (*Reader) GetUser

func (u *Reader) GetUser(ctx context.Context, keys dataloader.Keys) []*dataloader.Result

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL