Documentation
¶
Index ¶
- func NewAPIKeySvc(config *APIKeySvcConfig) domain.APIKeySvc
- func NewAuthSvc(config *AuthSvcConfig) domain.AuthSvc
- func NewDocAPIKeySvc(config *DocAPIKeySvcConfig) domain.DocAPIKeySvc
- func NewPasswordSvc(config *PasswordSvcConfig) domain.PasswordSvc
- func NewRegistrationSessionSvc(config *RegistrationSessionSvcConfig) domain.RegistrationSessionSvc
- func NewTokenSvc(config *TokenSvcConfig) domain.TokenSvc
- func NewUserSvc(config *UserSvcConfig) domain.UserSvc
- type APIKeySvcConfig
- type AuthSvcConfig
- type DocAPIKeySvcConfig
- type PasswordSvcConfig
- type RegistrationSessionSvcConfig
- type TokenSvcConfig
- type TransactionManager
- type UserSvcConfig
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewAPIKeySvc ¶
func NewAPIKeySvc(config *APIKeySvcConfig) domain.APIKeySvc
func NewAuthSvc ¶
func NewAuthSvc(config *AuthSvcConfig) domain.AuthSvc
func NewDocAPIKeySvc ¶
func NewDocAPIKeySvc(config *DocAPIKeySvcConfig) domain.DocAPIKeySvc
func NewPasswordSvc ¶
func NewPasswordSvc(config *PasswordSvcConfig) domain.PasswordSvc
func NewRegistrationSessionSvc ¶
func NewRegistrationSessionSvc(config *RegistrationSessionSvcConfig) domain.RegistrationSessionSvc
func NewTokenSvc ¶
func NewTokenSvc(config *TokenSvcConfig) domain.TokenSvc
func NewUserSvc ¶
func NewUserSvc(config *UserSvcConfig) domain.UserSvc
Types ¶
type APIKeySvcConfig ¶
type APIKeySvcConfig struct {
// Repos (required) is the repository factory for auth persistence.
Repos domain.RepoFactory
// MediatorFactory (required) builds the mediators used by this service.
MediatorFactory domain.MediatorFactory
// TxManager (optional; default: nil) wraps multi-step operations in database transactions. It is not validated at construction; transactional code paths panic at runtime if it is unset.
TxManager TransactionManager
}
func BuildAPIKeySvcConfig ¶
func BuildAPIKeySvcConfig(queries *sqlc.Queries, jwtSecret string, pepper []byte, frontendURL string, coreClient domain.AuthCoreClient, encryptionKey []byte) *APIKeySvcConfig
type AuthSvcConfig ¶
type AuthSvcConfig struct {
// Repos (required) is the repository factory for auth persistence.
Repos domain.RepoFactory
// MediatorFactory (required) builds the mediators used by this service.
MediatorFactory domain.MediatorFactory
// NotificationPublisher (required) publishes notification messages to the outbox.
NotificationPublisher domain.NotificationPublisher
// TxManager (optional; default: nil) wraps multi-step operations in database transactions. It is not validated at construction; transactional code paths panic at runtime if it is unset.
TxManager TransactionManager
}
func BuildAuthSvcConfig ¶
func BuildAuthSvcConfig(queries *sqlc.Queries, jwtSecret string, pepper []byte, frontendURL string, coreClient domain.AuthCoreClient) *AuthSvcConfig
type DocAPIKeySvcConfig ¶
type DocAPIKeySvcConfig struct {
// Repos (required) is the repository factory for auth persistence.
Repos domain.RepoFactory
// MediatorFactory (required) builds the mediators used by this service.
MediatorFactory domain.MediatorFactory
// TxManager (optional; default: nil) wraps multi-step operations in database transactions. It is not validated at construction; transactional code paths panic at runtime if it is unset.
TxManager TransactionManager
}
func BuildDocAPIKeySvcConfig ¶
func BuildDocAPIKeySvcConfig(queries *sqlc.Queries, jwtSecret string, pepper []byte, frontendURL string, coreClient domain.AuthCoreClient, encryptionKey []byte) *DocAPIKeySvcConfig
type PasswordSvcConfig ¶
type PasswordSvcConfig struct {
// Repos (required) is the repository factory for auth persistence.
Repos domain.RepoFactory
// MediatorFactory (required) builds the mediators used by this service.
MediatorFactory domain.MediatorFactory
// NotificationPublisher (required) publishes notification messages to the outbox.
NotificationPublisher domain.NotificationPublisher
// TxManager (optional; default: nil) wraps multi-step operations in database transactions. It is not validated at construction; transactional code paths panic at runtime if it is unset.
TxManager TransactionManager
}
func BuildPasswordSvcConfig ¶
func BuildPasswordSvcConfig(queries *sqlc.Queries, jwtSecret string, pepper []byte, frontendURL string, coreClient domain.AuthCoreClient) *PasswordSvcConfig
type RegistrationSessionSvcConfig ¶
type RegistrationSessionSvcConfig struct {
// Repos (required) is the repository factory for auth persistence.
Repos domain.RepoFactory
// MediatorFactory (required) builds the mediators used by this service.
MediatorFactory domain.MediatorFactory
// NotificationPublisher (required) publishes notification messages to the outbox.
NotificationPublisher domain.NotificationPublisher
// TxManager (optional; default: nil) wraps multi-step operations in database transactions. It is not validated at construction; transactional code paths panic at runtime if it is unset.
TxManager TransactionManager
// BillingClient (optional; default: nil) is the billing-service client used to provision billing customers during registration. Not validated at construction.
BillingClient domain.AuthBillingClient
// CoreClient (optional; default: nil) is the core-service client used during registration. Not validated at construction.
CoreClient domain.AuthCoreClient
// FrontendURL (optional; default: "") is the dashboard base URL used in registration emails and redirects. Not validated at construction.
FrontendURL string
}
func BuildRegistrationSessionSvcConfig ¶
func BuildRegistrationSessionSvcConfig(queries *sqlc.Queries, jwtSecret string, pepper []byte, frontendURL string, coreClient domain.AuthCoreClient, billingClient domain.AuthBillingClient) *RegistrationSessionSvcConfig
type TokenSvcConfig ¶
type TokenSvcConfig struct {
// Repos (required) is the repository factory for auth persistence.
Repos domain.RepoFactory
// MediatorFactory (required) builds the mediators used by this service.
MediatorFactory domain.MediatorFactory
// NotificationPublisher (required) publishes notification messages to the outbox.
NotificationPublisher domain.NotificationPublisher
// TxManager (optional; default: nil) wraps multi-step operations in database transactions. It is not validated at construction; transactional code paths panic at runtime if it is unset.
TxManager TransactionManager
}
func BuildTokenSvcConfig ¶
func BuildTokenSvcConfig(queries *sqlc.Queries, jwtSecret string, pepper []byte, frontendURL string, coreClient domain.AuthCoreClient) *TokenSvcConfig
type TransactionManager ¶
type TransactionManager = db.TransactionManager[*sqlc.Queries, domain.RepoFactory]
func NewTransactionManager ¶
func NewTransactionManager(sqlDB *sql.DB, queries *sqlc.Queries) TransactionManager
type UserSvcConfig ¶
type UserSvcConfig struct {
// Repos (required) is the repository factory for auth persistence.
Repos domain.RepoFactory
// MediatorFactory (required) builds the mediators used by this service.
MediatorFactory domain.MediatorFactory
// NotificationPublisher (required) publishes notification messages to the outbox.
NotificationPublisher domain.NotificationPublisher
// TxManager (optional; default: nil) wraps multi-step operations in database transactions. It is not validated at construction; transactional code paths panic at runtime if it is unset.
TxManager TransactionManager
}
func BuildUserSvcConfig ¶
func BuildUserSvcConfig(queries *sqlc.Queries, jwtSecret string, pepper []byte, frontendURL string, coreClient domain.AuthCoreClient) *UserSvcConfig
Click to show internal directories.
Click to hide internal directories.