featurer/server/internal/services/core/http.go
Stanislav N. aka pztrn 2ecfe7f8ac
Some checks failed
Linting and tests / Linting (push) Has been cancelled
Linting and tests / Tests (push) Has been cancelled
Basic HTTP servers (#2) and various improvements over docs.
2024-10-12 23:07:49 +05:00

38 lines
1.7 KiB
Go
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

package core
import (
"errors"
"github.com/gin-gonic/gin"
)
const (
// ServerNameAPI is a HTTP server name for API.
ServerNameAPI = "api"
// ServerNameCMS is a HTTP server name for CMS.
ServerNameCMS = "cms"
// ServiceNameHTTP is a name for service responsible for HTTP servers controlloing.
ServiceNameHTTP = "http servers"
)
var (
// ErrHTTP указывает на ошибку в сервисе управления HTTP серверами.
ErrHTTP = errors.New("HTTP server")
// ErrHTTPAssetsBundleAlreadyRegistered говорит о попытке зарегистрировать бандл с ассетами с уже использованным
// именем.
ErrHTTPAssetsBundleAlreadyRegistered = errors.New("assets bundle already registered")
// ErrHTTPCMSAddressInvalid говорит о неправильно заданном адресе для прослушки, который был получен из
// переменных окружения.
ErrHTTPCMSAddressInvalid = errors.New("CMS server address invalid")
// ErrHTTPServerNotFound возникает при попытке получить неизвестный HTTP сервер.
ErrHTTPServerNotFound = errors.New("HTTP server not found")
// ErrHTTPServiceIsInvalid говорит о неправильной имплементации сервиса управления HTTP серверами.
ErrHTTPServiceIsInvalid = errors.New("service implementation is invalid")
)
// HTTP это интерфейс для сервиса управления HTTP серверами.
type HTTP interface {
RegisterHandler(serverName, method, path string, handler func(*gin.Context)) error
ReplyJSON(ctx *gin.Context, statusCode int, data interface{})
}