feat: game lobby service
This commit is contained in:
@@ -12,6 +12,7 @@ import (
|
||||
"sync"
|
||||
"time"
|
||||
|
||||
"galaxy/user/internal/service/accountdeletion"
|
||||
"galaxy/user/internal/service/adminusers"
|
||||
"galaxy/user/internal/service/authdirectory"
|
||||
"galaxy/user/internal/service/entitlementsvc"
|
||||
@@ -98,12 +99,12 @@ type GetUserByEmailUseCase interface {
|
||||
Execute(ctx context.Context, input adminusers.GetUserByEmailInput) (adminusers.LookupResult, error)
|
||||
}
|
||||
|
||||
// GetUserByRaceNameUseCase describes the trusted admin exact-read by exact
|
||||
// stored race name consumed by the HTTP transport layer.
|
||||
type GetUserByRaceNameUseCase interface {
|
||||
// Execute returns the full current account aggregate for one exact race
|
||||
// GetUserByUserNameUseCase describes the trusted admin exact-read by stored
|
||||
// user name consumed by the HTTP transport layer.
|
||||
type GetUserByUserNameUseCase interface {
|
||||
// Execute returns the full current account aggregate for one stored user
|
||||
// name.
|
||||
Execute(ctx context.Context, input adminusers.GetUserByRaceNameInput) (adminusers.LookupResult, error)
|
||||
Execute(ctx context.Context, input adminusers.GetUserByUserNameInput) (adminusers.LookupResult, error)
|
||||
}
|
||||
|
||||
// ListUsersUseCase describes the trusted admin paginated listing use case
|
||||
@@ -178,6 +179,14 @@ type RemoveLimitUseCase interface {
|
||||
Execute(ctx context.Context, input policysvc.RemoveLimitInput) (policysvc.LimitCommandResult, error)
|
||||
}
|
||||
|
||||
// DeleteUserUseCase describes the trusted `DeleteUser` soft-delete use case
|
||||
// consumed by the HTTP transport layer.
|
||||
type DeleteUserUseCase interface {
|
||||
// Execute soft-deletes one regular-user account and emits a
|
||||
// `user.lifecycle.deleted` event on success.
|
||||
Execute(ctx context.Context, input accountdeletion.Input) (accountdeletion.Result, error)
|
||||
}
|
||||
|
||||
// Config describes the trusted internal HTTP listener owned by the user
|
||||
// service.
|
||||
type Config struct {
|
||||
@@ -252,9 +261,9 @@ type Dependencies struct {
|
||||
// e-mail.
|
||||
GetUserByEmail GetUserByEmailUseCase
|
||||
|
||||
// GetUserByRaceName executes the trusted admin exact-read by exact stored
|
||||
// race name.
|
||||
GetUserByRaceName GetUserByRaceNameUseCase
|
||||
// GetUserByUserName executes the trusted admin exact-read by stored user
|
||||
// name.
|
||||
GetUserByUserName GetUserByUserNameUseCase
|
||||
|
||||
// ListUsers executes the trusted admin paginated filtered listing use case.
|
||||
ListUsers ListUsersUseCase
|
||||
@@ -288,6 +297,9 @@ type Dependencies struct {
|
||||
// RemoveLimit executes the trusted limit-remove use case.
|
||||
RemoveLimit RemoveLimitUseCase
|
||||
|
||||
// DeleteUser executes the trusted `DeleteUser` soft-delete use case.
|
||||
DeleteUser DeleteUserUseCase
|
||||
|
||||
// Logger writes structured transport logs. When nil, the default logger is
|
||||
// used.
|
||||
Logger *slog.Logger
|
||||
|
||||
Reference in New Issue
Block a user