Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // Errors Справочник ошибок. Errors = func() *Error { return errSingleton } )
Functions ¶
This section is empty.
Types ¶
type Error ¶
type Error struct {
dic.Errors
// ServerByIdNotFound Конфигурация сервера с идентификатором ... не найдена.
ServerByIdNotFound dic.IError
// ServersAddedNotEqualLaunched Добавлено ... серверов, запущено ... серверов.
ServersAddedNotEqualLaunched dic.IError
// ModulePanicException Выполнение модуля ... прервано паникой: ...
ModulePanicException dic.IError
// BeforeExitWithError Функция Before() завершилась с ошибкой: ...
BeforeExitWithError dic.IError
// ServerByIdAlreadyStarted Сервер с идентификатором ... уже запущен.
ServerByIdAlreadyStarted dic.IError
// ServerByIdNotStarted Сервер с идентификатором ... не был запущен.
ServerByIdNotStarted dic.IError
}
type Essence ¶
type Essence interface {
// Debug Присвоение нового значения режима отладки.
Debug(debug bool) Essence
}
Essence Служебный публичный интерфейс.
type Interface ¶
type Interface interface {
// Gist Интерфейс служебных методов.
Gist() Essence
// Web Интерфейс веб сервера.
Web() InterfaceWeb
// Start Запуск всех зарегистрированных серверов.
// Если не зарегистрирован ни один сервер, функция возвращает ошибку.
Start() (err error)
// Stop Остановка всех зарегистрированных серверов.
// Если не зарегистрирован ни один сервер, функция возвращает ошибку.
Stop() (err error)
// Errors Справочник ошибок.
Errors() *Error
}
Interface Интерфейс пакета.
type InterfaceHandlerFunc ¶
type InterfaceHandlerFunc interface {
// InternalServerErrorGet Получение функции для обработки внутренней ошибки ВЕБ сервера.
InternalServerErrorGet() (ret http.HandlerFunc)
// InternalServerErrorSet Установка пользовательской функции для обработки внутренней ошибки ВЕБ сервера.
InternalServerErrorSet(fn http.HandlerFunc) InterfaceHandlerFunc
}
InterfaceHandlerFunc Интерфейс библиотеки ВЕБ функций Handler и HandlerFunc.
type InterfaceMiddleware ¶
type InterfaceMiddleware interface {
// IpHandler Загрузка IP адреса клиента в контекст.
IpHandler() (ret func(http.Handler) http.Handler)
// IpGetFromContext Извлечение объекта IP адреса клиента из контекста HTTP запроса.
// Возвращается nil - когда http.Handler IP адреса не был подключен в "промежуточный слой".
IpGetFromContext(rq *http.Request) net.IP
// LogHandler Запись в журнал запросов к ВЕБ серверу.
LogHandler() (ret func(http.Handler) http.Handler)
// RecoverHandler Обработчик восстановления после паники в ВЕБ сервере.
RecoverHandler() (ret func(http.Handler) http.Handler)
// WebServerControlHandler Обработчик установки в контекст запросов ВЕБ сервера, объекта контроля за ВЕБ сервером.
WebServerControlHandler(ctl *kitTypesServer.WebServerControl) (ret func(http.Handler) http.Handler)
// WebServerControlGetFromContext Извлечение объекта контроля за ВЕБ сервером из контекста HTTP запроса.
WebServerControlGetFromContext(rq *http.Request) (ret *kitTypesServer.WebServerControl, err error)
// RequestShadowInfoHandler Загрузка объекта информации о запросе и всех данных переданных в запросе в контекст.
RequestShadowInfoHandler() (ret func(http.Handler) http.Handler)
// RequestShadowInfoGetFromContext Извлечение объекта информации о запросе и всех данных переданных в запросе
// из контекста HTTP запроса.
// Возвращается nil, если объект информации не был найден в контексте HTTP запроса.
RequestShadowInfoGetFromContext(rq *http.Request) (ret *kitTypesServer.RequestShadowInfo)
// BasicAuthHandler Простая web авторизация запросов с использованием логина и пароля.
BasicAuthHandler(cfg kitTypesServer.BasicAuthConfiguration) (ret func(http.Handler) http.Handler)
// BasicAuthGetFromContext Извлечение имени пользователя из контекста проверки авторизации через простую авторизацию.
BasicAuthGetFromContext(rq *http.Request) (ret string)
}
InterfaceMiddleware Интерфейс библиотеки ВЕБ функций "промежуточного слоя".
type InterfaceWeb ¶
type InterfaceWeb interface {
// Add Добавление конфигурации веб сервера. Функцию можно вызывать многократно, для добавления
// нескольких веб серверов. Серверы не должны пересекаться по занимаемому IP и порту или другим монопольно
// выделяемым ресурсам.
// Возвращается объект добавленного веб сервера.
Add(cfg *kitTypesServer.WebConfiguration) (ret *kitTypesServer.Server)
// Reg Регистрация ресурсов сервера.
Reg(res kitTypesServer.WebResource)
// Lib Библиотека ВЕБ функций.
Lib() InterfaceWebLib
// Error Интерфейс ошибок ВЕБ сервера.
Error() InterfaceWebError
// IsStarted Функция вернёт булево значение "истина", если ВЕБ сервер уже запущен.
IsStarted(serverID string) (ret bool)
// Start Запуск ВЕБ сервера с указанным идентификатором.
Start(serverID string) (err error)
// Stop Остановка ВЕБ сервера с указанным идентификатором.
Stop(serverID string) (err error)
}
InterfaceWeb Интерфейс веб сервера.
type InterfaceWebError ¶
type InterfaceWebError interface {
// Reset Сброс всех установленных ошибок.
Reset()
// InternalServerError Установка и получение значения ошибки "Внутренняя ошибка сервера".
InternalServerError(err error) error
// MethodNotAllowed Установка и получение значения ошибки "Метод не разрешён".
MethodNotAllowed(err error) error
}
InterfaceWebError Интерфейс ошибок ВЕБ сервера.
type InterfaceWebLib ¶
type InterfaceWebLib interface {
// Handler Интерфейс библиотеки ВЕБ функций Handler и HandlerFunc.
Handler() InterfaceHandlerFunc
// Middleware Интерфейс библиотеки ВЕБ функций "промежуточного слоя" для роутинга на базе библиотеки chi.
Middleware() InterfaceMiddleware
}
InterfaceWebLib Интерфейс библиотеки функций ВЕБ сервера.
type Record ¶
type Record struct {
Address net.IP // IP адрес клиента.
Code int // Код ответа.
Method dic.IMethod // Метод запроса.
Size uint64 // Размер ответа в байтах.
Path string // Запрашиваемый путь.
LeadTime time.Duration // Время выполнения запроса.
}
Record Структура собираемых данных для логирования.
Source Files
¶
- errors.go
- gist.go
- server.go
- server_web.go
- server_web_error.go
- server_web_lib.go
- server_web_lib_internal_server_error.go
- server_web_lib_middleware.go
- server_web_lib_middleware_basic_auth.go
- server_web_lib_middleware_ip.go
- server_web_lib_middleware_log.go
- server_web_lib_middleware_recover.go
- server_web_lib_middleware_rsi.go
- server_web_lib_middleware_web_server_control.go
- server_web_prepare.go
- server_web_start_stop.go
- types.go
- types_web.go
- types_web_error.go
- types_web_lib.go
- utilities.go
Click to show internal directories.
Click to hide internal directories.