Documentation
¶
Index ¶
- Variables
- func AssetRegister(name string, routes AssetRoutes)
- func Config()
- func FsHtml5(fn http.FileSystem) http.FileSystem
- func HttpRegister(name string, routes HttpRoutes)
- func IdentRegister(name string, routes IdentRoutes)
- func NewRouter() *mux.Router
- func RegisterModule(name string, fn ModuleHandler)
- func Run()
- func Shutdown()
- func WriteError(w http.ResponseWriter, code int, msg string)
- func WriteObject(w http.ResponseWriter, code int, o interface{})
- func WriteText(w http.ResponseWriter, code int, o string)
- func WriteWindow(w http.ResponseWriter, code int, results, limit, offset uint64, o interface{})
- type AssetRoute
- type AssetRoutes
- type Event
- type HandlerFunc
- type HttpRoute
- type HttpRoutes
- type IdentRoute
- type IdentRoutes
- type Middleware
- type MiddlewareFunc
- type MiddlewareList
- type ModuleHandler
- type ResponseWriter
- func (w ResponseWriter) GetCode() int
- func (w ResponseWriter) Header() http.Header
- func (w ResponseWriter) Since() time.Duration
- func (w ResponseWriter) StopTime() time.Duration
- func (w ResponseWriter) Write(b []byte) (int, error)
- func (w ResponseWriter) WriteError(code int, msg string)
- func (w ResponseWriter) WriteHeader(c int)
- func (w ResponseWriter) WriteObject(code int, o interface{})
- func (w ResponseWriter) WriteText(code int, str string)
- func (w ResponseWriter) WriteWindow(code int, results, limit, offset uint64, o interface{})
- type ResultError
- type ResultWindow
Constants ¶
This section is empty.
Variables ¶
var AssetSet = make(map[string]AssetRoutes)
var IdentRouteSet = make(map[string]IdentRoutes)
IdentRouteSet is a set of lists of routes to handle
var MiddlewareSet = make(map[Event][]Middleware)
MiddlewareSet is a set of middlewares grouped by Event lifecycle
var RouteSet = make(map[string]HttpRoutes)
RouteSet is a set of routelists
var SignalShutdown = make(chan struct{})
SignalShutdown channel is closed when httpsrv shuts down
var SignalStartup = make(chan struct{})
SignalStartup channel is closed when httpsrv starts up
var WaitShutdown sync.WaitGroup
WaitShutdown registers services to wait for graceful shutdown
Functions ¶
func AssetRegister ¶
func AssetRegister(name string, routes AssetRoutes)
func FsHtml5 ¶
func FsHtml5(fn http.FileSystem) http.FileSystem
This function will return the app for subdirectories of the application so it can remove the /#/ urls.
func HttpRegister ¶
func HttpRegister(name string, routes HttpRoutes)
HttpRegister registers a routeset
func IdentRegister ¶
func IdentRegister(name string, routes IdentRoutes)
IdentRegister adds an ident route to list
func RegisterModule ¶
func RegisterModule(name string, fn ModuleHandler)
RegisterModule stores a module
func WriteError ¶
func WriteError(w http.ResponseWriter, code int, msg string)
WriteError write an error message
func WriteObject ¶
func WriteObject(w http.ResponseWriter, code int, o interface{})
WriteObject write object as json
func WriteText ¶
func WriteText(w http.ResponseWriter, code int, o string)
WriteText writes plain text
func WriteWindow ¶
func WriteWindow(w http.ResponseWriter, code int, results, limit, offset uint64, o interface{})
WriteWindow writes a window object of items
Types ¶
type AssetRoute ¶
type AssetRoute struct { Name string Path string HandlerFunc http.FileSystem }
type AssetRoutes ¶
type AssetRoutes []AssetRoute
func (AssetRoutes) Len ¶
func (a AssetRoutes) Len() int
func (AssetRoutes) Less ¶
func (a AssetRoutes) Less(i, j int) bool
func (AssetRoutes) Swap ¶
func (a AssetRoutes) Swap(i, j int)
type Event ¶
type Event int
Event lifecycle state
type HandlerFunc ¶
type HandlerFunc func(ResponseWriter, *http.Request, ident.Ident)
HandlerFunc is used by registered routes
func (HandlerFunc) ServeHTTP ¶
func (f HandlerFunc) ServeHTTP(w ResponseWriter, r *http.Request, i ident.Ident)
ServeHTTP handles a request
type HttpRoute ¶
type HttpRoute struct { Name string Method string Pattern string HandlerFunc http.HandlerFunc }
HttpRoute is a route to handle
type IdentRoute ¶
type IdentRoute struct { Name string Method string Pattern string HandlerFunc HandlerFunc }
IdentRoute is a single route to handle
type Middleware ¶
type Middleware struct { Name string Whitelist map[string]bool Blacklist map[string]bool ProcessHTTP MiddlewareFunc }
Middleware defines when middleware should be executed in event lifecycle
func NewMiddleware ¶
func NewMiddleware(name string, hdlr MiddlewareFunc) (m Middleware)
NewMiddleware defines a new middleware
func (Middleware) Register ¶
func (m Middleware) Register(event Event)
Register inserts the middleware into the lifecycle map
func (Middleware) SetBlacklist ¶
func (m Middleware) SetBlacklist(whitelist []string) Middleware
SetBlacklist sets the events to avoid
func (Middleware) SetWhitelist ¶
func (m Middleware) SetWhitelist(whitelist []string) Middleware
SetWhitelist sets the events names to target
type MiddlewareFunc ¶
MiddlewareFunc is a function that handles a request/response through request lifecycle
type MiddlewareList ¶
type MiddlewareList []Middleware
MiddlewareList is a list of registered middlewares
type ModuleHandler ¶
ModuleHandler holds registered handlers for httpsrv
type ResponseWriter ¶
type ResponseWriter struct { W http.ResponseWriter R *responseWriter }
func WrapResponseWriter ¶
func WrapResponseWriter(w http.ResponseWriter) (r ResponseWriter)
func (ResponseWriter) GetCode ¶
func (w ResponseWriter) GetCode() int
func (ResponseWriter) Header ¶
func (w ResponseWriter) Header() http.Header
func (ResponseWriter) Since ¶
func (w ResponseWriter) Since() time.Duration
func (ResponseWriter) StopTime ¶
func (w ResponseWriter) StopTime() time.Duration
func (ResponseWriter) WriteError ¶
func (w ResponseWriter) WriteError(code int, msg string)
func (ResponseWriter) WriteHeader ¶
func (w ResponseWriter) WriteHeader(c int)
func (ResponseWriter) WriteObject ¶
func (w ResponseWriter) WriteObject(code int, o interface{})
func (ResponseWriter) WriteText ¶
func (w ResponseWriter) WriteText(code int, str string)
func (ResponseWriter) WriteWindow ¶
func (w ResponseWriter) WriteWindow(code int, results, limit, offset uint64, o interface{})
type ResultError ¶
ResultError is a message error swagger:model ResultError