Documentation
¶
Index ¶
- func DecodeForecastRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (any, error)
- func EncodeForecastError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, ...) func(context.Context, http.ResponseWriter, error) error
- func EncodeForecastResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
- func ForecastForecasterPath(state string, city string) string
- func Mount(mux goahttp.Muxer, h *Server)
- func MountForecastHandler(mux goahttp.Muxer, h http.Handler)
- func NewForecastHandler(endpoint goa.Endpoint, mux goahttp.Muxer, ...) http.Handler
- func NewForecastPayload(state string, city string) *forecaster.ForecastPayload
- type ForecastResponseBody
- type ForecastTimeoutResponseBody
- type LocationResponseBody
- type MountPoint
- type PeriodResponseBody
- type Server
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DecodeForecastRequest ¶
func DecodeForecastRequest(mux goahttp.Muxer, decoder func(*http.Request) goahttp.Decoder) func(*http.Request) (any, error)
DecodeForecastRequest returns a decoder for requests sent to the Forecaster forecast endpoint.
func EncodeForecastError ¶
func EncodeForecastError(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder, formatter func(ctx context.Context, err error) goahttp.Statuser) func(context.Context, http.ResponseWriter, error) error
EncodeForecastError returns an encoder for errors returned by the forecast Forecaster endpoint.
func EncodeForecastResponse ¶
func EncodeForecastResponse(encoder func(context.Context, http.ResponseWriter) goahttp.Encoder) func(context.Context, http.ResponseWriter, any) error
EncodeForecastResponse returns an encoder for responses returned by the Forecaster forecast endpoint.
func ForecastForecasterPath ¶
ForecastForecasterPath returns the URL path to the Forecaster service forecast HTTP endpoint.
func MountForecastHandler ¶
MountForecastHandler configures the mux to serve the "Forecaster" service "forecast" endpoint.
func NewForecastHandler ¶
func NewForecastHandler( 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
NewForecastHandler creates a HTTP handler which loads the HTTP request and calls the "Forecaster" service "forecast" endpoint.
func NewForecastPayload ¶
func NewForecastPayload(state string, city string) *forecaster.ForecastPayload
NewForecastPayload builds a Forecaster service forecast endpoint payload.
Types ¶
type ForecastResponseBody ¶
type ForecastResponseBody struct { // Forecast location Location *LocationResponseBody `form:"location" json:"location" xml:"location"` // Weather forecast periods Periods []*PeriodResponseBody `form:"periods" json:"periods" xml:"periods"` }
ForecastResponseBody is the type of the "Forecaster" service "forecast" endpoint HTTP response body.
func NewForecastResponseBody ¶
func NewForecastResponseBody(res *forecaster.Forecast2) *ForecastResponseBody
NewForecastResponseBody builds the HTTP response body from the result of the "forecast" endpoint of the "Forecaster" service.
type ForecastTimeoutResponseBody ¶
type ForecastTimeoutResponseBody 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"` }
ForecastTimeoutResponseBody is the type of the "Forecaster" service "forecast" endpoint HTTP response body for the "timeout" error.
func NewForecastTimeoutResponseBody ¶
func NewForecastTimeoutResponseBody(res *goa.ServiceError) *ForecastTimeoutResponseBody
NewForecastTimeoutResponseBody builds the HTTP response body from the result of the "forecast" endpoint of the "Forecaster" service.
type LocationResponseBody ¶
type LocationResponseBody struct { // Latitude Lat float64 `form:"lat" json:"lat" xml:"lat"` // Longitude Long float64 `form:"long" json:"long" xml:"long"` // City City string `form:"city" json:"city" xml:"city"` // State State string `form:"state" json:"state" xml:"state"` }
LocationResponseBody is used to define fields on response body 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 PeriodResponseBody ¶
type PeriodResponseBody struct { // Period name Name string `form:"name" json:"name" xml:"name"` // Start time StartTime string `form:"startTime" json:"startTime" xml:"startTime"` // End time EndTime string `form:"endTime" json:"endTime" xml:"endTime"` // Temperature Temperature int `form:"temperature" json:"temperature" xml:"temperature"` // Temperature unit TemperatureUnit string `form:"temperatureUnit" json:"temperatureUnit" xml:"temperatureUnit"` // Summary Summary string `form:"summary" json:"summary" xml:"summary"` }
PeriodResponseBody is used to define fields on response body types.
type Server ¶
type Server struct { Mounts []*MountPoint Forecast http.Handler }
Server lists the Forecaster service endpoint HTTP handlers.
func New ¶
func New( e *forecaster.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 Forecaster 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 ¶
MethodNames returns the methods served.