server

package
v0.0.0-...-38fd44a Latest Latest
Warning

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

Go to latest
Published: Oct 18, 2022 License: BSD-3-Clause Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DecodeRandRequest

func DecodeRandRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (interface{}, error)

DecodeRandRequest returns a decoder for requests sent to the demo rand endpoint.

func EncodeRandError

func EncodeRandError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, formatter func(ctx context.Context, err error) goahttp.Statuser) func(context.Context, http.ResponseWriter, error) error

EncodeRandError returns an encoder for errors returned by the rand demo endpoint.

func EncodeRandResponse

func EncodeRandResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, interface{}) error

EncodeRandResponse returns an encoder for responses returned by the demo rand endpoint.

func Mount

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

Mount configures the mux to serve the demo endpoints.

func MountRandHandler

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

MountRandHandler configures the mux to serve the "demo" service "rand" endpoint.

func NewRandHandler

func NewRandHandler(
	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

NewRandHandler creates a HTTP handler which loads the HTTP request and calls the "demo" service "rand" endpoint.

func NewRandPayload

func NewRandPayload(min *int64, max *int64) *demo.RandPayload

NewRandPayload builds a demo service rand endpoint payload.

func RandDemoPath

func RandDemoPath() string

RandDemoPath returns the URL path to the demo service rand HTTP endpoint.

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 RandInvalidArgumentsResponseBody

type RandInvalidArgumentsResponseBody struct {
	// Name is the name of this class of errors.
	Name string `form:"name" json:"name" xml:"name"`
	// ID is a unique identifier for this particular occurrence of the problem.
	ID string `form:"id" json:"id" xml:"id"`
	// Message is a human-readable explanation specific to this occurrence of the
	// problem.
	Message string `form:"message" json:"message" xml:"message"`
	// Is the error temporary?
	Temporary bool `form:"temporary" json:"temporary" xml:"temporary"`
	// Is the error a timeout?
	Timeout bool `form:"timeout" json:"timeout" xml:"timeout"`
	// Is the error a server-side fault?
	Fault bool `form:"fault" json:"fault" xml:"fault"`
}

RandInvalidArgumentsResponseBody is the type of the "demo" service "rand" endpoint HTTP response body for the "invalid_arguments" error.

func NewRandInvalidArgumentsResponseBody

func NewRandInvalidArgumentsResponseBody(res *goa.ServiceError) *RandInvalidArgumentsResponseBody

NewRandInvalidArgumentsResponseBody builds the HTTP response body from the result of the "rand" endpoint of the "demo" service.

type RandResponseBody

type RandResponseBody struct {
	Result *int64 `form:"result,omitempty" json:"result,omitempty" xml:"result,omitempty"`
}

RandResponseBody is the type of the "demo" service "rand" endpoint HTTP response body.

func NewRandResponseBody

func NewRandResponseBody(res *demoviews.RandResultView) *RandResponseBody

NewRandResponseBody builds the HTTP response body from the result of the "rand" endpoint of the "demo" service.

type Server

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

Server lists the demo service endpoint HTTP handlers.

func New

func New(
	e *demo.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,
) *Server

New instantiates HTTP handlers for all the demo 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 demo 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