flowdriver

package module
v1.1.3 Latest Latest
Warning

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

Go to latest
Published: Mar 14, 2020 License: MIT Imports: 7 Imported by: 0

README

FlowDriver

Documentation

Index

Constants

View Source
const (
	INPUT  = "In"     // имя поля входных значений обработчика
	OUTPUT = "Out"    // имя поля выходных значений обработчика
	INVOKE = "Invoke" // имя метода, исполняющего логику обработчика
)
View Source
const (
	STATUS = iota // индекс статуса в возвращаемых значениях Invoke
	ERROR         // индекс ошибки
)

Variables

This section is empty.

Functions

func FlowDriver

func FlowDriver(in Invoker) http.HandlerFunc

FlowDriver - обертка над http.HandlerFunc, предоставляющая валидацию входных и выходных значений обработчика. Принимает обработчик - структура, имплементирующая интерфейс Invoker. Обработчик должен иметь поля In и Out - которые в свою очередь являются структурами (не указателями на структуру) Поля структур In и Out должны быть публичными и описываться типами пакета flowdriver, например, flowdriver.IntField При несоответствии типов, вызывает panic

func WriteJSONError

func WriteJSONError(w http.ResponseWriter, err flowerror.FlowError, status int) error

func WriteJSONResponse

func WriteJSONResponse(w http.ResponseWriter, v interface{}, status int) error

Types

type BoolField

type BoolField = bool

type EmptyStruct

type EmptyStruct struct{}

type FloatField

type FloatField = float64

type IntField

type IntField = int64

type Invoker

type Invoker interface {
	Invoke() (status int, err flowerror.FlowError)
}

type StringField

type StringField = string

type UintField

type UintField = uint64

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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