runtime

package
v0.0.0-...-48a44ca Latest Latest
Warning

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

Go to latest
Published: Jan 2, 2019 License: Apache-2.0 Imports: 18 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var TypeURLTag tag.Key

TypeURLTag holds the type URL for the context.

Functions

This section is empty.

Types

type Config

type Config struct {
	// Cached mesh config
	Mesh meshconfig.Cache

	// Domain suffix to use
	DomainSuffix string
}

Config used by the runtime

type Distributor

type Distributor interface {
	SetSnapshot(name string, snapshot sn.Snapshot)

	ClearSnapshot(name string)
}

Distributor interface allows processor to distribute snapshots of configuration.

type InMemoryDistributor

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

InMemoryDistributor is an in-memory distributor implementation.

func NewInMemoryDistributor

func NewInMemoryDistributor() *InMemoryDistributor

NewInMemoryDistributor returns a new instance of InMemoryDistributor

func (*InMemoryDistributor) ClearSnapshot

func (d *InMemoryDistributor) ClearSnapshot(name string)

ClearSnapshot is an implementation of Distributor.ClearSnapshot

func (*InMemoryDistributor) GetSnapshot

func (d *InMemoryDistributor) GetSnapshot(name string) sn.Snapshot

GetSnapshot get the snapshot of the specified name

func (*InMemoryDistributor) ListenChanges

func (d *InMemoryDistributor) ListenChanges(cancel chan bool, fn ListenerFn)

ListenChanges registered listener and start listening snapshot changes in the distributor

func (*InMemoryDistributor) SetSnapshot

func (d *InMemoryDistributor) SetSnapshot(name string, snapshot sn.Snapshot)

SetSnapshot is an implementation of Distributor.SetSnapshot

type InMemorySource

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

InMemorySource is an implementation of source.Interface.

func NewInMemorySource

func NewInMemorySource() *InMemorySource

NewInMemorySource returns a new instance of InMemorySource.

func (*InMemorySource) Delete

func (s *InMemorySource) Delete(k resource.Key)

Delete a value in the in-memory store.

func (*InMemorySource) Get

func (s *InMemorySource) Get(key resource.Key) (resource.Entry, error)

Get a value in the in-memory store.

func (*InMemorySource) Set

func (s *InMemorySource) Set(k resource.Key, item proto.Message)

Set the value in the in-memory store.

func (*InMemorySource) Start

func (s *InMemorySource) Start() (chan resource.Event, error)

Start implements source.Interface.Start

func (*InMemorySource) Stop

func (s *InMemorySource) Stop()

Stop implements source.Interface.Stop

type ListenerFn

type ListenerFn func(s sn.Snapshot)

ListenerFn is used by listeners for defining listen action

type Processor

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

Processor is the main control-loop for processing incoming config events and translating them into component configuration

func NewProcessor

func NewProcessor(src Source, distributor Distributor, cfg *Config) *Processor

NewProcessor returns a new instance of a Processor

func (*Processor) Start

func (p *Processor) Start() error

Start the processor. This will cause processor to listen to incoming events from the provider and publish component configuration via the Distributor.

func (*Processor) Stop

func (p *Processor) Stop()

Stop the processor.

type Source

type Source interface {
	// Start the source interface. This returns a channel that the runtime will listen to for configuration
	// change events. The initial state of the underlying config store should be reflected as a series of
	// Added events, followed by a FullSync event.
	Start() (chan resource.Event, error)

	// Stop the source interface. Upon return from this method, the channel should not be accumulating any
	// more events.
	Stop()
}

Source to be implemented by a source configuration provider.

type State

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

State is the in-memory state of Galley.

func (*State) String

func (s *State) String() string

String implements fmt.Stringer

Directories

Path Synopsis
Package resource contains core abstract types for representing configuration resources.
Package resource contains core abstract types for representing configuration resources.

Jump to

Keyboard shortcuts

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