-
Notifications
You must be signed in to change notification settings - Fork 0
/
types.go
31 lines (25 loc) · 1.56 KB
/
types.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// Package application
package application
import kitModuleCfg "github.com/webnice/kit/v3/module/cfg"
const (
tplApplicationBegin = "Приложение начало инициализацию."
tplApplicationFinalize = "Приложение начало завершение компонентов."
tplApplicationEnd = "Приложение завершило работу."
tplIsAccumulatedError = "На уровне выполнения приложения %d, накопились ошибки."
)
// Единичный экземпляр объекта пакета.
var singleton *impl
// Interface is an interface of package.
type Interface interface {
// Main Точка запуска, выполнения и завершения приложения.
// Функция возвращает код ошибки, который передаётся в операционную систему и может быть считан запускающим
// приложением, скриптом или операционной системой.
Main() (code uint8, err error)
// Cfg Возвращает интерфейс конфигурации приложения.
Cfg() kitModuleCfg.Interface
}
// Объект сущности, интерфейс Interface.
type impl struct {
finalize chan struct{} // Канал ожидания окончания выполнения Finalize() перед завершением приложения.
cfg kitModuleCfg.Interface // Интерфейс конфигурации приложения.
}