Versions in this module Expand all Collapse all v1 v1.1.0 Mar 8, 2023 Changes in this version + func Recover() type Application + func (app *Application) SetLogger(logger Logger) + type Logger interface + Fatal func(v ...interface{}) + Fatalf func(format string, v ...interface{}) + Print func(v ...interface{}) + Printf func(format string, v ...interface{}) + Println func(v ...interface{}) v1.0.0 Mar 8, 2023 Changes in this version + var ErrInitConstructorPanic = errors.New("panic in constructor") + var ErrInitContextDeadline = errors.New("deadline context") + var ErrInitFailure = errors.New("initialization error") + var ErrInitTimeout = errors.New("initialization timeout") + var ErrRunContextDeadline = errors.New("running application stopped dua deadline context") + var ErrRunPanic = errors.New("running application stopped dua panic") + var ErrRunService = errors.New("running application stopped dua service error") + var ErrTerminateTimeout = errors.New("terminate attempt failed due to timeout") + var ErrWrongState = errors.New("the method called does not match the state") + type Application struct + func New(config *Config) *Application + func (app *Application) Init(ctx context.Context, signals ...os.Signal) (err error) + func (app *Application) RegistrationResource(resources ...io.Closer) (err error) + func (app *Application) RegistrationService(constructors ...Constructor) (err error) + func (app *Application) Run(ctx context.Context) (err error) + func (app *Application) Shutdown() (err error) + type Config struct + EnableDebugStack bool + InitialisationTimeout time.Duration + TerminationTimeout time.Duration + type Constructor func(ctx context.Context, app *Application) (Service, error) + type Service interface + Serve func() error + type State int + const StateInit + const StateOff + const StateReady + const StateRunning + const StateShutdown + func (s State) String() string