api

package
v0.6.0 Latest Latest
Warning

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

Go to latest
Published: Jun 23, 2024 License: AGPL-3.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Delete

func Delete[T any](dp WritableProvider[T]) echo.HandlerFunc

func Get

func Get[T any](dp Provider[T]) echo.HandlerFunc

func GetList

func GetList[T any](dp Provider[T]) echo.HandlerFunc

func Post

func Post[T any](dp WritableProvider[T]) echo.HandlerFunc

func Put

func Put[T any](dp WritableProvider[T]) echo.HandlerFunc

Types

type JudgeDataProvider

type JudgeDataProvider struct {
	DB *sql.DB
}

func (JudgeDataProvider) Count

func (dp JudgeDataProvider) Count() (int64, error)

func (JudgeDataProvider) Delete

func (dp JudgeDataProvider) Delete(id string) error

func (JudgeDataProvider) EndpointURL

func (JudgeDataProvider) EndpointURL() string

func (JudgeDataProvider) Get

func (dp JudgeDataProvider) Get(id string) (*models.Judge, error)

func (JudgeDataProvider) Identifier

func (JudgeDataProvider) Identifier() string

func (JudgeDataProvider) Insert

func (dp JudgeDataProvider) Insert(elem *models.Judge) error

func (JudgeDataProvider) List

func (JudgeDataProvider) Update

func (dp JudgeDataProvider) Update(id string, elem *models.Judge) error

type PartialDataProvider

type PartialDataProvider struct {
	DB *sql.DB
}

func (PartialDataProvider) Count

func (dp PartialDataProvider) Count() (int64, error)

func (PartialDataProvider) Delete

func (dp PartialDataProvider) Delete(name string) error

func (PartialDataProvider) EndpointURL

func (PartialDataProvider) EndpointURL() string

func (PartialDataProvider) Get

func (dp PartialDataProvider) Get(name string) (*models.Partial, error)

func (PartialDataProvider) Identifier

func (PartialDataProvider) Identifier() string

func (PartialDataProvider) Insert

func (dp PartialDataProvider) Insert(elem *models.Partial) error

func (PartialDataProvider) List

func (PartialDataProvider) Update

func (dp PartialDataProvider) Update(name string, elem *models.Partial) error

type ProblemRelDataProvider

type ProblemRelDataProvider struct {
	DB *sql.DB
}

func (ProblemRelDataProvider) Count

func (dp ProblemRelDataProvider) Count() (int64, error)

func (ProblemRelDataProvider) Delete

func (dp ProblemRelDataProvider) Delete(id string) error

func (ProblemRelDataProvider) EndpointURL

func (ProblemRelDataProvider) EndpointURL() string

func (ProblemRelDataProvider) Get

func (ProblemRelDataProvider) Identifier

func (ProblemRelDataProvider) Identifier() string

func (ProblemRelDataProvider) Insert

func (dp ProblemRelDataProvider) Insert(elem *models.ProblemRel) error

func (ProblemRelDataProvider) List

func (ProblemRelDataProvider) Update

func (dp ProblemRelDataProvider) Update(id string, elem *models.ProblemRel) error

type Provider

type Provider[T any] interface {
	EndpointURL() string

	Identifier() string

	List(*templates.PaginationData) ([]*T, error)
	Count() (int64, error)
	Get(string) (*T, error)
}

type SubmissionDataProvider

type SubmissionDataProvider struct {
	DB *sql.DB
}

func (SubmissionDataProvider) Count

func (dp SubmissionDataProvider) Count() (int64, error)

func (SubmissionDataProvider) Delete

func (dp SubmissionDataProvider) Delete(id string) error

func (SubmissionDataProvider) EndpointURL

func (SubmissionDataProvider) EndpointURL() string

func (SubmissionDataProvider) Get

func (SubmissionDataProvider) Identifier

func (SubmissionDataProvider) Identifier() string

func (SubmissionDataProvider) Insert

func (dp SubmissionDataProvider) Insert(elem *models.Submission) error

func (SubmissionDataProvider) List

func (SubmissionDataProvider) Update

func (dp SubmissionDataProvider) Update(id string, elem *models.Submission) error

type UserDataProvider

type UserDataProvider struct {
	DB *sql.DB
}

func (UserDataProvider) Count

func (dp UserDataProvider) Count() (int64, error)

func (UserDataProvider) Delete

func (dp UserDataProvider) Delete(id string) error

func (UserDataProvider) EndpointURL

func (UserDataProvider) EndpointURL() string

func (UserDataProvider) Get

func (dp UserDataProvider) Get(id string) (*models.User, error)

func (UserDataProvider) Identifier

func (UserDataProvider) Identifier() string

func (UserDataProvider) Insert

func (dp UserDataProvider) Insert(elem *models.User) error

func (UserDataProvider) List

func (UserDataProvider) Update

func (dp UserDataProvider) Update(id string, elem *models.User) error

type WritableProvider

type WritableProvider[T any] interface {
	Provider[T]

	Insert(*T) error
	Delete(string) error
	Update(string, *T) error
}

Jump to

Keyboard shortcuts

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