fxconfig

package
v0.0.0-...-4ef61cc Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 22, 2023 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	AppEnvProd = "prod"
	AppEnvDev  = "dev"
	AppEnvTest = "test"

	DefaultAppEnv     = AppEnvProd
	DefaultAppName    = "app"
	DefaultAppVersion = "unknown"
)

Variables

View Source
var FxConfigModule = fx.Module("config",
	fx.Provide(
		NewDefaultConfigFactory,
		NewFxConfig,
	),
)

Functions

This section is empty.

Types

type AppEnv

type AppEnv int
const (
	Prod AppEnv = iota
	Dev
	Test
)

func FetchAppEnv

func FetchAppEnv(env string) AppEnv

func FetchAppEnvFromEnv

func FetchAppEnvFromEnv() AppEnv

func (AppEnv) String

func (e AppEnv) String() string

type Config

type Config struct {
	*viper.Viper
}

func NewFxConfig

func NewFxConfig(p FxConfigParam) (*Config, error)

func (*Config) AppDebug

func (c *Config) AppDebug() bool

func (*Config) AppEnv

func (c *Config) AppEnv() AppEnv

func (*Config) AppName

func (c *Config) AppName() string

func (*Config) AppVersion

func (c *Config) AppVersion() string

type ConfigFactory

type ConfigFactory interface {
	Create(options ...ConfigOption) (*Config, error)
}

func NewDefaultConfigFactory

func NewDefaultConfigFactory() ConfigFactory

type ConfigOption

type ConfigOption func(o *options)

func WithFileName

func WithFileName(n string) ConfigOption

func WithFilePaths

func WithFilePaths(p ...string) ConfigOption

type DefaultConfigFactory

type DefaultConfigFactory struct{}

func (*DefaultConfigFactory) Create

func (f *DefaultConfigFactory) Create(options ...ConfigOption) (*Config, error)

type FxConfigParam

type FxConfigParam struct {
	fx.In
	Factory ConfigFactory
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL