svc

package
v0.0.0-...-499b85e Latest Latest
Warning

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

Go to latest
Published: Aug 3, 2021 License: Apache-2.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Graph

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

Graph defines implements the business logic for Service.

func (Graph) GetClient

func (g Graph) GetClient() (gateway.GatewayAPIClient, error)

GetClient returns a gateway client to talk to reva

func (Graph) GetDrives

func (g Graph) GetDrives(w http.ResponseWriter, r *http.Request)

GetDrives implements the Service interface.

func (Graph) GetGroup

func (g Graph) GetGroup(w http.ResponseWriter, r *http.Request)

GetGroup implements the Service interface.

func (Graph) GetGroups

func (g Graph) GetGroups(w http.ResponseWriter, r *http.Request)

GetGroups implements the Service interface.

func (Graph) GetMe

func (g Graph) GetMe(w http.ResponseWriter, r *http.Request)

GetMe implements the Service interface.

func (Graph) GetRootDriveChildren

func (g Graph) GetRootDriveChildren(w http.ResponseWriter, r *http.Request)

GetRootDriveChildren implements the Service interface.

func (Graph) GetUser

func (g Graph) GetUser(w http.ResponseWriter, r *http.Request)

GetUser implements the Service interface.

func (Graph) GetUsers

func (g Graph) GetUsers(w http.ResponseWriter, r *http.Request)

GetUsers implements the Service interface. TODO use cs3 api to look up user

func (Graph) GroupCtx

func (g Graph) GroupCtx(next http.Handler) http.Handler

GroupCtx middleware is used to load an User object from the URL parameters passed through as the request. In case the User could not be found, we stop here and return a 404.

func (Graph) ServeHTTP

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

ServeHTTP implements the Service interface.

func (Graph) UserCtx

func (g Graph) UserCtx(next http.Handler) http.Handler

UserCtx middleware is used to load an User object from the URL parameters passed through as the request. In case the User could not be found, we stop here and return a 404. TODO use cs3 api to look up user

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)
	GetMe(http.ResponseWriter, *http.Request)
	GetUsers(http.ResponseWriter, *http.Request)
	GetUser(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.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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