ettp

package
v1.0.21 Latest Latest
Warning

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

Go to latest
Published: Mar 21, 2026 License: MIT Imports: 31 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MSG_ROUTE_NOT_FOUND = "Route not found"
	MSG_ROUTE_DELETE    = "Route deleted"
	MSG_RESET_ROUTES    = "Reset server routes"
	MSG_PACKAGE_DELETE  = "Package deleted"
)
View Source
const (
	GET     = "GET"
	POST    = "POST"
	PUT     = "PUT"
	PATCH   = "PATCH"
	DELETE  = "DELETE"
	HEAD    = "HEAD"
	OPTIONS = "OPTIONS"
	RPC     = "RPC"
)
View Source
const (
	EVENT_RESOLVER_STATUS = "event:resolver:status"
)
View Source
const (
	ResoluteKey request.ContextKey = "resolute"
)
View Source
const (
	Version = "v0.0.2"
)

Variables

This section is empty.

Functions

func CorsAllowAll

func CorsAllowAll(allowedOrigins []string) *cors.Cors

Types

type Config

type Config struct {
	Port         int
	Parent       string
	ReadTimeout  time.Duration
	WriteTimeout time.Duration
	IdleTimeout  time.Duration
	AllowOrigin  []string
	TLS          bool
	CertFile     string
	KeyFile      string
	Debug        bool
}

type Package

type Package struct {
	Name    string    `json:"name"`
	Solvers []*Solver `json:"solvers"`
	// contains filtered or unexported fields
}

func (*Package) ToJson

func (p *Package) ToJson() et.Json

* * ToJson * @return et.Json *

type Resolver

type Resolver struct {
	*http.Request
	CreatedAt time.Time `json:"created_at"`
	UpdatedAt time.Time `json:"updated_at"`
	Status    Status    `json:"status"`
	Id        string    `json:"id"`
	URL       string    `json:"url"`
	// contains filtered or unexported fields
}

func (*Resolver) ToJson

func (r *Resolver) ToJson() et.Json

* * ToJson * @return et.Json *

type Router

type Router struct {
	Router map[string]*Router `json:"router"`
	Tag    string             `json:"tag"`
	Param  string             `json:"param"`
	Solver *Solver            `json:"solver"`
}

func (*Router) ToJson

func (s *Router) ToJson() et.Json

* * ToJson * @return et.Json *

type Server

type Server struct {
	CreatedAt time.Time          `json:"created_at"`
	Name      string             `json:"name"`
	Host      string             `json:"host"`
	Port      int                `json:"port"`
	Addr      string             `json:"addr"`
	Parent    string             `json:"parent"`
	Solvers   map[string]*Solver `json:"solvers"`
	Version   string             `json:"version"`
	// contains filtered or unexported fields
}

func New

func New(name string, config *Config) *Server

* * New * @param name string, config *Config * @return *Server *

func NewServer

func NewServer(name string, config *Config) *Server

* * NewServer * @param name string * @return *Server *

func (*Server) Authenticator

func (s *Server) Authenticator(middleware func(http.Handler) http.Handler) *Server

* * Authenticator * @param middleware func(http.HandlerFunc) http.HandlerFunc * @return *Server *

func (*Server) Close

func (s *Server) Close()

* * Close * @return error *

func (*Server) FindResolver

func (s *Server) FindResolver(r *http.Request) (*Resolver, error)

* * FindResolver * @param r *http.Request * @return *Request, error *

func (*Server) HTTPError

func (s *Server) HTTPError(resolver *Resolver, metric *middleware.Metrics, w http.ResponseWriter, r *http.Request, status int, message string)

* * StatusResolver * @param r *Resolver, status Status *

func (*Server) HTTPSuccess

func (s *Server) HTTPSuccess(resolver *Resolver, metric *middleware.Metrics, rw *middleware.ResponseWriterWrapper)

* * HTTPSuccess * @param resolver *Resolver, metric *middleware.Metrics, rw *middleware.ResponseWriterWrapper *

func (*Server) Private

func (s *Server) Private(method, path string, handlerFn http.HandlerFunc, packageName string) (*Solver, error)

* * Private * @param method, path string, handlerFn http.HandlerFunc, packageName string *

func (*Server) Public

func (s *Server) Public(method, path string, handlerFn http.HandlerFunc, packageName string) (*Solver, error)

* * Public * @param method, path string, handlerFn http.HandlerFunc, packageName string *

func (*Server) RemoveRouterById

func (s *Server) RemoveRouterById(id string, save bool) error

* * RemoveRouterById * @param id string * @return error *

func (*Server) Reset

func (s *Server) Reset()

* * Reset * @return error *

func (*Server) Save

func (s *Server) Save() error

* * Save * @return error *

func (*Server) SetRouter

func (s *Server) SetRouter(method, path, resolve string, typeHeader int, header et.Json, excludeHeader []string, version int, private bool, packageName string, saved bool) (*Solver, error)

* * SetRouter * @param method, path, resolve string, header et.Json, excludeHeader []string, version int, private bool, packageName string, saved bool * @return *Solver, error *

func (*Server) Start

func (s *Server) Start()

* * Start * @return error *

func (*Server) ToJson

func (s *Server) ToJson() et.Json

* * ToJson * @return et.Json *

func (*Server) Use

func (s *Server) Use(middlewares ...func(http.Handler) http.Handler)

* * Use * @param middlewares ...func(http.Handler) http.Handler *

type Solver

type Solver struct {
	Id            string            `json:"id"`
	Kind          TypeRouter        `json:"kind"`
	Method        string            `json:"method"`
	Path          string            `json:"path"`
	Solver        string            `json:"solver"`
	TypeHeader    TpHeader          `json:"type_header"`
	Header        map[string]string `json:"header"`
	ExcludeHeader []string          `json:"exclude_header"`
	Version       int               `json:"version"`
	Private       bool              `json:"private"`
	PackageName   string            `json:"package_name"`
	// contains filtered or unexported fields
}

func (*Solver) ToJson

func (s *Solver) ToJson() et.Json

* * ToJson * @return et.Json *

type Status

type Status int
const (
	TpStatusPending Status = iota
	TpStatusFailed
	TpStatusSuccess
)

func (Status) String

func (s Status) String() string

type Storage

type Storage struct {
	Solvers map[string]*Solver
	Version string
	Key     string
}

func NewStorage

func NewStorage(s *Server) *Storage

* * NewStorage * @param s *Server * @return *Storage *

func (*Storage) Serialize added in v1.0.11

func (s *Storage) Serialize() ([]byte, error)

* * Serialize * @return ([]byte, error) *

func (*Storage) ToJson added in v1.0.11

func (s *Storage) ToJson() et.Json

* * ToJson * @return et.Json *

type TpHeader

type TpHeader int
const (
	TpKeepHeader TpHeader = iota
	TpJoinHeader
	TpReplaceHeader
)

func (TpHeader) String

func (t TpHeader) String() string

* * String * @return string *

type TypeRouter

type TypeRouter int
const (
	TpHandler TypeRouter = iota + 1
	TpApiRest
)

func StringToTypeRouter

func StringToTypeRouter(s string) TypeRouter

func (TypeRouter) String

func (t TypeRouter) String() string

Jump to

Keyboard shortcuts

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