server

package
v0.0.0-...-1b5e7b1 Latest Latest
Warning

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

Go to latest
Published: Oct 8, 2023 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DecodeMultiplyRequest

func DecodeMultiplyRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (any, error)

DecodeMultiplyRequest returns a decoder for requests sent to the calc multiply endpoint.

func EncodeMultiplyResponse

func EncodeMultiplyResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error

EncodeMultiplyResponse returns an encoder for responses returned by the calc multiply endpoint.

func Mount

func Mount(mux goahttp.Muxer, h *Server)

Mount configures the mux to serve the calc endpoints.

func MountGenHTTPOpenapiJSON

func MountGenHTTPOpenapiJSON(mux goahttp.Muxer, h http.Handler)

MountGenHTTPOpenapiJSON configures the mux to serve GET request made to "/openapi.json".

func MountMultiplyHandler

func MountMultiplyHandler(mux goahttp.Muxer, h http.Handler)

MountMultiplyHandler configures the mux to serve the "calc" service "multiply" endpoint.

func MultiplyCalcPath

func MultiplyCalcPath() string

MultiplyCalcPath returns the URL path to the calc service multiply HTTP endpoint.

func NewMultiplyHandler

func NewMultiplyHandler(
	endpoint goa.Endpoint,
	mux goahttp.Muxer,
	decoder func(*http.Request) goahttp.Decoder,
	encoder func(context.Context, http.ResponseWriter) goahttp.Encoder,
	errhandler func(context.Context, http.ResponseWriter, error),
	formatter func(ctx context.Context, err error) goahttp.Statuser,
) http.Handler

NewMultiplyHandler creates a HTTP handler which loads the HTTP request and calls the "calc" service "multiply" endpoint.

func NewMultiplyPayload

func NewMultiplyPayload(body *MultiplyRequestBody) *calc.MultiplyPayload

NewMultiplyPayload builds a calc service multiply endpoint payload.

func ValidateMultiplyRequestBody

func ValidateMultiplyRequestBody(body *MultiplyRequestBody) (err error)

ValidateMultiplyRequestBody runs the validations defined on MultiplyRequestBody

Types

type MountPoint

type MountPoint struct {
	// Method is the name of the service method served by the mounted HTTP handler.
	Method string
	// Verb is the HTTP method used to match requests to the mounted handler.
	Verb string
	// Pattern is the HTTP request path pattern used to match requests to the
	// mounted handler.
	Pattern string
}

MountPoint holds information about the mounted endpoints.

type MultiplyRequestBody

type MultiplyRequestBody struct {
	// Left operand
	A *int `form:"a,omitempty" json:"a,omitempty" xml:"a,omitempty"`
	// Right operand
	B *int `form:"b,omitempty" json:"b,omitempty" xml:"b,omitempty"`
}

MultiplyRequestBody is the type of the "calc" service "multiply" endpoint HTTP request body.

type MultiplyResponseBody

type MultiplyResponseBody struct {
	// Result of multiplication
	Multiple int `form:"multiple" json:"multiple" xml:"multiple"`
}

MultiplyResponseBody is the type of the "calc" service "multiply" endpoint HTTP response body.

func NewMultiplyResponseBody

func NewMultiplyResponseBody(res *calcviews.MultiplyresponseView) *MultiplyResponseBody

NewMultiplyResponseBody builds the HTTP response body from the result of the "multiply" endpoint of the "calc" service.

type Server

type Server struct {
	Mounts             []*MountPoint
	Multiply           http.Handler
	GenHTTPOpenapiJSON http.Handler
}

Server lists the calc service endpoint HTTP handlers.

func New

func New(
	e *calc.Endpoints,
	mux goahttp.Muxer,
	decoder func(*http.Request) goahttp.Decoder,
	encoder func(context.Context, http.ResponseWriter) goahttp.Encoder,
	errhandler func(context.Context, http.ResponseWriter, error),
	formatter func(ctx context.Context, err error) goahttp.Statuser,
	fileSystemGenHTTPOpenapiJSON http.FileSystem,
) *Server

New instantiates HTTP handlers for all the calc service endpoints using the provided encoder and decoder. The handlers are mounted on the given mux using the HTTP verb and path defined in the design. errhandler is called whenever a response fails to be encoded. formatter is used to format errors returned by the service methods prior to encoding. Both errhandler and formatter are optional and can be nil.

func (*Server) MethodNames

func (s *Server) MethodNames() []string

MethodNames returns the methods served.

func (*Server) Mount

func (s *Server) Mount(mux goahttp.Muxer)

Mount configures the mux to serve the calc endpoints.

func (*Server) Service

func (s *Server) Service() string

Service returns the name of the service served.

func (*Server) Use

func (s *Server) Use(m func(http.Handler) http.Handler)

Use wraps the server handlers with the given middleware.

Jump to

Keyboard shortcuts

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