goatapp

package
v0.0.0-...-a532a67 Latest Latest
Warning

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

Go to latest
Published: Apr 16, 2024 License: LGPL-3.0 Imports: 22 Imported by: 2

Documentation

Index

Constants

View Source
const (
	// ConfigFilePath is path to main config file
	ConfigFilePath = "/config/config_{{env}}.json"
	// CWDPath is default Current Working Directory (CWD) path
	CWDPath = "./"
)

Variables

View Source
var (
	ErrAppNameIsRequired = fmt.Errorf("application name is required")
)
View Source
var (
	NilVersion = NewVersion(0, 0, 0, "-dev")
)

Functions

func NewGoatApp

func NewGoatApp(params Params) (a app.App, err error)

NewGoatApp create new app instance

func NewHealthCheckers

func NewHealthCheckers() (healths app.AppHealthCheckers)

NewHealthChecker create new instance of app.HealthChecker

func NewVersion

func NewVersion(major int, minor int, path int, suffix string) app.Version

Types

type Filespaces

type Filespaces struct {
	CWD  filesystem.Filespace
	Home filesystem.Filespace
	Root filesystem.Filespace
	Tmp  filesystem.Filespace
}

type GoatApp

type GoatApp struct {
	app.AppHealthCheckers
	// contains filtered or unexported fields
}

GoatApp is base app template

func (*GoatApp) Arguments

func (gapp *GoatApp) Arguments() []string

Arguments return application arguments

func (*GoatApp) DependencyProvider

func (gapp *GoatApp) DependencyProvider() app.DependencyProvider

DependencyProvider return dependency provider

func (*GoatApp) Filespaces

func (gapp *GoatApp) Filespaces() app.AppFilespaces

Filespaces return filespaces

func (*GoatApp) IOContext

func (gapp *GoatApp) IOContext() app.IOContext

IOContext return main IOContext fo application

func (*GoatApp) InjectTo

func (gapp *GoatApp) InjectTo(obj interface{}) error

InjectTo inject application dependencies, arguments, config and filespaces to

func (*GoatApp) Name

func (gapp *GoatApp) Name() string

Name return app name

func (*GoatApp) Scopes

func (gapp *GoatApp) Scopes() app.AppScopes

AppScope return app scope

func (*GoatApp) Terminal

func (gapp *GoatApp) Terminal() app.TerminalManager

Terminal return app terminal manager

func (*GoatApp) Version

func (gapp *GoatApp) Version() app.Version

Version return app version

type HealthCheckers

type HealthCheckers struct {
	// contains filtered or unexported fields
}

HealthCheckers is implements app.HealthCheckers

func (*HealthCheckers) HealthChecker

func (healths *HealthCheckers) HealthChecker(name string) (health app.HealthCheckerCallback)

HealthChecker return a health by name

func (*HealthCheckers) HealthCheckerNames

func (healths *HealthCheckers) HealthCheckerNames() (keys []string)

HealthChecker return health's names

func (*HealthCheckers) SetHealthChecker

func (healths *HealthCheckers) SetHealthChecker(name string, health app.HealthCheckerCallback) (err error)

SetHealthChecker set new comamnd

type IO

type IO struct {
	In  app.Input
	Out app.Output
	Err app.Output
}

type MockupApp

type MockupApp struct {
	app.App
	// contains filtered or unexported fields
}

MockupApp is default mockup applicationo (used by test code)

func NewMockupApp

func NewMockupApp(params Params) (mockup *MockupApp, err error)

NewMockupApp create new mockup application

func (*MockupApp) ErrorBuffer

func (mapp *MockupApp) ErrorBuffer() *bytes.Buffer

ErrorBuffer return error output buffer

func (*MockupApp) OutputBuffer

func (mapp *MockupApp) OutputBuffer() *bytes.Buffer

OutputBuffer return output buffer

type Params

type Params struct {
	Arguments      []string
	DP             app.DependencyProvider
	Env            string
	Filespaces     Filespaces
	HealthCheckers app.AppHealthCheckers
	IO             IO
	Name           string
	Scopes         Scopes
	Terminal       app.TerminalManager
	Version        app.Version
}

Params define new app

type Scopes

type Scopes struct {
	App app.Scope
	// contains filtered or unexported fields
}

type Version

type Version struct {
	// contains filtered or unexported fields
}

func (Version) Major

func (v Version) Major() int

func (Version) Minor

func (v Version) Minor() int

func (Version) Path

func (v Version) Path() int

func (Version) String

func (v Version) String() string

func (Version) Suffix

func (v Version) Suffix() string

Jump to

Keyboard shortcuts

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