Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ApplyMatchInput ¶
type ApplyMatchInput interface { Scores() entity.ScoreCollection OutcomeAt() time.Time }
ApplyMatchInput はApplyMatch usecase のInputポート
type ApplyMatchOutput ¶
type ApplyMatchOutput interface {
SetParticipants(entity.RatingResourceCollection)
}
ApplyMatchInput はApplyMatch usecase のOutputポート
type CoreUsecase ¶
type CoreUsecase struct {
// contains filtered or unexported fields
}
CoreUsecase はアプリケーションの振る舞いを記述する。
func New ¶
func New(config *entity.Config, repo RatingResourceRepository, lifeCycle LifeCycle) *CoreUsecase
New はCoreUsecaseのコンストラクタ
func (*CoreUsecase) ApplyMatch ¶
func (u *CoreUsecase) ApplyMatch(ctx context.Context, input ApplyMatchInput, output ApplyMatchOutput) (err error)
ApplyMatch はRatingResouce同士の対戦をそれぞれのRatingに反映します。
func (*CoreUsecase) CreatePlayer ¶
func (u *CoreUsecase) CreatePlayer(ctx context.Context, input CreatePlayerInput, output CreatePlayerOutput) (err error)
CreatePlayer はPlayerというRatingResouceを追加します。
type CreatePlayerInput ¶
CreatePlayerInput はCreatePlayer usecase のInputポート
type CreatePlayerOutput ¶
CreatePlayerInput はCreatePlayer usecase のOutputポート
type RatingResourceRepository ¶
type RatingResourceRepository interface { FindAllByRRNs(context.Context, []entity.RRN) (entity.RatingResourceCollection, error) Save(context.Context, entity.RatingResource) error SaveAll(context.Context, entity.RatingResourceCollection) error }
RatingResourceRepository はRatingResouce(Player/Team/etc...) にアクセスするための永続化インタフェース
Click to show internal directories.
Click to hide internal directories.