Documentation
¶
Index ¶
- func NotFoundHandler(ctx *CTX) (err error)
- type CTX
- func (ctx *CTX) AddParams(params map[string]string)
- func (ctx *CTX) Code(code int) (err error)
- func (ctx *CTX) GetHeader(header string) string
- func (ctx *CTX) GetParam(i string) string
- func (ctx *CTX) GetParams() map[string]string
- func (ctx *CTX) HTTPError(code int, message string) (err error)
- func (ctx *CTX) HasParam(param string) bool
- func (ctx *CTX) JSON(code int, i interface{}) (err error)
- func (ctx *CTX) Redirect(code int, uri string) (err error)
- func (ctx *CTX) SetHeader(k string, v string)
- func (ctx *CTX) String(code int, s string) (err error)
- type Configuration
- type Group
- func (g *Group) DELETE(endpoint string, handler Handler, middleware ...MiddlewareHandler)
- func (g *Group) GET(endpoint string, handler Handler, middleware ...MiddlewareHandler)
- func (g *Group) Middleware(m MiddlewareHandler)
- func (g *Group) PATCH(endpoint string, handler Handler, middleware ...MiddlewareHandler)
- func (g *Group) POST(endpoint string, handler Handler, middleware ...MiddlewareHandler)
- func (g *Group) PUT(endpoint string, handler Handler, middleware ...MiddlewareHandler)
- type Handler
- type Husky
- func (husky *Husky) After(middleware ...MiddlewareHandler)
- func (husky *Husky) Before(middleware ...MiddlewareHandler)
- func (husky *Husky) DELETE(endpoint string, handler Handler, middleware ...MiddlewareHandler)
- func (husky *Husky) GET(endpoint string, handler Handler, middleware ...MiddlewareHandler)
- func (husky *Husky) GetContext() *CTX
- func (husky *Husky) Group(prefix string, middleware ...MiddlewareHandler) *Group
- func (husky *Husky) Middlware(middleware MiddlewareHandler)
- func (husky *Husky) NewContext(w http.ResponseWriter, r *http.Request) *CTX
- func (husky *Husky) OPTIONS(endpoint string, handler Handler, middleware ...MiddlewareHandler)
- func (husky *Husky) PATCH(endpoint string, handler Handler, middleware ...MiddlewareHandler)
- func (husky *Husky) POST(endpoint string, handler Handler, middleware ...MiddlewareHandler)
- func (husky *Husky) PUT(endpoint string, handler Handler, middleware ...MiddlewareHandler)
- func (husky *Husky) ServeHTTP(w http.ResponseWriter, r *http.Request)
- func (husky *Husky) Start()
- type MiddlewareHandler
- type Response
- type Route
- type Router
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NotFoundHandler ¶
NotFoundHandler default 404 handler for not found routes
Types ¶
type CTX ¶
CTX (Context) struct
type Configuration ¶
type Configuration struct{}
Configuration handles a Husky service's configuration
func (*Configuration) Load ¶
func (configuration *Configuration) Load() map[string]string
Load reads and returns a .env file as a map
type Group ¶
type Group struct {
Husky *Husky
MiddlewareHandlers []MiddlewareHandler
Prefix string
}
Group holds information about the route group
func (*Group) DELETE ¶
func (g *Group) DELETE(endpoint string, handler Handler, middleware ...MiddlewareHandler)
DELETE adds a HTTP DELETE method to the group
func (*Group) GET ¶
func (g *Group) GET(endpoint string, handler Handler, middleware ...MiddlewareHandler)
GET adds a HTTP Get method to the group
func (*Group) Middleware ¶
func (g *Group) Middleware(m MiddlewareHandler)
Middleware adds a middleware handler to be executed after route is found but before the handler is executed
func (*Group) PATCH ¶
func (g *Group) PATCH(endpoint string, handler Handler, middleware ...MiddlewareHandler)
PATCH adds a HTTP PATCH method to the group
type Husky ¶
type Husky struct {
AfterMiddleware []MiddlewareHandler
BeforeMiddleware []MiddlewareHandler
Config Configuration
Context *CTX
Middleware []MiddlewareHandler
Router *Router
}
Husky struct holds router and context for framework
func (*Husky) After ¶
func (husky *Husky) After(middleware ...MiddlewareHandler)
After adds a handler to be executed after the route handler Executed if route is found or not
func (*Husky) Before ¶
func (husky *Husky) Before(middleware ...MiddlewareHandler)
Before adds a handler to be executed before the route handler Executed if route is found or not
func (*Husky) DELETE ¶
func (husky *Husky) DELETE(endpoint string, handler Handler, middleware ...MiddlewareHandler)
DELETE adds a HTTP DELETE route to router
func (*Husky) GET ¶
func (husky *Husky) GET(endpoint string, handler Handler, middleware ...MiddlewareHandler)
GET adds a HTTP GET route to router
func (*Husky) Group ¶
func (husky *Husky) Group(prefix string, middleware ...MiddlewareHandler) *Group
Group creates a route group with a common prefix
func (*Husky) Middlware ¶
func (husky *Husky) Middlware(middleware MiddlewareHandler)
Middlware adds a handler to be executed before the route handler
func (*Husky) NewContext ¶
NewContext creates new Context struct
func (*Husky) OPTIONS ¶
func (husky *Husky) OPTIONS(endpoint string, handler Handler, middleware ...MiddlewareHandler)
OPTIONS adds a HTTP OPTIONS route to router
func (*Husky) PATCH ¶
func (husky *Husky) PATCH(endpoint string, handler Handler, middleware ...MiddlewareHandler)
PATCH adds a HTTP PATCH route to router
func (*Husky) POST ¶
func (husky *Husky) POST(endpoint string, handler Handler, middleware ...MiddlewareHandler)
POST adds a HTTP POST route to router
type MiddlewareHandler ¶
MiddlewareHandler defines a function to process middleware
type Response ¶
type Response struct {
Writer http.ResponseWriter
Status int
Size int64
Committed bool
}
Response standard Husky response struct
func NewResponse ¶
func NewResponse(w http.ResponseWriter) (r *Response)
NewResponse creates new Husky Response struct
func (*Response) WriteHeader ¶
WriteHeader writes a header to the response writer
type Route ¶
type Route struct {
Handler Handler // main handler
Endpoint string // endpoint for route
Middleware []MiddlewareHandler // array of middleware handlers
Verb string // http verb
}
Route holds all information about a defined route
type Router ¶
Router holds all defined routes map[string]map[string] = [VERB][PATTERN] = [GET][/users]
func (*Router) Add ¶
func (router *Router) Add(verb string, endpoint string, handler Handler, middleware []MiddlewareHandler)
Add will add a new route to the Router.Routes map
