rest

package module
v1.1.1 Latest Latest
Warning

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

Go to latest
Published: Aug 27, 2019 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func MustWrapGenericHandler

func MustWrapGenericHandler(genericHandler GenericHandler, translator ErrorTranslator, errHandler myerrors.Handler) http.HandlerFunc

func WrapGenericHandler

func WrapGenericHandler(genericHandler GenericHandler, translator ErrorTranslator, errHandler myerrors.Handler) (http.HandlerFunc, error)

func WrapHandler

func WrapHandler(handler Handler, errHandler myerrors.Handler) http.HandlerFunc

Types

type Error

type Error interface {
	error
	Reply
}

func NewError

func NewError(err error, statusCode int) Error

type ErrorTranslator

type ErrorTranslator interface {
	TranslateError(error) Error
}

type GenericHandler

type GenericHandler interface{} // TODO: Go2: func(type ArgsType, ReplyType)(*ArgsType) (*ReplyType, error)

type GenericWrapper

type GenericWrapper interface {
	Wrapper
	WrapGenericHandler(GenericHandler) (http.HandlerFunc, error)
	MustWrapGenericHandler(GenericHandler) http.HandlerFunc
}

func NewGenericWrapper

func NewGenericWrapper(translator ErrorTranslator, errHandler myerrors.Handler) GenericWrapper

type Handler

type Handler func(Request) Reply

type Reply

type Reply interface {
	StatusCode() int
	Encode(io.Writer) error
}

func NewOKReply

func NewOKReply(value interface{}) Reply

func NewReply

func NewReply(value interface{}, statusCode int) Reply

type Request

type Request interface {
	Decode(v interface{}) error
}

type Wrapper

type Wrapper interface {
	WrapHandler(Handler) http.HandlerFunc
}

func NewWrapper

func NewWrapper(errHandler myerrors.Handler) Wrapper

Jump to

Keyboard shortcuts

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