Documentation ¶
Index ¶
- Variables
- type Builder
- func (b *Builder) Container() *dig.Container
- func (b *Builder) WithAuditor(auditor audit.Auditor) *Builder
- func (b *Builder) WithConfig(c *config.Configuration) *Builder
- func (b *Builder) WithCrypto(crypto *cryptoprov.Crypto) *Builder
- func (b *Builder) WithDiscovery(d Discovery) *Builder
- func (b *Builder) WithJwtParser(j jwt.Parser) *Builder
- func (b *Builder) WithJwtSigner(j jwt.Signer) *Builder
- func (b *Builder) WithOauth2Client(o *oauth2client.Provider) *Builder
- func (b *Builder) WithOrgsDb(d orgsdb.OrgsDb) *Builder
- type CloseRegistrator
- type ContainerFactory
- func (f *ContainerFactory) CreateContainerWithDependencies() (*dig.Container, error)
- func (f *ContainerFactory) WithACMEProvider(p ProvideAcmeFn) *ContainerFactory
- func (f *ContainerFactory) WithAuditorProvider(p ProvideAuditorFn) *ContainerFactory
- func (f *ContainerFactory) WithAuthorityProvider(p ProvideAuthorityFn) *ContainerFactory
- func (f *ContainerFactory) WithCaDbProvider(p ProvideCaDbFn) *ContainerFactory
- func (f *ContainerFactory) WithClientFactoryProvider(p ProvideClientFactoryFn) *ContainerFactory
- func (f *ContainerFactory) WithConfigurationProvider(p ProvideConfigurationFn) *ContainerFactory
- func (f *ContainerFactory) WithCryptoProvider(p ProvideCryptoFn) *ContainerFactory
- func (f *ContainerFactory) WithDiscoveryProvider(p ProvideDiscoveryFn) *ContainerFactory
- func (f *ContainerFactory) WithEmailClientsProvider(p ProvideEmailClientsFn) *ContainerFactory
- func (f *ContainerFactory) WithJwtProvider(p ProvideJwtFn) *ContainerFactory
- func (f *ContainerFactory) WithOAuthClientsProvider(p ProvideOAuthClientsFn) *ContainerFactory
- func (f *ContainerFactory) WithOrgsDbProvider(p ProvideOrgsDbFn) *ContainerFactory
- func (f *ContainerFactory) WithPaymentProvider(p ProvidePaymentProviderFn) *ContainerFactory
- func (f *ContainerFactory) WithPublisher(p ProvidePublisherFn) *ContainerFactory
- func (f *ContainerFactory) WithSchedulerProvider(p ProvideSchedulerFn) *ContainerFactory
- type ContainerFactoryFn
- type Discovery
- type ProvideAcmeFn
- type ProvideAuditorFn
- type ProvideAuthorityFn
- type ProvideCaDbFn
- type ProvideClientFactoryFn
- type ProvideConfigurationFn
- type ProvideCryptoFn
- type ProvideDiscoveryFn
- type ProvideEmailClientsFn
- type ProvideFCCAPIClientFn
- type ProvideJwtFn
- type ProvideOAuthClientsFn
- type ProvideOrgsDbFn
- type ProvidePaymentProviderFn
- type ProvidePublisherFn
- type ProvideSchedulerFn
Constants ¶
This section is empty.
Variables ¶
var IDGenerator = sonyflake.NewSonyflake(sonyflake.Settings{ StartTime: time.Date(2020, 1, 1, 0, 0, 0, 0, time.UTC), })
IDGenerator for the app
Functions ¶
This section is empty.
Types ¶
type Builder ¶
type Builder struct {
// contains filtered or unexported fields
}
Builder helps to build container
func (*Builder) WithAuditor ¶
WithAuditor sets Auditor
func (*Builder) WithConfig ¶
func (b *Builder) WithConfig(c *config.Configuration) *Builder
WithConfig sets config.Configuration
func (*Builder) WithCrypto ¶
func (b *Builder) WithCrypto(crypto *cryptoprov.Crypto) *Builder
WithCrypto sets Crypto
func (*Builder) WithDiscovery ¶
WithDiscovery sets Discover
func (*Builder) WithJwtParser ¶
WithJwtParser sets JWT Parser
func (*Builder) WithJwtSigner ¶
WithJwtSigner sets JWT Signer
func (*Builder) WithOauth2Client ¶
func (b *Builder) WithOauth2Client(o *oauth2client.Provider) *Builder
WithOauth2Client sets oauth2client.Provider
type CloseRegistrator ¶
CloseRegistrator provides interface to release resources on close
type ContainerFactory ¶
type ContainerFactory struct {
// contains filtered or unexported fields
}
ContainerFactory is default implementation
func NewContainerFactory ¶
func NewContainerFactory(closer CloseRegistrator) *ContainerFactory
NewContainerFactory returns an instance of ContainerFactory
func (*ContainerFactory) CreateContainerWithDependencies ¶
func (f *ContainerFactory) CreateContainerWithDependencies() (*dig.Container, error)
CreateContainerWithDependencies returns an instance of Container
func (*ContainerFactory) WithACMEProvider ¶
func (f *ContainerFactory) WithACMEProvider(p ProvideAcmeFn) *ContainerFactory
WithACMEProvider allows to specify ACME provider
func (*ContainerFactory) WithAuditorProvider ¶
func (f *ContainerFactory) WithAuditorProvider(p ProvideAuditorFn) *ContainerFactory
WithAuditorProvider allows to specify custom Auditor
func (*ContainerFactory) WithAuthorityProvider ¶
func (f *ContainerFactory) WithAuthorityProvider(p ProvideAuthorityFn) *ContainerFactory
WithAuthorityProvider allows to specify custom Authority
func (*ContainerFactory) WithCaDbProvider ¶
func (f *ContainerFactory) WithCaDbProvider(p ProvideCaDbFn) *ContainerFactory
WithCaDbProvider allows to specify custom DB provider
func (*ContainerFactory) WithClientFactoryProvider ¶
func (f *ContainerFactory) WithClientFactoryProvider(p ProvideClientFactoryFn) *ContainerFactory
WithClientFactoryProvider allows to specify custom client.Factory provider
func (*ContainerFactory) WithConfigurationProvider ¶
func (f *ContainerFactory) WithConfigurationProvider(p ProvideConfigurationFn) *ContainerFactory
WithConfigurationProvider allows to specify configuration
func (*ContainerFactory) WithCryptoProvider ¶
func (f *ContainerFactory) WithCryptoProvider(p ProvideCryptoFn) *ContainerFactory
WithCryptoProvider allows to specify custom Crypto loader
func (*ContainerFactory) WithDiscoveryProvider ¶
func (f *ContainerFactory) WithDiscoveryProvider(p ProvideDiscoveryFn) *ContainerFactory
WithDiscoveryProvider allows to specify Discovery
func (*ContainerFactory) WithEmailClientsProvider ¶
func (f *ContainerFactory) WithEmailClientsProvider(p ProvideEmailClientsFn) *ContainerFactory
WithEmailClientsProvider allows to specify custom emailclients provider
func (*ContainerFactory) WithJwtProvider ¶
func (f *ContainerFactory) WithJwtProvider(p ProvideJwtFn) *ContainerFactory
WithJwtProvider allows to specify custom JWT provider
func (*ContainerFactory) WithOAuthClientsProvider ¶
func (f *ContainerFactory) WithOAuthClientsProvider(p ProvideOAuthClientsFn) *ContainerFactory
WithOAuthClientsProvider allows to specify custom OAuth clients provider
func (*ContainerFactory) WithOrgsDbProvider ¶
func (f *ContainerFactory) WithOrgsDbProvider(p ProvideOrgsDbFn) *ContainerFactory
WithOrgsDbProvider allows to specify custom DB provider
func (*ContainerFactory) WithPaymentProvider ¶
func (f *ContainerFactory) WithPaymentProvider(p ProvidePaymentProviderFn) *ContainerFactory
WithPaymentProvider allows to specify payment provider
func (*ContainerFactory) WithPublisher ¶
func (f *ContainerFactory) WithPublisher(p ProvidePublisherFn) *ContainerFactory
WithPublisher allows to specify Publisher provider
func (*ContainerFactory) WithSchedulerProvider ¶
func (f *ContainerFactory) WithSchedulerProvider(p ProvideSchedulerFn) *ContainerFactory
WithSchedulerProvider allows to specify custom Scheduler
type ContainerFactoryFn ¶
ContainerFactoryFn defines an app container factory interface
type Discovery ¶
type Discovery interface { Register(server string, service interface{}) error Find(v interface{}) error ForEach(v interface{}, f func(typ string) error) error }
Discovery provides service discovery interface
type ProvideAcmeFn ¶
type ProvideAcmeFn func(cfg *config.Configuration) (acme.Controller, error)
ProvideAcmeFn defines ACMA provider
type ProvideAuditorFn ¶
type ProvideAuditorFn func(cfg *config.Configuration, r CloseRegistrator) (audit.Auditor, error)
ProvideAuditorFn defines Auditor provider
type ProvideAuthorityFn ¶
type ProvideAuthorityFn func(cfg *config.Configuration, crypto *cryptoprov.Crypto) (*authority.Authority, error)
ProvideAuthorityFn defines Crypto provider
type ProvideCaDbFn ¶
type ProvideCaDbFn func(cfg *config.Configuration) (cadb.CaDb, cadb.CaReadonlyDb, error)
ProvideCaDbFn defines CA DB provider
type ProvideClientFactoryFn ¶
type ProvideClientFactoryFn func(cfg *config.Configuration) (client.Factory, error)
ProvideClientFactoryFn defines client.Facroty provider
type ProvideConfigurationFn ¶
type ProvideConfigurationFn func() (*config.Configuration, error)
ProvideConfigurationFn defines Configuration provider
type ProvideCryptoFn ¶
type ProvideCryptoFn func(cfg *config.Configuration) (*cryptoprov.Crypto, error)
ProvideCryptoFn defines Crypto provider
type ProvideDiscoveryFn ¶
ProvideDiscoveryFn defines Discovery provider
type ProvideEmailClientsFn ¶
type ProvideEmailClientsFn func(cfg *config.Configuration) (*email.Provider, error)
ProvideEmailClientsFn defines email clients provider
type ProvideFCCAPIClientFn ¶
ProvideFCCAPIClientFn defines FCC API Client provider
type ProvideJwtFn ¶
ProvideJwtFn defines JWT provider
type ProvideOAuthClientsFn ¶
type ProvideOAuthClientsFn func(cfg *config.Configuration) (*oauth2client.Provider, error)
ProvideOAuthClientsFn defines OAuth clients provider
type ProvideOrgsDbFn ¶
type ProvideOrgsDbFn func(cfg *config.Configuration) (orgsdb.OrgsDb, orgsdb.OrgsReadOnlyDb, error)
ProvideOrgsDbFn defines Orgs DB provider
type ProvidePaymentProviderFn ¶
type ProvidePaymentProviderFn func(cfg *config.Configuration) (payment.Provider, error)
ProvidePaymentProviderFn defines email clients provider
type ProvidePublisherFn ¶
type ProvidePublisherFn func(cfg *config.Configuration) (certpublisher.Publisher, error)
ProvidePublisherFn defines Publisher provider
type ProvideSchedulerFn ¶
ProvideSchedulerFn defines Scheduler provider