Documentation
      ¶
    
    
  
    
  
    Index ¶
- func ParseProvider(msg *happydns.ProviderMessage) (p *happydns.Provider, err error)
 - type CreateDomainOnProviderUsecase
 - type CreateProviderUsecase
 - type DefaultProviderValidator
 - type DeleteProviderUsecase
 - type DomainExistenceUsecase
 - type GetProviderUsecase
 - type ListHostedDomainsUsecase
 - type ListProvidersUsecase
 - type ProviderStorage
 - type ProviderValidator
 - type RestrictedService
 - func (s *RestrictedService) CreateDomainOnProvider(provider *happydns.Provider, fqdn string) error
 - func (s *RestrictedService) CreateProvider(user *happydns.User, msg *happydns.ProviderMessage) (*happydns.Provider, error)
 - func (s *RestrictedService) DeleteProvider(user *happydns.User, providerID happydns.Identifier) error
 - func (s *RestrictedService) UpdateProvider(providerID happydns.Identifier, user *happydns.User, ...) error
 - func (s *RestrictedService) UpdateProviderFromMessage(providerID happydns.Identifier, user *happydns.User, ...) error
 
- type Service
 - func (s *Service) CreateDomainOnProvider(provider *happydns.Provider, fqdn string) error
 - func (s *Service) CreateProvider(user *happydns.User, msg *happydns.ProviderMessage) (*happydns.Provider, error)
 - func (s *Service) DeleteProvider(user *happydns.User, providerID happydns.Identifier) error
 - func (s *Service) GetUserProvider(user *happydns.User, providerID happydns.Identifier) (*happydns.Provider, error)
 - func (s *Service) GetUserProviderMeta(user *happydns.User, providerID happydns.Identifier) (*happydns.ProviderMeta, error)
 - func (s *Service) ListHostedDomains(provider *happydns.Provider) ([]string, error)
 - func (s *Service) ListUserProviders(user *happydns.User) ([]*happydns.ProviderMeta, error)
 - func (s *Service) ListZoneCorrections(provider *happydns.Provider, domain *happydns.Domain, ...) ([]*happydns.Correction, error)
 - func (s *Service) RetrieveZone(provider *happydns.Provider, name string) ([]happydns.Record, error)
 - func (s *Service) TestDomainExistence(provider *happydns.Provider, name string) error
 - func (s *Service) UpdateProvider(providerID happydns.Identifier, user *happydns.User, ...) error
 - func (s *Service) UpdateProviderFromMessage(providerID happydns.Identifier, user *happydns.User, ...) error
 
- type UpdateProviderUsecase
 - type ZoneCorrectorUsecase
 - type ZoneRetrieverUsecase
 
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type CreateDomainOnProviderUsecase ¶
type CreateDomainOnProviderUsecase struct{}
    func NewCreateDomainOnProviderUsecase ¶
func NewCreateDomainOnProviderUsecase() *CreateDomainOnProviderUsecase
func (*CreateDomainOnProviderUsecase) Create ¶
func (uc *CreateDomainOnProviderUsecase) Create(provider *happydns.Provider, fqdn string) error
type CreateProviderUsecase ¶
type CreateProviderUsecase struct {
	// contains filtered or unexported fields
}
    func NewCreateProviderUsecase ¶
func NewCreateProviderUsecase(store ProviderStorage, checker ProviderValidator) *CreateProviderUsecase
func (*CreateProviderUsecase) Create ¶
func (uc *CreateProviderUsecase) Create(user *happydns.User, msg *happydns.ProviderMessage) (*happydns.Provider, error)
type DefaultProviderValidator ¶
type DefaultProviderValidator struct{}
    func (*DefaultProviderValidator) Validate ¶
func (v *DefaultProviderValidator) Validate(p *happydns.Provider) error
type DeleteProviderUsecase ¶
type DeleteProviderUsecase struct {
	// contains filtered or unexported fields
}
    func NewDeleteProviderUsecase ¶
func NewDeleteProviderUsecase(store ProviderStorage) *DeleteProviderUsecase
func (*DeleteProviderUsecase) Delete ¶
func (uc *DeleteProviderUsecase) Delete(user *happydns.User, providerID happydns.Identifier) error
type DomainExistenceUsecase ¶
type DomainExistenceUsecase struct{}
    func NewDomainExistenceUsecase ¶
func NewDomainExistenceUsecase() *DomainExistenceUsecase
func (*DomainExistenceUsecase) TestDomainExistence ¶
func (uc *DomainExistenceUsecase) TestDomainExistence(provider *happydns.Provider, domain string) error
type GetProviderUsecase ¶
type GetProviderUsecase struct {
	// contains filtered or unexported fields
}
    func NewGetProviderUsecase ¶
func NewGetProviderUsecase(store ProviderStorage) *GetProviderUsecase
func (*GetProviderUsecase) Get ¶
func (uc *GetProviderUsecase) Get(user *happydns.User, providerID happydns.Identifier) (*happydns.Provider, error)
func (*GetProviderUsecase) GetMeta ¶
func (uc *GetProviderUsecase) GetMeta(user *happydns.User, providerID happydns.Identifier) (*happydns.ProviderMeta, error)
type ListHostedDomainsUsecase ¶
type ListHostedDomainsUsecase struct{}
    func NewListHostedDomainsUsecase ¶
func NewListHostedDomainsUsecase() *ListHostedDomainsUsecase
func (*ListHostedDomainsUsecase) List ¶
func (uc *ListHostedDomainsUsecase) List(provider *happydns.Provider) ([]string, error)
type ListProvidersUsecase ¶
type ListProvidersUsecase struct {
	// contains filtered or unexported fields
}
    func NewListProvidersUsecase ¶
func NewListProvidersUsecase(store ProviderStorage) *ListProvidersUsecase
func (*ListProvidersUsecase) List ¶
func (uc *ListProvidersUsecase) List(user *happydns.User) ([]*happydns.ProviderMeta, error)
type ProviderStorage ¶
type ProviderStorage interface {
	// ListAllProviders retrieves the list of known Providers.
	ListAllProviders() (happydns.Iterator[happydns.ProviderMessage], error)
	// ListProviders retrieves all providers own by the given User.
	ListProviders(user *happydns.User) (happydns.ProviderMessages, error)
	// GetProvider retrieves the full Provider with the given identifier and owner.
	GetProvider(prvdid happydns.Identifier) (*happydns.ProviderMessage, error)
	// CreateProvider creates a record in the database for the given Provider.
	CreateProvider(prvd *happydns.Provider) error
	// UpdateProvider updates the fields of the given Provider.
	UpdateProvider(prvd *happydns.Provider) error
	// DeleteProvider removes the given Provider from the database.
	DeleteProvider(prvdid happydns.Identifier) error
	// ClearProviders deletes all Providers present in the database.
	ClearProviders() error
}
    type RestrictedService ¶
type RestrictedService struct {
	Service
	// contains filtered or unexported fields
}
    func NewRestrictedProviderUsecases ¶
func NewRestrictedProviderUsecases(cfg *happydns.Options, store ProviderStorage) *RestrictedService
func (*RestrictedService) CreateDomainOnProvider ¶
func (s *RestrictedService) CreateDomainOnProvider(provider *happydns.Provider, fqdn string) error
func (*RestrictedService) CreateProvider ¶
func (s *RestrictedService) CreateProvider(user *happydns.User, msg *happydns.ProviderMessage) (*happydns.Provider, error)
func (*RestrictedService) DeleteProvider ¶
func (s *RestrictedService) DeleteProvider(user *happydns.User, providerID happydns.Identifier) error
func (*RestrictedService) UpdateProvider ¶
func (s *RestrictedService) UpdateProvider(providerID happydns.Identifier, user *happydns.User, updateFn func(*happydns.Provider)) error
func (*RestrictedService) UpdateProviderFromMessage ¶
func (s *RestrictedService) UpdateProviderFromMessage(providerID happydns.Identifier, user *happydns.User, p *happydns.ProviderMessage) error
type Service ¶
type Service struct {
	CreateProviderUC         *CreateProviderUsecase
	CreateDomainOnProviderUC *CreateDomainOnProviderUsecase
	DeleteProviderUC         *DeleteProviderUsecase
	UpdateProviderUC         *UpdateProviderUsecase
	ListHostedDomainsUC      *ListHostedDomainsUsecase
	GetProviderUC            *GetProviderUsecase
	ListProvidersUC          *ListProvidersUsecase
	RetrieveZoneUC           *ZoneRetrieverUsecase
	ZoneCorrectionsUC        *ZoneCorrectorUsecase
	DomainExistenceUC        *DomainExistenceUsecase
}
    func NewProviderUsecases ¶
func NewProviderUsecases(store ProviderStorage) *Service
func (*Service) CreateDomainOnProvider ¶
func (*Service) CreateProvider ¶
func (*Service) DeleteProvider ¶
func (*Service) GetUserProvider ¶
func (*Service) GetUserProviderMeta ¶
func (*Service) ListHostedDomains ¶
func (*Service) ListUserProviders ¶
func (*Service) ListZoneCorrections ¶
func (*Service) RetrieveZone ¶
func (*Service) TestDomainExistence ¶
func (*Service) UpdateProvider ¶
type UpdateProviderUsecase ¶
type UpdateProviderUsecase struct {
	// contains filtered or unexported fields
}
    func NewUpdateProviderUsecase ¶
func NewUpdateProviderUsecase(store ProviderStorage, getProvider *GetProviderUsecase, checker ProviderValidator) *UpdateProviderUsecase
func (*UpdateProviderUsecase) FromMessage ¶
func (uc *UpdateProviderUsecase) FromMessage(providerid happydns.Identifier, user *happydns.User, p *happydns.ProviderMessage) error
func (*UpdateProviderUsecase) Update ¶
func (uc *UpdateProviderUsecase) Update(providerid happydns.Identifier, user *happydns.User, upd func(*happydns.Provider)) error
type ZoneCorrectorUsecase ¶
type ZoneCorrectorUsecase struct{}
    func NewZoneCorrectorUsecase ¶
func NewZoneCorrectorUsecase() *ZoneCorrectorUsecase
func (*ZoneCorrectorUsecase) List ¶
func (uc *ZoneCorrectorUsecase) List(provider *happydns.Provider, domain *happydns.Domain, records []happydns.Record) ([]*happydns.Correction, error)
type ZoneRetrieverUsecase ¶
type ZoneRetrieverUsecase struct{}
    func NewZoneRetrieverUsecase ¶
func NewZoneRetrieverUsecase() *ZoneRetrieverUsecase
func (*ZoneRetrieverUsecase) RetrieveCurrentZone ¶
func (uc *ZoneRetrieverUsecase) RetrieveCurrentZone(provider *happydns.Provider, domain string) ([]happydns.Record, error)
      
      Source Files
      ¶
    
- create_domain.go
 - create_provider.go
 - delete_provider.go
 - factory.go
 - get_provider.go
 - list_hosted_domains.go
 - list_providers.go
 - parse_provider.go
 - provider_storage.go
 - retrieve_zone.go
 - test_domain_existence.go
 - update_provider.go
 - validator.go
 - zone_correction.go
 
 Click to show internal directories. 
   Click to hide internal directories.