Documentation ¶
Index ¶
- Variables
- type Discovery
- func (p *Discovery) Accepts(eventType EventType) bool
- func (p *Discovery) Members() map[string]*Znode
- func (p *Discovery) Name() string
- func (p *Discovery) Notify(event Event)
- func (p *Discovery) OnLoad(curator *Curator)
- func (p *Discovery) OnUnload()
- func (p *Discovery) StartDiscovery()
- func (p *Discovery) StopDiscovery()
- type EventSpew
- type Leader
- func (p *Leader) Accepts(eventType EventType) bool
- func (p *Leader) IsLeader() bool
- func (p *Leader) LockPath() string
- func (p *Leader) Name() string
- func (p *Leader) Notify(event Event)
- func (p *Leader) OnLoad(curator *Curator)
- func (p *Leader) OnUnload()
- func (p *Leader) Resign()
- func (p *Leader) RunForElection()
- type Member
- type MembershipMeta
- type Metrics
- type Work
- type WorkCollector
- func (p *WorkCollector) Accepts(eventType EventType) bool
- func (p *WorkCollector) Name() string
- func (p *WorkCollector) Notify(event Event)
- func (p *WorkCollector) OnLoad(curator *Curator)
- func (p *WorkCollector) OnUnload()
- func (p *WorkCollector) StopWatching()
- func (p *WorkCollector) WatchForWork()
- func (p *WorkCollector) Work() (work map[string]*Znode)
- type WorkLeader
- func (p *WorkLeader) Accepts(eventType EventType) bool
- func (p *WorkLeader) AddWork(node *Znode) (err error)
- func (p *WorkLeader) IsLeader() bool
- func (p *WorkLeader) Name() string
- func (p *WorkLeader) Notify(event Event)
- func (p *WorkLeader) OnLoad(curator *Curator)
- func (p *WorkLeader) OnUnload()
- func (p *WorkLeader) RemoveWork(node *Znode) (err error)
- type WorkSupervisor
- func (s *WorkSupervisor) AddWork(node *Znode) (err error)
- func (s *WorkSupervisor) AddWorker(node *Znode) (err error)
- func (s *WorkSupervisor) AssignWork(work *Znode) error
- func (s *WorkSupervisor) GetWork() *Work
- func (s *WorkSupervisor) GetWorkers() *WorkerList
- func (s *WorkSupervisor) Load() (err error)
- func (s *WorkSupervisor) RemoveWork(node *Znode) (err error)
- func (s *WorkSupervisor) RemoveWorker(node *Znode) (err error)
- type WorkSupervisorType
- type Worker
- type WorkerList
- func (l *WorkerList) Add(worker *Worker) (added bool)
- func (l *WorkerList) At(index int) (w *Worker)
- func (l *WorkerList) Find(f func(int, *Worker) bool) (index int, w *Worker)
- func (l *WorkerList) FindById(id string) (index int, w *Worker)
- func (l *WorkerList) IndexOf(worker *Worker) (index *int)
- func (l *WorkerList) Remove(worker *Worker) (removed bool)
- func (l *WorkerList) Size() int
- func (w WorkerList) Spew() string
- func (l *WorkerList) ToSlice() []Worker
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrNoAvailableWorkers = errors.New("no workers available to process work")
View Source
var ErrUnableToRemoveWorker = errors.New("could not remove worker")
View Source
var ErrWorkNotFound = errors.New("work not found")
View Source
var ErrWorkerAlreadyExists = errors.New("worker already exists")
View Source
var ErrWorkerNotFound = errors.New("worker not found")
Functions ¶
This section is empty.
Types ¶
type Discovery ¶
type Discovery struct {
// contains filtered or unexported fields
}
func (*Discovery) StartDiscovery ¶
func (p *Discovery) StartDiscovery()
func (*Discovery) StopDiscovery ¶
func (p *Discovery) StopDiscovery()
type Leader ¶
type Leader struct { Signature []byte // contains filtered or unexported fields }
func (*Leader) RunForElection ¶
func (p *Leader) RunForElection()
type Member ¶
type Member struct { ID string // contains filtered or unexported fields }
func (*Member) MemberPath ¶
func (*Member) Unregister ¶
func (p *Member) Unregister()
type MembershipMeta ¶
type MembershipMeta struct {
// contains filtered or unexported fields
}
type Metrics ¶
type Metrics struct { Registry metrics.Registry // contains filtered or unexported fields }
type WorkCollector ¶
type WorkCollector struct { ID string // contains filtered or unexported fields }
func (*WorkCollector) Accepts ¶
func (p *WorkCollector) Accepts(eventType EventType) bool
func (*WorkCollector) Name ¶
func (p *WorkCollector) Name() string
func (*WorkCollector) Notify ¶
func (p *WorkCollector) Notify(event Event)
func (*WorkCollector) OnLoad ¶
func (p *WorkCollector) OnLoad(curator *Curator)
func (*WorkCollector) OnUnload ¶
func (p *WorkCollector) OnUnload()
func (*WorkCollector) StopWatching ¶
func (p *WorkCollector) StopWatching()
func (*WorkCollector) WatchForWork ¶
func (p *WorkCollector) WatchForWork()
func (*WorkCollector) Work ¶
func (p *WorkCollector) Work() (work map[string]*Znode)
type WorkLeader ¶
type WorkLeader struct {
// contains filtered or unexported fields
}
func (*WorkLeader) Accepts ¶
func (p *WorkLeader) Accepts(eventType EventType) bool
func (*WorkLeader) AddWork ¶
func (p *WorkLeader) AddWork(node *Znode) (err error)
AddWork adds work to the master list, and is independent of leadership status. It is a convenience method that simply writes znodes to the appropriate path in zk.
func (*WorkLeader) IsLeader ¶
func (p *WorkLeader) IsLeader() bool
func (*WorkLeader) Name ¶
func (p *WorkLeader) Name() string
func (*WorkLeader) Notify ¶
func (p *WorkLeader) Notify(event Event)
func (*WorkLeader) OnLoad ¶
func (p *WorkLeader) OnLoad(curator *Curator)
func (*WorkLeader) OnUnload ¶
func (p *WorkLeader) OnUnload()
func (*WorkLeader) RemoveWork ¶
func (p *WorkLeader) RemoveWork(node *Znode) (err error)
RemoveWork removes work from the master list, and is independent of leadership status. It is a convenience method that simply removes znodes from the appropriate path in zk.
type WorkSupervisor ¶
type WorkSupervisor struct { Logger *log.Logger LogComponent string // contains filtered or unexported fields }
func NewWorkSupervisor ¶
func NewWorkSupervisor(client *Client, workPath string) *WorkSupervisor
func (*WorkSupervisor) AddWork ¶
func (s *WorkSupervisor) AddWork(node *Znode) (err error)
func (*WorkSupervisor) AddWorker ¶
func (s *WorkSupervisor) AddWorker(node *Znode) (err error)
func (*WorkSupervisor) AssignWork ¶
func (s *WorkSupervisor) AssignWork(work *Znode) error
func (*WorkSupervisor) GetWork ¶
func (s *WorkSupervisor) GetWork() *Work
func (*WorkSupervisor) GetWorkers ¶
func (s *WorkSupervisor) GetWorkers() *WorkerList
func (*WorkSupervisor) Load ¶
func (s *WorkSupervisor) Load() (err error)
func (*WorkSupervisor) RemoveWork ¶
func (s *WorkSupervisor) RemoveWork(node *Znode) (err error)
func (*WorkSupervisor) RemoveWorker ¶
func (s *WorkSupervisor) RemoveWorker(node *Znode) (err error)
type WorkSupervisorType ¶
type Worker ¶
type Worker struct { Znode Children *ChildCache }
func (*Worker) UnshiftWork ¶
func (w *Worker) UnshiftWork(nodes []Znode)
type WorkerList ¶
type WorkerList struct {
// contains filtered or unexported fields
}
func NewWorkerList ¶
func NewWorkerList() *WorkerList
func (*WorkerList) Add ¶
func (l *WorkerList) Add(worker *Worker) (added bool)
func (*WorkerList) At ¶
func (l *WorkerList) At(index int) (w *Worker)
func (*WorkerList) IndexOf ¶
func (l *WorkerList) IndexOf(worker *Worker) (index *int)
func (*WorkerList) Remove ¶
func (l *WorkerList) Remove(worker *Worker) (removed bool)
func (*WorkerList) Size ¶
func (l *WorkerList) Size() int
func (WorkerList) Spew ¶
func (w WorkerList) Spew() string
func (*WorkerList) ToSlice ¶
func (l *WorkerList) ToSlice() []Worker
Click to show internal directories.
Click to hide internal directories.