server

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Oct 30, 2023 License: Apache-2.0 Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func AccountsAggregatePath

func AccountsAggregatePath() string

AccountsAggregatePath returns the URL path to the aggregate service accounts HTTP endpoint.

func DecodeAccountsRequest

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

DecodeAccountsRequest returns a decoder for requests sent to the aggregate accounts endpoint.

func DecodeGroupsRequest

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

DecodeGroupsRequest returns a decoder for requests sent to the aggregate groups endpoint.

func EncodeAccountsError

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

EncodeAccountsError returns an encoder for errors returned by the accounts aggregate endpoint.

func EncodeAccountsResponse

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

EncodeAccountsResponse returns an encoder for responses returned by the aggregate accounts endpoint.

func EncodeGroupsError

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

EncodeGroupsError returns an encoder for errors returned by the groups aggregate endpoint.

func EncodeGroupsResponse

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

EncodeGroupsResponse returns an encoder for responses returned by the aggregate groups endpoint.

func GroupsAggregatePath

func GroupsAggregatePath() string

GroupsAggregatePath returns the URL path to the aggregate service groups HTTP endpoint.

func Mount

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

Mount configures the mux to serve the aggregate endpoints.

func MountAccountsHandler

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

MountAccountsHandler configures the mux to serve the "aggregate" service "accounts" endpoint.

func MountGroupsHandler

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

MountGroupsHandler configures the mux to serve the "aggregate" service "groups" endpoint.

func NewAccountsHandler

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

NewAccountsHandler creates a HTTP handler which loads the HTTP request and calls the "aggregate" service "accounts" endpoint.

func NewAccountsPayload

func NewAccountsPayload() *aggregate.AccountsPayload

NewAccountsPayload builds a aggregate service accounts endpoint payload.

func NewGroupsHandler

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

NewGroupsHandler creates a HTTP handler which loads the HTTP request and calls the "aggregate" service "groups" endpoint.

func NewGroupsPayload

func NewGroupsPayload() *aggregate.GroupsPayload

NewGroupsPayload builds a aggregate service groups endpoint payload.

Types

type AccountResponse

type AccountResponse struct {
	// Temporary account identifier
	ID *int64 `gorm:"autoIncrement" json:"id,omitempty"`
	// IDP account identifier
	GUID *string `json:"guid,omitempty"`
	// Name of user
	Name string `form:"name" json:"name" xml:"name"`
	// Login of user
	Login string `gorm:"uniqueIndex" json:"login"`
	// Email of user
	Email string `form:"email" json:"email" xml:"email"`
	// Status of account
	Status *string `form:"status,omitempty" json:"status,omitempty" xml:"status,omitempty"`
}

AccountResponse is used to define fields on response body types.

type AccountsPermissionDeniedResponseBody

type AccountsPermissionDeniedResponseBody 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"`
}

AccountsPermissionDeniedResponseBody is the type of the "aggregate" service "accounts" endpoint HTTP response body for the "PermissionDenied" error.

func NewAccountsPermissionDeniedResponseBody

func NewAccountsPermissionDeniedResponseBody(res *goa.ServiceError) *AccountsPermissionDeniedResponseBody

NewAccountsPermissionDeniedResponseBody builds the HTTP response body from the result of the "accounts" endpoint of the "aggregate" service.

type AccountsResponseBody

type AccountsResponseBody []*AccountResponse

AccountsResponseBody is the type of the "aggregate" service "accounts" endpoint HTTP response body.

func NewAccountsResponseBody

func NewAccountsResponseBody(res []*aggregate.Account) AccountsResponseBody

NewAccountsResponseBody builds the HTTP response body from the result of the "accounts" endpoint of the "aggregate" service.

type GroupResponse

type GroupResponse struct {
	// Name of group
	Name *string `form:"name,omitempty" json:"name,omitempty" xml:"name,omitempty"`
	// ID of group
	ID *string `form:"id,omitempty" json:"id,omitempty" xml:"id,omitempty"`
}

GroupResponse is used to define fields on response body types.

type GroupsPermissionDeniedResponseBody

type GroupsPermissionDeniedResponseBody 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"`
}

GroupsPermissionDeniedResponseBody is the type of the "aggregate" service "groups" endpoint HTTP response body for the "PermissionDenied" error.

func NewGroupsPermissionDeniedResponseBody

func NewGroupsPermissionDeniedResponseBody(res *goa.ServiceError) *GroupsPermissionDeniedResponseBody

NewGroupsPermissionDeniedResponseBody builds the HTTP response body from the result of the "groups" endpoint of the "aggregate" service.

type GroupsResponseBody

type GroupsResponseBody []*GroupResponse

GroupsResponseBody is the type of the "aggregate" service "groups" endpoint HTTP response body.

func NewGroupsResponseBody

func NewGroupsResponseBody(res []*aggregate.Group) GroupsResponseBody

NewGroupsResponseBody builds the HTTP response body from the result of the "groups" endpoint of the "aggregate" service.

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 Server

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

Server lists the aggregate service endpoint HTTP handlers.

func New

func New(
	e *aggregate.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 aggregate 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 aggregate 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