middleware

package
v0.7.4 Latest Latest
Warning

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

Go to latest
Published: Mar 3, 2017 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var PopTransaction = func(db *pop.Connection) buffalo.MiddlewareFunc {
	return func(h buffalo.Handler) buffalo.Handler {
		return func(c buffalo.Context) error {

			return db.Transaction(func(tx *pop.Connection) error {
				start := tx.Elapsed
				defer func() {
					finished := tx.Elapsed
					elapsed := time.Duration(finished - start)
					c.LogField("db", elapsed)
				}()
				c.Set("tx", tx)
				return h(c)
			})
		}
	}
}

PopTransaction is a piece of Buffalo middleware that wraps each request in a transaction that will automatically get committed or rolledback. It will also add a field to the log, "db", that shows the total duration spent during the request making database calls.

Functions

func AddContentType added in v0.4.7

func AddContentType(s string) buffalo.MiddlewareFunc

AddContentType will add a secondary content type to a request. If no content type is sent by the client the default will be set, otherwise the client's content type will be used.

func NewRelic added in v0.4.5

func NewRelic(key, name string) buffalo.MiddlewareFunc

NewRelic returns a piece of buffalo.Middleware that can be used to report requests to NewRelic. You must pass in your NewRelic key and a name for your application. If the key passed in is blank, i.e. loading from an ENV, then the middleware is skipped and the chain continues on like normal. Useful for development.

func SetContentType added in v0.4.7

func SetContentType(s string) buffalo.MiddlewareFunc

SetContentType on the request to desired type. This will override any content type sent by the client.

Types

This section is empty.

Jump to

Keyboard shortcuts

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