Documentation ¶
Index ¶
- func CamelToSnakeCase(str string) string
- func CheckMetadataKeyAndValueLength(limit int, metadata map[string]any) error
- func Contains[T comparable](slice []T, item T) bool
- func EnsureConfigFromEnvVars(s any) any
- func GetenvBoolOrDefault(key string, defaultValue bool) bool
- func GetenvIntOrDefault(key string, defaultValue int64) int64
- func GetenvOrDefault(key string, defaultValue string) string
- func IsNilOrEmpty(s *string) bool
- func RegexIgnoreAccents(regex string) string
- func RemoveAccents(word string) (string, error)
- func RemoveChars(str string, chars map[string]bool) string
- func RemoveSpaces(word string) string
- func SetConfigFromEnvVars(s any) error
- func ValidateCountryAddress(country string) error
- func ValidateCurrency(code string) error
- func ValidateType(t string) error
- type App
- type EntityConflictError
- type EntityNotFoundError
- type ForbiddenError
- type HTTPError
- type Launcher
- type LauncherOption
- type LocalEnvConfig
- type UnauthorizedError
- type UnprocessableOperationError
- type ValidationError
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CamelToSnakeCase ¶
CamelToSnakeCase converts a given camelCase string to snake_case format.
func CheckMetadataKeyAndValueLength ¶
CheckMetadataKeyAndValueLength check the length of key and value to a limit pass by on field limit
func Contains ¶
func Contains[T comparable](slice []T, item T) bool
Contains checks if an item is in a slice. This function uses type parameters to work with any slice type.
func EnsureConfigFromEnvVars ¶
EnsureConfigFromEnvVars ensures that an interface will be settled using SetConfigFromEnvVars anyway.
func GetenvBoolOrDefault ¶
GetenvBoolOrDefault returns the value of os.Getenv(key string) value as bool or defaultValue if error Is the environment variable (key) is not defined, it returns the given defaultValue If the environment variable (key) is not a valid bool format, it returns the given defaultValue If any error occurring during bool parse, it returns the given defaultValue.
func GetenvIntOrDefault ¶
GetenvIntOrDefault returns the value of os.Getenv(key string) value as int or defaultValue if error If the environment variable (key) is not defined, it returns the given defaultValue If the environment variable (key) is not a valid int format, it returns the given defaultValue If any error occurring during int parse, it returns the given defaultValue.
func GetenvOrDefault ¶
GetenvOrDefault encapsulate built-in os.Getenv behavior but if key is not present it returns the defaultValue.
func IsNilOrEmpty ¶
IsNilOrEmpty returns a boolean indicating if a *string is nil or empty. It's use TrimSpace so, a string " " and "" and "null" and "nil" will be considered empty
func RegexIgnoreAccents ¶ added in v1.3.0
RegexIgnoreAccents receives a regex, then, for each char it's adds the accents variations to expression Ex: Given "a" -> "aáàãâ" Ex: Given "c" -> "ç"
func RemoveAccents ¶
RemoveAccents removes accents of a given word and returns it
func RemoveChars ¶ added in v1.3.0
RemoveChars from a string
func RemoveSpaces ¶
RemoveSpaces removes spaces of a given word and returns it
func SetConfigFromEnvVars ¶
SetConfigFromEnvVars builds a struct by setting it fields values using the "var" tag Constraints: s any - must be an initialized pointer Supported types: String, Boolean, Int, Int8, Int16, Int32 and Int64.
func ValidateCountryAddress ¶ added in v1.1.0
ValidateCountryAddress validate if country in object address contains in countries list using ISO 3166-1 alpha-2
func ValidateCurrency ¶ added in v1.1.0
ValidateCurrency validate if code contains in currencies list using ISO 4217
func ValidateType ¶ added in v1.1.0
ValidateType validate type values of currencies
Types ¶
type App ¶
App represents an application that will run as a deployable component. It's an entrypoint at main.go.
type EntityConflictError ¶
type EntityConflictError struct { EntityType string Title string Message string Code string Err error }
EntityConflictError records an error indicating an entity already exists in some repository You can use it to representing a Database conflict, cache or any other repository.
func (EntityConflictError) Error ¶
func (e EntityConflictError) Error() string
Error implements the error interface.
func (EntityConflictError) Unwrap ¶
func (e EntityConflictError) Unwrap() error
Unwrap implements the error interface introduced in Go 1.13 to unwrap the internal error.
type EntityNotFoundError ¶
type EntityNotFoundError struct { EntityType string Title string Message string Code string Err error }
EntityNotFoundError records an error indicating an entity was not found in any case that caused it. You can use it to representing a Database not found, cache not found or any other repository.
func NewEntityNotFoundError ¶
func NewEntityNotFoundError(entityType string) EntityNotFoundError
NewEntityNotFoundError creates an instance of EntityNotFoundError.
func WrapEntityNotFoundError ¶
func WrapEntityNotFoundError(entityType string, err error) EntityNotFoundError
WrapEntityNotFoundError creates an instance of EntityNotFoundError.
func (EntityNotFoundError) Error ¶
func (e EntityNotFoundError) Error() string
Error implements the error interface.
func (EntityNotFoundError) Unwrap ¶
func (e EntityNotFoundError) Unwrap() error
Unwrap implements the error interface introduced in Go 1.13 to unwrap the internal error.
type ForbiddenError ¶
ForbiddenError indicates an operation that couldn't be performant because the authenticated user has no sufficient privileges.
func (ForbiddenError) Error ¶
func (e ForbiddenError) Error() string
type Launcher ¶
Launcher manages apps.
func NewLauncher ¶
func NewLauncher(opts ...LauncherOption) *Launcher
NewLauncher create an instance of Launch.
type LauncherOption ¶
type LauncherOption func(l *Launcher)
LauncherOption defines a function option for Launcher.
func RunApp ¶
func RunApp(name string, app App) LauncherOption
RunApp start all process registered before to the launcher.
func WithLogger ¶
func WithLogger(logger mlog.Logger) LauncherOption
WithLogger adds a mlog.Logger component to launcher.
type LocalEnvConfig ¶
type LocalEnvConfig struct {
Initialized bool
}
LocalEnvConfig is used to automatically call the InitLocalEnvConfig method using Dependency Injection So, if a func parameter or a struct field depends on LocalEnvConfig, when DI starts, it will call InitLocalEnvConfig as the LocalEnvConfig provider.
func InitLocalEnvConfig ¶
func InitLocalEnvConfig() *LocalEnvConfig
InitLocalEnvConfig load a .env file to set up local environment vars It's called once per application process.
type UnauthorizedError ¶
type UnauthorizedError struct {}
UnauthorizedError indicates an operation that couldn't be performant because there's no user authenticated.
func (UnauthorizedError) Error ¶
func (e UnauthorizedError) Error() string
type UnprocessableOperationError ¶
type UnprocessableOperationError struct { EntityType string Title string Message string Code string Err error }
UnprocessableOperationError indicates an operation that couldn't be performant because it's invalid.
func (UnprocessableOperationError) Error ¶
func (e UnprocessableOperationError) Error() string
type ValidationError ¶
ValidationError records an error indicating an entity was not found in any case that caused it. You can use it to representing a Database not found, cache not found or any other repository.
func (ValidationError) Error ¶
func (e ValidationError) Error() string
Error implements the error interface.
func (ValidationError) Unwrap ¶
func (e ValidationError) Unwrap() error
Unwrap implements the error interface introduced in Go 1.13 to unwrap the internal error.