svc

package
v1.14.0 Latest Latest
Warning

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

Go to latest
Published: Oct 27, 2021 License: Apache-2.0 Imports: 12 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// ErrConfigInvalid is returned when the config parse is invalid.
	ErrConfigInvalid = `Invalid or missing config`
)

Functions

This section is empty.

Types

type NotFoundInterceptor added in v1.13.0

type NotFoundInterceptor struct {
	http.ResponseWriter
	// contains filtered or unexported fields
}

func (*NotFoundInterceptor) Write added in v1.13.0

func (w *NotFoundInterceptor) Write(p []byte) (int, error)

func (*NotFoundInterceptor) WriteHeader added in v1.13.0

func (w *NotFoundInterceptor) WriteHeader(status int)

type Option

type Option func(o *Options)

Option defines a single option function.

func Config

func Config(val *config.Config) Option

Config provides a function to set the config option.

func Logger

func Logger(val log.Logger) Option

Logger provides a function to set the logger option.

func Middleware

func Middleware(val ...func(http.Handler) http.Handler) Option

Middleware provides a function to set the middleware option.

type Options

type Options struct {
	Logger     log.Logger
	Config     *config.Config
	Middleware []func(http.Handler) http.Handler
}

Options defines the available options for this package.

type Service

type Service interface {
	ServeHTTP(http.ResponseWriter, *http.Request)
	Config(http.ResponseWriter, *http.Request)
}

Service defines the extension handlers.

func NewInstrument

func NewInstrument(next Service, metrics *metrics.Metrics) Service

NewInstrument returns a service that instruments metrics.

func NewLogging

func NewLogging(next Service, logger log.Logger) Service

NewLogging returns a service that logs messages.

func NewService

func NewService(opts ...Option) Service

NewService returns a service implementation for Service.

func NewTracing

func NewTracing(next Service) Service

NewTracing returns a service that instruments traces.

type Web

type Web struct {
	// contains filtered or unexported fields
}

Web defines implements the business logic for Service.

func (Web) Config

func (p Web) Config(w http.ResponseWriter, r *http.Request)

Config implements the Service interface.

func (Web) ServeHTTP

func (p Web) ServeHTTP(w http.ResponseWriter, r *http.Request)

ServeHTTP implements the Service interface.

func (Web) Static

func (p Web) Static(ttl int) http.HandlerFunc

Static simply serves all static files.

Jump to

Keyboard shortcuts

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