svc

package
v2.0.0 Latest Latest
Warning

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

Go to latest
Published: Nov 29, 2022 License: Apache-2.0 Imports: 38 Imported by: 0

Documentation

Index

Constants

View Source
const (
	TokenHeader = "X-Access-Token"
)

Variables

This section is empty.

Functions

This section is empty.

Types

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 Props

type Props []xml.Name

Props represents properties related to a resource http://www.webdav.org/specs/rfc4918.html#ELEMENT_prop (for propfind)

type Service

type Service interface {
	ServeHTTP(http.ResponseWriter, *http.Request)
	Thumbnail(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, error)

NewService returns a service implementation for Service.

func NewTracing

func NewTracing(next Service) Service

NewTracing returns a service that instruments traces.

type Webdav

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

Webdav implements the business logic for Service.

func (Webdav) DavPublicContext

func (g Webdav) DavPublicContext() func(next http.Handler) http.Handler

func (Webdav) DavUserContext

func (g Webdav) DavUserContext() func(next http.Handler) http.Handler

func (Webdav) PublicThumbnail

func (g Webdav) PublicThumbnail(w http.ResponseWriter, r *http.Request)

func (Webdav) PublicThumbnailHead

func (g Webdav) PublicThumbnailHead(w http.ResponseWriter, r *http.Request)

func (Webdav) Search

func (g Webdav) Search(w http.ResponseWriter, r *http.Request)

Search is the endpoint for retrieving search results for REPORT requests

func (Webdav) ServeHTTP

func (g Webdav) ServeHTTP(w http.ResponseWriter, r *http.Request)

ServeHTTP implements the Service interface.

func (Webdav) SpacesThumbnail

func (g Webdav) SpacesThumbnail(w http.ResponseWriter, r *http.Request)

SpacesThumbnail is the endpoint for retrieving thumbnails inside of spaces.

func (Webdav) Thumbnail

func (g Webdav) Thumbnail(w http.ResponseWriter, r *http.Request)

Thumbnail implements the Service interface.

func (Webdav) WebDAVContext

func (g Webdav) WebDAVContext() func(next http.Handler) http.Handler

type XML

type XML struct {
	XMLName  xml.Name  `xml:"DAV: propfind"`
	Allprop  *struct{} `xml:"DAV: allprop"`
	Propname *struct{} `xml:"DAV: propname"`
	Prop     Props     `xml:"DAV: prop"`
	Include  Props     `xml:"DAV: include"`
}

XML holds the xml representation of a propfind http://www.webdav.org/specs/rfc4918.html#ELEMENT_propfind

Jump to

Keyboard shortcuts

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