ettp

package
v1.0.9 Latest Latest
Warning

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

Go to latest
Published: Apr 24, 2025 License: MIT Imports: 33 Imported by: 0

Documentation

Index

Constants

View Source
const (
	MSG_ROUTE_ADD          = "Ruta agregada"
	MSG_ROUTE_UPDATE       = "Ruta actualizada"
	MSG_ROUTE_DELETE       = "Ruta delete"
	MSG_ROUTE_NOT_FOUND    = "Ruta no encontrada"
	MSG_ROUTE_NOT_REGISTER = "Route not registered"
	MSG_METRIC_NOT_FOUND   = "Metrics no definido"
	MSG_PACKAGE_DELETE     = "Package eliminado"
	MSG_APIGATEWAY_RESET   = "%s reseted"
	MSG_METHOD_NOT_FOUND   = "%s http method is not supported."
	MSG_TOKEN_VALID        = "Token valido"
)
View Source
const (
	MetricKey   claim.ContextKey = "metric"
	ResoluteKey claim.ContextKey = "resolute"
)
View Source
const (
	CONNECT    = "CONNECT"
	DELETE     = "DELETE"
	GET        = "GET"
	HEAD       = "HEAD"
	OPTIONS    = "OPTIONS"
	PATCH      = "PATCH"
	POST       = "POST"
	PUT        = "PUT"
	TRACE      = "TRACE"
	ROUTER_KEY = "apigateway-router"
)
View Source
const QP = "?"

Variables

View Source
var Company = envar.GetStr("", "COMPANY")
View Source
var Help = envar.GetStr("", "HELP")
View Source
var HostName, _ = os.Hostname()
View Source
var ServiceName = "Api Gateway"
View Source
var Version = envar.GetStr("0.0.1", "VERSION")
View Source
var Web = envar.GetStr("", "WEB")

Functions

func CorsAllowAll

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

Types

type MiniRoute

type MiniRoute struct {
	Id       string
	Method   string
	Path     string
	URL      string
	Header   et.Json
	TpHeader string
	Exclude  []string
	Private  bool
	Resolve  string
}

func (*MiniRoute) ToJson

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

type Package

type Package struct {
	Id     string
	Name   string
	Routes map[string]*MiniRoute
	// contains filtered or unexported fields
}

func (*Package) AddRoute

func (p *Package) AddRoute(method, path string, route *Route) *Package

* * AddRoute * @param method string * @param path string * @param route *Route * @return *Package *

func (*Package) DeleteRoute

func (p *Package) DeleteRoute(method, path string) bool

* * DeleteRoute * @param method string * @param path string * @return bool *

func (*Package) ToJson

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

* * ToJson * @return et.Json *

type Resolute

type Resolute struct {
	Server     *Server
	Method     string
	Proto      string
	Path       string
	RawQuery   string
	Query      url.Values
	RequestURI string
	RemoteAddr string
	Header     http.Header
	Body       interface{}
	Host       string
	Scheme     string
	Resolve    *Resolve
	URL        string
}

func (*Resolute) GetResolve

func (s *Resolute) GetResolve() string

func (*Resolute) ToJson

func (rs *Resolute) ToJson() et.Json

* * ToJson * @return et.Json *

func (*Resolute) ToString

func (s *Resolute) ToString() string

* * ToString * @return string *

type Resolve

type Resolve struct {
	Route   *Route
	Params  et.Json
	Resolve string
	Request *http.Request
}

func NewResolve added in v1.0.8

func NewResolve(route *Route, params et.Json, r *http.Request) *Resolve

* * NewResolve * @return *Resolve, *http.Request *

func (*Resolve) ToJson

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

* * ToJson * @return et.Json *

type Route added in v1.0.8

type Route struct {
	Id            string
	Tag           string
	TpParams      TpParams
	Kind          TypeApi
	Method        string
	Resolve       string
	Path          string
	Header        et.Json
	TpHeader      router.TpHeader
	ExcludeHeader []string
	Private       bool
	PackageName   string
	Routes        []*Route
	// contains filtered or unexported fields
}

func GetRoute added in v1.0.8

func GetRoute(id string, routes []*Route) (*Route, error)

* * GetRoute * @param tag string * @param routes []*Route * @return []*Route *

func (*Route) Connect added in v1.0.8

func (r *Route) Connect(path string, handlerFn http.HandlerFunc, packageName string)

* * Connect * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Route) Delete added in v1.0.8

func (r *Route) Delete(path string, handlerFn http.HandlerFunc, packageName string)

* * Delete * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Route) Get added in v1.0.8

func (r *Route) Get(path string, handlerFn http.HandlerFunc, packageName string)

* * Get * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Route) Head added in v1.0.8

func (r *Route) Head(path string, handlerFn http.HandlerFunc, packageName string)

* * Head * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Route) Options added in v1.0.8

func (r *Route) Options(path string, handlerFn http.HandlerFunc, packageName string)

* * Options * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Route) Patch added in v1.0.8

func (r *Route) Patch(path string, handlerFn http.HandlerFunc, packageName string)

* * Patch * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Route) Post added in v1.0.8

func (r *Route) Post(path string, handlerFn http.HandlerFunc, packageName string)

* * Post * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Route) Put added in v1.0.8

func (r *Route) Put(path string, handlerFn http.HandlerFunc, packageName string)

* * Put * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Route) SetPakage added in v1.0.8

func (r *Route) SetPakage(packageName string) *Route

* * addPakageRoute * @param packageName string * @param r *Route * @return *Package *

func (*Route) ToJson added in v1.0.8

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

* * ToJson * @return et.Json *

func (*Route) ToString added in v1.0.8

func (r *Route) ToString() string

* * ToString * @return string *

func (*Route) Trace added in v1.0.8

func (r *Route) Trace(path string, handlerFn http.HandlerFunc, packageName string)

* * Trace * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Route) With added in v1.0.8

func (r *Route) With(middlewares ...func(http.Handler) http.Handler) *Route

* * With * @param middlewares ...func(http.HandlerFunc) http.HandlerFunc *

type Server

type Server struct {
	Id      string
	Name    string
	Storage *file.SyncFile
	// contains filtered or unexported fields
}

func New

func New() (*Server, error)

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) AuthorizationRoute

func (s *Server) AuthorizationRoute(method, path string, h http.HandlerFunc, packageName string)

* * AuthorizationRoute *

func (*Server) Close

func (s *Server) Close()

* * Close *

func (*Server) Connect

func (s *Server) Connect(path string, handlerFn http.HandlerFunc, packageName string)

* * Connect * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Server) Delete

func (s *Server) Delete(path string, handlerFn http.HandlerFunc, packageName string)

* * Delete * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Server) DeleteRouteById

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

* * DeleteRouteById * @param id string * @return error *

func (*Server) DeleteTokenByKey

func (s *Server) DeleteTokenByKey(key string) error

* * DeleteTokenByKey * @param id string * @return error *

func (*Server) Empty

func (s *Server) Empty() []string

* * Empty *

func (*Server) Get

func (s *Server) Get(path string, handlerFn http.HandlerFunc, packageName string)

* * Get * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Server) GetPackages

func (s *Server) GetPackages(name string) et.Items

* * GetPackages * @return et.Items *

func (*Server) GetRouteById

func (s *Server) GetRouteById(id string) *Route

* * GetRouteById * @param id string * @return *Route *

func (*Server) GetRoutes

func (s *Server) GetRoutes() et.Items

* * GetRoutes * @return et.Items *

func (*Server) GetSolvers

func (s *Server) GetSolvers() et.Items

* * GetSolvers * @return et.Items *

func (*Server) GetTokenByKey

func (s *Server) GetTokenByKey(key string) (et.Item, error)

* * GetTokenByKey * @param key string * @return error *

func (*Server) HandlerValidToken

func (s *Server) HandlerValidToken(key string) (et.Item, error)

* * handlerValidToken * @param key string * @return error *

func (*Server) Head

func (s *Server) Head(path string, handlerFn http.HandlerFunc, packageName string)

* * Head * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Server) Load

func (s *Server) Load() error

* * Load * @return error *

func (*Server) LoadWS

func (s *Server) LoadWS()

* * StartWS *

func (*Server) NewRoute

func (s *Server) NewRoute() *Route

* * NewRoute * @return *Route *

func (*Server) Options

func (s *Server) Options(path string, handlerFn http.HandlerFunc, packageName string)

* * Options * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Server) Patch

func (s *Server) Patch(path string, handlerFn http.HandlerFunc, packageName string)

* * Patch * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Server) Post

func (s *Server) Post(path string, handlerFn http.HandlerFunc, packageName string)

* * Post * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Server) Private

func (s *Server) Private() *Route

* * Private * @return *Route *

func (*Server) ProtectRoute

func (s *Server) ProtectRoute(method, path string, h http.HandlerFunc, packageName string)

* * ProtectRoute * @param method string * @param path string * @param h http.HandlerFunc *

func (*Server) PublicRoute

func (s *Server) PublicRoute(method, path string, h http.HandlerFunc, packageName string)

* * PublicRoute * @param method string * @param path string * @param h http.HandlerFunc * @param packageName string *

func (*Server) Put

func (s *Server) Put(path string, handlerFn http.HandlerFunc, packageName string)

* * Put * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Server) Reset

func (s *Server) Reset()

* * Reset *

func (*Server) Save

func (s *Server) Save() error

* * Save * @return error *

func (*Server) SetAddr

func (s *Server) SetAddr(port int)

* * SetAddr * @param port int *

func (*Server) SetIdleTimeout

func (s *Server) SetIdleTimeout(value time.Duration)

* * SetIdleTimeout * @param h http.Handler *

func (*Server) SetReadTimeout

func (s *Server) SetReadTimeout(value time.Duration)

* * SetNotFoundHandler * @param h http.Handler *

func (*Server) SetResolve

func (s *Server) SetResolve(private bool, id, method, path, resolve string, header et.Json, tpHeader router.TpHeader, excludeHeader []string, packageName string, saved bool) (*Route, error)

* * SetResolve * @param private bool * @param id string * @param method string * @param path string * @param resolve string * @param header et.Json * @param tpHeader router.TpHeader * @param packageName string * @param saved bool * @return error *

func (*Server) SetWriteTimeout

func (s *Server) SetWriteTimeout(value time.Duration)

* * SetWriteTimeout * @param h http.Handler *

func (*Server) Start

func (s *Server) Start() error

* * Start *

func (*Server) Trace

func (s *Server) Trace(path string, handlerFn http.HandlerFunc, packageName string)

* * Trace * @param path string * @param handlerFn http.HandlerFunc * @param packageName string *

func (*Server) UpsetRoute

func (s *Server) UpsetRoute(id, method, path, resolve string, kind TypeApi, header et.Json, tpHeader router.TpHeader, excludeHeader []string, private bool, packageName string, save bool) *Route

* * UpsetRoute * @param id, method, path, resolve string, kind TypeApi, header et.Json, tpHeader router.TpHeader, excludeHeader []string, private bool, packageName string, save bool * @return *Route *

func (*Server) Use

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

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

func (*Server) With

func (s *Server) With(middlewares ...func(http.Handler) http.Handler) *Route

* * With * @param middlewares ...func(http.HandlerFunc) http.HandlerFunc *

type Solver

type Solver struct {
	Method        string
	Path          string
	Resolve       string
	FuncHandler   http.HandlerFunc
	Kind          TypeSolver
	Header        et.Json
	TpHeader      router.TpHeader
	ExcludeHeader []string
	Private       bool
	PackageName   string
}

type TpParams

type TpParams int
const (
	TpPathParams TpParams = iota
	TpQueryParams
	TpMatrixParams
	TpNotParams
)

func (TpParams) String

func (t TpParams) String() string

type TypeApi

type TypeApi int
const (
	TpHandler TypeApi = iota
	TpRest
)

func IntToTypeApi

func IntToTypeApi(i int) TypeApi

func (TypeApi) String

func (t TypeApi) String() string

type TypeSolver

type TypeSolver int
const (
	SolverHandler TypeSolver = iota
	SolverRest
)

func ToTypeSolver

func ToTypeSolver(i int) TypeSolver

func (TypeSolver) String

func (t TypeSolver) String() string

Jump to

Keyboard shortcuts

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