Documentation
¶
Overview ¶
Package usecase implements the top-level application use cases for happyDomain. Each file wires together lower-level domain services to fulfil a single business capability: user authentication, DNS resolution, provider settings wizard, and database tidy-up. These usecases are consumed directly by the HTTP/API layer and delegate persistence to the storage interfaces defined in the sub-packages.
Index ¶
- Variables
- func NewAuthenticationUsecase(cfg *happydns.Options, store AuthenticationStorage, ...) happydns.AuthenticationUsecase
- func NewFormUsecase(cfg *happydns.Options) happydns.FormUsecase
- func NewProviderSettingsUsecase(cfg *happydns.Options, ps happydns.ProviderUsecase) happydns.ProviderSettingsUsecase
- func NewProviderSpecsUsecase() happydns.ProviderSpecsUsecase
- func NewResolverUsecase(cfg *happydns.Options) happydns.ResolverUsecase
- func NewServiceSpecsUsecase() happydns.ServiceSpecsUsecase
- func NewTidyUpUsecase(store storage.Storage) happydns.TidyUpUseCase
- type AuthenticationStorage
Constants ¶
This section is empty.
Variables ¶
Functions ¶
func NewAuthenticationUsecase ¶
func NewAuthenticationUsecase(cfg *happydns.Options, store AuthenticationStorage, userService happydns.UserUsecase) happydns.AuthenticationUsecase
func NewFormUsecase ¶
func NewFormUsecase(cfg *happydns.Options) happydns.FormUsecase
NewFormUsecase returns a FormUsecase backed by the given application options.
func NewProviderSettingsUsecase ¶
func NewProviderSettingsUsecase(cfg *happydns.Options, ps happydns.ProviderUsecase) happydns.ProviderSettingsUsecase
func NewProviderSpecsUsecase ¶
func NewProviderSpecsUsecase() happydns.ProviderSpecsUsecase
func NewResolverUsecase ¶
func NewResolverUsecase(cfg *happydns.Options) happydns.ResolverUsecase
func NewServiceSpecsUsecase ¶
func NewServiceSpecsUsecase() happydns.ServiceSpecsUsecase
NewServiceSpecsUsecase creates a new ServiceSpecsUsecase.
Types ¶
type AuthenticationStorage ¶
type AuthenticationStorage interface {
authuser.AuthUserStorage
user.UserStorage
}
Source Files
¶
- authentication_usecase.go
- doc.go
- form_usecase.go
- provider_settings_usecase.go
- provider_specs_usecase.go
- resolver_usecase.go
- service_specs_dns_types.go
- service_specs_usecase.go
- tidy_usecase.go
Directories
¶
| Path | Synopsis |
|---|---|
|
Package authuser groups all use cases related to authenticated user management: registration, password changes, email validation, account recovery, and deletion.
|
Package authuser groups all use cases related to authenticated user management: registration, password changes, email validation, account recovery, and deletion. |
|
Package domain implements the use cases for managing DNS domains in happyDomain.
|
Package domain implements the use cases for managing DNS domains in happyDomain. |
|
Package domainlog implements the use cases for domain audit-log management.
|
Package domainlog implements the use cases for domain audit-log management. |
|
Package insight collects anonymous usage statistics about a running happyDomain instance.
|
Package insight collects anonymous usage statistics about a running happyDomain instance. |
|
Package orchestrator wires together lower-level use-cases to implement the multi-step workflows that span provider access, zone storage, and domain history management.
|
Package orchestrator wires together lower-level use-cases to implement the multi-step workflows that span provider access, zone storage, and domain history management. |
|
Package provider implements the use cases for DNS provider management.
|
Package provider implements the use cases for DNS provider management. |
|
Package service implements use cases that operate on individual DNS services (the logical groupings of records within a zone subdomain).
|
Package service implements use cases that operate on individual DNS services (the logical groupings of records within a zone subdomain). |
|
Package session provides the business logic for managing user sessions in happyDomain.
|
Package session provides the business logic for managing user sessions in happyDomain. |
|
Package user implements use cases for managing happyDomain user accounts.
|
Package user implements use cases for managing happyDomain user accounts. |
|
Package zone implements the use cases for DNS zone management in happyDomain.
|
Package zone implements the use cases for DNS zone management in happyDomain. |
|
Package zoneService implements the use cases for managing DNS services within a zone.
|
Package zoneService implements the use cases for managing DNS services within a zone. |
Click to show internal directories.
Click to hide internal directories.