undertaker

package
v0.0.0-...-6cf1bc9 Latest Latest
Warning

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

Go to latest
Published: Oct 13, 2016 License: AGPL-3.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Manifold

func Manifold(config ManifoldConfig) dependency.Manifold

Manifold returns a dependency.Manifold that runs a worker responsible for shepherding a Dying model into Dead and ultimate removal.

func NewWorker

func NewWorker(config Config) (worker.Worker, error)

NewFacade creates a worker.Worker from a Config, by calling the local constructor that returns a more specific type.

Types

type Config

type Config struct {
	Facade  Facade
	Environ environs.Environ
}

Config holds the resources and configuration necessary to run an undertaker worker.

func (Config) Validate

func (config Config) Validate() error

Validate returns an error if the config cannot be expected to drive a functional undertaker worker.

type Facade

type Facade interface {
	ModelInfo() (params.UndertakerModelInfoResult, error)
	WatchModelResources() (watcher.NotifyWatcher, error)
	ProcessDyingModel() error
	RemoveModel() error
	SetStatus(status status.Status, message string, data map[string]interface{}) error
}

Facade covers the parts of the api/undertaker.UndertakerClient that we need for the worker. It's more than a little raw, but we'll survive.

func NewFacade

func NewFacade(apiCaller base.APICaller) (Facade, error)

NewFacade creates a Facade from a base.APICaller, by calling the constructor in api/undertaker that returns a more specific type.

type ManifoldConfig

type ManifoldConfig struct {
	APICallerName string
	EnvironName   string

	NewFacade func(base.APICaller) (Facade, error)
	NewWorker func(Config) (worker.Worker, error)
}

ManifoldConfig holds the names of the resources used by, and the additional dependencies of, an undertaker worker.

type Undertaker

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

func NewUndertaker

func NewUndertaker(config Config) (*Undertaker, error)

NewUndertaker returns a worker which processes a dying model.

func (*Undertaker) Kill

func (u *Undertaker) Kill()

Kill is part of the worker.Worker interface.

func (*Undertaker) Wait

func (u *Undertaker) Wait() error

Wait is part of the worker.Worker interface.

Jump to

Keyboard shortcuts

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