middleware

package
v3.1.1+incompatible Latest Latest
Warning

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

Go to latest
Published: Aug 1, 2016 License: Apache-2.0 Imports: 24 Imported by: 0

Documentation

Index

Constants

View Source
const (
	SESS_KEY_USERID = "uid"
	SESS_KEY_APIKEY = "apikey_id" // used fror render requests with api keys
)

Variables

This section is empty.

Functions

func Auth

func Auth(options *AuthOptions) macaron.Handler

func GetContextHandler

func GetContextHandler() macaron.Handler

func Gziper

func Gziper() macaron.Handler

func Logger

func Logger() macaron.Handler

func MeasureRequestTime

func MeasureRequestTime() macaron.Handler

func Quota

func Quota(target string) macaron.Handler

func QuotaReached

func QuotaReached(c *Context, target string) (bool, error)

func Recovery

func Recovery() macaron.Handler

Recovery returns a middleware that recovers from any panics and writes a 500 if there was one. While Martini is in development mode, Recovery will also output the panic as HTML.

func RoleAuth

func RoleAuth(roles ...m.RoleType) macaron.Handler

func Sessioner

func Sessioner(options *session.Options) macaron.Handler

func ValidateHostHeader

func ValidateHostHeader(domain string) macaron.Handler

Types

type AuthOptions

type AuthOptions struct {
	ReqGrafanaAdmin bool
	ReqSignedIn     bool
}

type Context

type Context struct {
	*macaron.Context
	*m.SignedInUser

	Session SessionStore

	IsSignedIn     bool
	AllowAnonymous bool
	Logger         log.Logger
}

func (*Context) Handle

func (ctx *Context) Handle(status int, title string, err error)

Handle handles and logs error by given status.

func (*Context) HasUserRole

func (ctx *Context) HasUserRole(role m.RoleType) bool

func (*Context) IsApiRequest

func (ctx *Context) IsApiRequest() bool

func (*Context) JsonApiErr

func (ctx *Context) JsonApiErr(status int, message string, err error)

func (*Context) JsonOK

func (ctx *Context) JsonOK(message string)

func (*Context) TimeRequest

func (ctx *Context) TimeRequest(timer metrics.Timer)

type SessionStore

type SessionStore interface {
	// Set sets value to given key in session.
	Set(interface{}, interface{}) error
	// Get gets value by given key in session.
	Get(interface{}) interface{}
	// ID returns current session ID.
	ID() string
	// Release releases session resource and save data to provider.
	Release() error
	// Destory deletes a session.
	Destory(*Context) error
	// init
	Start(*Context) error
}

func GetSession

func GetSession() SessionStore

type SessionWrapper

type SessionWrapper struct {
	// contains filtered or unexported fields
}

func (*SessionWrapper) Destory

func (s *SessionWrapper) Destory(c *Context) error

func (*SessionWrapper) Get

func (s *SessionWrapper) Get(k interface{}) interface{}

func (*SessionWrapper) ID

func (s *SessionWrapper) ID() string

func (*SessionWrapper) Release

func (s *SessionWrapper) Release() error

func (*SessionWrapper) Set

func (s *SessionWrapper) Set(k interface{}, v interface{}) error

func (*SessionWrapper) Start

func (s *SessionWrapper) Start(c *Context) error

Jump to

Keyboard shortcuts

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