luci-go: github.com/luci/luci-go/logdog/appengine/coordinator/endpoints Index | Files | Directories

package endpoints

import "github.com/luci/luci-go/logdog/appengine/coordinator/endpoints"

Index

Package Files

context.go projectBoundMessage.go services.go util.go

func MinDuration Uses

func MinDuration(candidates ...*duration.Duration) (exp time.Duration)

MinDuration selects the smallest duration that is > 0 from a set of duration.Duration protobufs.

If none of the supplied Durations are > 0, 0 will be returned.

func WithServices Uses

func WithServices(c context.Context, s Services) context.Context

WithServices installs the supplied Services instance into a Context.

type ProdService Uses

type ProdService struct {
}

ProdService is an instance-global configuration for production Coordinator services. A zero-value struct should be used.

It can be installed via middleware using its Base method. This also fulfills the publisher ClientFactory interface.

func (*ProdService) Base Uses

func (svc *ProdService) Base(c *router.Context, next router.Handler)

Base is Middleware used by Coordinator services.

It installs a production Services instance into the Context.

type ProjectBoundMessage Uses

type ProjectBoundMessage interface {
    // GetMessageProject returns the Project to which this message is bound.
    GetMessageProject() string
}

ProjectBoundMessage describes an object that is bound to a Project namespace.

This is intended to be implemented by project-bound protobufs.

type Services Uses

type Services interface {
    coordinator.ConfigProvider
}

Services is a set of support services used by AppEngine Classic Coordinator endpoints.

Each instance is valid for a single request, but can be re-used throughout that request. This is advised, as the Services instance may optionally cache values.

Services methods are goroutine-safe.

func GetServices Uses

func GetServices(c context.Context) Services

GetServices gets the Services instance installed in the supplied Context.

If no Services has been installed, it will panic.

Directories

PathSynopsis
admin
registration
services

Package endpoints imports 8 packages (graph). Updated 2019-10-17. Refresh now. Tools for package owners.