service

package
v0.1.1 Latest Latest
Warning

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

Go to latest
Published: Jul 14, 2024 License: GPL-3.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CatBreedChecker

type CatBreedChecker interface {
	CheckBreed(ctx context.Context, breed string) (formattedBreed string, err error)
}

type CatsRepository

type CatsRepository interface {
	Create(ctx context.Context, params dto.CreateCatParams) (catID int, err error)
	Delete(ctx context.Context, catID int) (err error)
	Update(ctx context.Context, params dto.UpdateCatParams) (err error)
	One(ctx context.Context, catID int) (*models.Cat, error)
	All(ctx context.Context) ([]*models.Cat, error)
}

type MissionsRepository

type MissionsRepository interface {
	Create(ctx context.Context) (missionID int, err error)
	Delete(ctx context.Context, missionID int) (err error)
	Update(ctx context.Context, params dto.UpdateMissionParams) (err error)
	One(ctx context.Context, missionID int) (*models.Mission, error)
	All(ctx context.Context, params dto.GetMissionsParams) ([]*models.Mission, error)
}

type NotesRepository

type NotesRepository interface {
	Create(ctx context.Context, missionID int, targetID int, contents []string) error
	All(ctx context.Context, missionID int, targetID int) ([]*models.Note, error)
}

type Service

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

func NewService

func NewService(catBreedChecker CatBreedChecker, catsRepository CatsRepository, missionsRepository MissionsRepository, targetsRepository TargetsRepository, notesRepository NotesRepository, transactor Transactor) *Service

func (Service) AddCat

func (s Service) AddCat(ctx context.Context, params dto.CreateCatParams) (catID int, err error)

func (Service) AddMissionTargets

func (s Service) AddMissionTargets(ctx context.Context, missionID int, newTargets []dto.CreateTargetParams) (err error)

func (Service) AddTargetNote

func (s Service) AddTargetNote(ctx context.Context, missionID, targetID int, contents []string) (err error)

func (Service) CompleteTargetByID

func (s Service) CompleteTargetByID(ctx context.Context, missionID, targetID int) (err error)

func (Service) CreateMission

func (s Service) CreateMission(ctx context.Context, params dto.CreateMissionParams) (missionID int, err error)

func (Service) DeleteCatByID

func (s Service) DeleteCatByID(ctx context.Context, catID int) error

func (Service) DeleteMissionByID

func (s Service) DeleteMissionByID(ctx context.Context, missionID int) (err error)

func (Service) DeleteTargetByID

func (s Service) DeleteTargetByID(ctx context.Context, missionID, targetID int) (err error)

func (Service) GetCatByID

func (s Service) GetCatByID(ctx context.Context, catID int) (*models.Cat, error)

func (Service) GetCats

func (s Service) GetCats(ctx context.Context) ([]*models.Cat, error)

func (Service) GetMissionByID

func (s Service) GetMissionByID(ctx context.Context, missionID int) (out *models.MissionFull, err error)

func (Service) GetMissions

func (s Service) GetMissions(ctx context.Context, params dto.GetMissionsParams) ([]*models.Mission, error)

func (Service) GetTargetByID

func (s Service) GetTargetByID(ctx context.Context, missionID, targetID int) (out *models.TargetFull, err error)

func (Service) GetTargetsByMissionID

func (s Service) GetTargetsByMissionID(ctx context.Context, missionID int) (out []*models.TargetFull, err error)

func (Service) UpdateCatByID

func (s Service) UpdateCatByID(ctx context.Context, params dto.UpdateCatParams) error

func (Service) UpdateMissionByID

func (s Service) UpdateMissionByID(ctx context.Context, params dto.UpdateMissionParams) (err error)

type TargetsRepository

type TargetsRepository interface {
	Create(ctx context.Context, missionID int, lastTargetID int, targets []dto.CreateTargetParams) error
	Delete(ctx context.Context, missionID int, targetID int) (err error)
	Update(ctx context.Context, missionID int, targetID int, completed *bool) (err error)
	All(ctx context.Context, missionID int) ([]*models.Target, error)
	One(ctx context.Context, missionID int, targetID int) (*models.Target, error)
}

type Transactor

type Transactor interface {
	WithinTransaction(ctx context.Context, f func(ctx context.Context) error) error
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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