Documentation
¶
Index ¶
- type AuthContext
- type Injector
- type PaymentUsecase
- type RankingUsecase
- type UserContext
- type UserUsecase
- func (u UserUsecase) DummyAuth(c AuthContext, dummyID domain.DummyID) (*domain.User, error)
- func (u UserUsecase) FirebaseAuth(c AuthContext, token domain.FirebaseToken) (*domain.User, error)
- func (u UserUsecase) UpdateName(c UserContext, name domain.UserName) (*domain.User, error)
- func (u UserUsecase) UserAuth(c AuthContext, userID domain.UserID, token domain.UserToken) (*domain.User, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AuthContext ¶
AuthContext は認証ユースケースのためのコンテキストを伝播します。
func NewAuthContext ¶
func NewAuthContext(c context.Context, log *logrus.Entry) AuthContext
NewAuthContext は認証ユースケースのためのコンテキストを生成します。
type Injector ¶
type Injector interface { UserUsecase() UserUsecase RankingUsecase() RankingUsecase PaymentUsecase() PaymentUsecase }
Injector はapplication層以下の依存関係を抽象化します。
type PaymentUsecase ¶
type PaymentUsecase struct {
// contains filtered or unexported fields
}
PaymentUsecase は課金のユースケースを実装します。
func NewPaymentUsecase ¶
func NewPaymentUsecase(repo domain.PaymentRepository, masterRepo domain.MasterRepository) PaymentUsecase
NewPaymentUsecase は課金のユースケースを生成します。
func (PaymentUsecase) Items ¶
func (u PaymentUsecase) Items(c AuthContext) ([]domain.PaymentItem, error)
Items は品揃えを取得します。
func (PaymentUsecase) Logs ¶
func (u PaymentUsecase) Logs(c UserContext, cursor domain.Cursor) ([]domain.PaymentLog, domain.Cursor, error)
Logs は購入履歴を取得します。
func (PaymentUsecase) Pay ¶
func (u PaymentUsecase) Pay(c UserContext, id domain.PaymentItemID) (*domain.PaymentLog, error)
Pay はアイテムを購入します。
type RankingUsecase ¶
type RankingUsecase struct {
// contains filtered or unexported fields
}
RankingUsecase はランキングのユースケースを実装します。
func NewRankingUsecase ¶
func NewRankingUsecase(repo domain.RankingRepository) RankingUsecase
NewRankingUsecase はランキングのユースケースを生成します。
func (RankingUsecase) Rankers ¶
func (u RankingUsecase) Rankers(c AuthContext, offset, limit int64) ([]domain.Ranker, error)
Rankers はランキングのユーザーリストを返します。
type UserContext ¶
UserContext はユーザーユースケースのためのコンテキストを伝播します。
func NewUserContext ¶
NewUserContext はユーザーユースケースのためのコンテキストを生成します。
type UserUsecase ¶
type UserUsecase struct {
// contains filtered or unexported fields
}
UserUsecase はユーザーのユースケースを実装します。
func NewUserUsecase ¶
func NewUserUsecase(repo domain.UserRepository, fb domain.FirebaseRepository) UserUsecase
NewUserUsecase はユーザーのユースケースを生成します。
func (UserUsecase) DummyAuth ¶
func (u UserUsecase) DummyAuth(c AuthContext, dummyID domain.DummyID) (*domain.User, error)
DummyAuth はダミーユーザーを認証します。
func (UserUsecase) FirebaseAuth ¶
func (u UserUsecase) FirebaseAuth(c AuthContext, token domain.FirebaseToken) (*domain.User, error)
FirebaseAuth はFirebaseトークンを認証します。
func (UserUsecase) UpdateName ¶
func (u UserUsecase) UpdateName(c UserContext, name domain.UserName) (*domain.User, error)
UpdateName はユーザー名を変更します。
Click to show internal directories.
Click to hide internal directories.