github.com/netdata/go.d.plugin@v0.58.1/agent/jobmgr/di.go (about) 1 // SPDX-License-Identifier: GPL-3.0-or-later 2 3 package jobmgr 4 5 import ( 6 "github.com/netdata/go.d.plugin/agent/confgroup" 7 "github.com/netdata/go.d.plugin/agent/vnodes" 8 ) 9 10 type FileLocker interface { 11 Lock(name string) (bool, error) 12 Unlock(name string) error 13 } 14 15 type Vnodes interface { 16 Lookup(key string) (*vnodes.VirtualNode, bool) 17 } 18 19 type StatusSaver interface { 20 Save(cfg confgroup.Config, state string) 21 Remove(cfg confgroup.Config) 22 } 23 24 type StatusStore interface { 25 Contains(cfg confgroup.Config, states ...string) bool 26 } 27 28 type Dyncfg interface { 29 Register(cfg confgroup.Config) 30 Unregister(cfg confgroup.Config) 31 UpdateStatus(cfg confgroup.Config, status, payload string) 32 }