30 lines
956 B
Go
30 lines
956 B
Go
package ports
|
|
|
|
import (
|
|
"galaxy/user/internal/domain/common"
|
|
"galaxy/user/internal/domain/entitlement"
|
|
"galaxy/user/internal/domain/policy"
|
|
)
|
|
|
|
// IDGenerator creates new user identifiers and generated initial race names.
|
|
type IDGenerator interface {
|
|
// NewUserID returns one newly generated stable user identifier.
|
|
NewUserID() (common.UserID, error)
|
|
|
|
// NewInitialRaceName returns one generated initial race name in the
|
|
// `player-<shortid>` form.
|
|
NewInitialRaceName() (common.RaceName, error)
|
|
|
|
// NewEntitlementRecordID returns one newly generated entitlement history
|
|
// record identifier.
|
|
NewEntitlementRecordID() (entitlement.EntitlementRecordID, error)
|
|
|
|
// NewSanctionRecordID returns one newly generated sanction history record
|
|
// identifier.
|
|
NewSanctionRecordID() (policy.SanctionRecordID, error)
|
|
|
|
// NewLimitRecordID returns one newly generated limit history record
|
|
// identifier.
|
|
NewLimitRecordID() (policy.LimitRecordID, error)
|
|
}
|